Навыки, MCP-инструменты и правила: три способа дать агенту возможности
Агенты получают способности по-разному. Правило ограничивает, что они делают, навык говорит, как делать работу, а MCP-инструмент позволяет вызывать функцию. У каждого свой риск, поэтому объявляйте все три в реестре и проверяйте тестом, что ничего не существует вне списка.
🎯 Для Разработчик или руководитель, который расширяет то, что умеют агенты
- Чем различаются правила, навыки и инструменты и что каждый может сломать
- Как объявлять каждый в реестре с источником полномочий и классом риска
- Как выглядят наши собственные цифры
🧰 Три вида возможностей
Правило — инструкция, которая действует всегда: «никогда не добавлять всё», «числам нужен артефакт». Оно ограничивает поведение и само ничего не делает. Оно должно доходить до каждого исполнителя, включая дешёвых и скрипты.
Навык — упакованный способ делать работу: папка с инструкциями, которую агент загружает, когда задача подходит. Навык может велеть агенту запускать команды или менять файлы. Он может нести полномочия — быть нашим обязательным методом — или только советовать.
Инструмент — функция, которую агент вызывает через протокол вроде MCP. У неё есть имя, параметры и возвращаемое значение. Инструмент что-то делает: читает базу, ищет по документам, пишет запись.
Различия важны, потому что каждое ломается по-своему. Плохое правило игнорируют, плохой навык вводит в заблуждение, а плохой инструмент действует.
📒 Один реестр для всех трёх
Свои навыки мы объявляем в одном файле реестра. У каждой записи есть область, источник полномочий (наш канон или чужой совет), класс риска, низший уровень исполнителя, который может её использовать, нужен ли человек и действует ли она или только формулирует правило. Тест падает, если папка навыка существует без записи или запись без папки.
На 3 ноября 2026, 21:53 UTC в реестре было 32 записей: 14 канон и 18 совет; 24 действуют и 8 только формулируют правила.
У нашего MCP-сервера своя отдельная поверхность и свой контроль. В тот же день в его коде было определено 21 функций-инструментов. Тот, что пишет в базу знаний, работает только при включённой осознанной настройке, а каждый вызов записывается в базу аудита со статусом и длительностью.
🔗 Как они стыкуются
Правило может велеть агенту использовать навык. Навык может велеть вызвать инструмент. Инструмент может вернуть текст, который пытается задать агенту новое правило. Этот последний путь считайте враждебным, как и любой внешний текст.
Реестр — место, где цепочка становится видимой. Если навык вызывает инструмент, пишущий во внешнюю систему, класс риска навыка должен это говорить и требовать человека.
🛠️ Практика: проведите инвентаризацию возможностей
- Перечислите правила: файлы, загружаемые в каждую сессию.
- Перечислите навыки: папки инструкций. Дайте каждому область, источник полномочий и класс риска.
- Перечислите инструменты: каждую функцию, которую агенты могут вызвать. Отметьте, какие читают, какие пишут и какие выходят наружу.
- Соберите три списка в одном реестре с колонкой вида.
- Напишите тест, сравнивающий реестр с тем, что есть на диске или на сервере, в обе стороны.
- Для каждой записи, действующей на внешней системе, поставьте «нужен человек» и минимальный уровень исполнителя.
- Добавьте запись аудита к каждому вызову инструмента: имя, аргументы, статус результата, длительность.
✅ Проверьте себя
- Добавьте новую папку навыка без записи. Тест падает и называет её.
- Добавьте инструмент на сервер, не внеся его в список. Ревьюер или тест замечает.
- Выберите любую запись и скажите, каков худший случай, кто одобряет и какой исполнитель может её запускать.
- Найдите запись аудита по вызову инструмента, сделанному вчера.
🚧 Когда это не работает
- Устаревшие записи. Реестр, который никто не обновляет, описывает систему, которой уже нет. Привяжите тест к сборке.
- Подсчёт инструментов по коду. Динамически определённый инструмент текстовым подсчётом не найти. Берите собственный список сервера.
- Правила, которые никто не читает. Правило в файле, который агент не загружает, не действует. Проверяйте, что оно в стартовом контексте.
- Внешние навыки. Сторонние навыки могут просить мощных действий. Помечайте их как советы и никогда не обязательными.
- Слишком грубые классы риска. Четыре класса — начало. Добавляйте детали там, где от них зависят решения.
📊 Доказательства
| Что измерено | Записи реестра по источнику полномочий и по «действует или правило», а также функции-инструменты в коде нашего MCP-сервера |
| Когда | 3 ноября 2026, 21:53 UTC |
| Артефакт | Наш реестр навыков и его тест, а также модуль MCP-сервера в закрытом репозитории |
| Ограничение | Число функций-инструментов — текстовый подсчёт декорированных функций. Оно оказалось выше числа в наших старых заметках, что показывает, как быстро такие цифры устаревают |
➡️ Дальше
Запишите, кому что можно, в Политике и реестре использования ИИ, и посмотрите, как работает MCP, в статье Что такое MCP?.
Источники
- Политика и реестр использования ИИ: реестр.
- Что такое MCP? Серверы, клиенты и безопасные подключения: основы MCP.
- AGENTS.md и файлы правил: правила.
- Чек-лист безопасности MCP-сервера: проверки.
🔗 Связи статьи
Открыть полный граф знаний ↗Связи опубликованных статей. Выберите узел, чтобы открыть статью у заголовка.
Связи статей · клавиатура / текст
Та же тема
- Векторная база — это карта, а не источник: чему нас научил поиск
- Когда неизвестно, сколько стоил вызов модели: заморозка, затем сверка
- Как разбить большую задачу для дешёвой модели: урок 24 000 байт
- Восемь ошибок наших агентов в shell и git и правило на каждую
- Несколько агентов, один репозиторий: правила владения из реальных инцидентов
- Ключи провайдера — вне агента: один шлюз и один токен на задачу
Следующие шаги
Связанные материалы
Векторная база — это карта, а не источник: чему нас научил поиск
Векторная база находит фрагменты, близкие по смыслу к вашему вопросу. Она не знает, какие из них верны или актуальны. Считайте каждое попадание указателем: откройте названный файл, сверьте хэш, а числа берите из артефакта, а не из найденного абзаца.
ИИ-агенты и MCP простыми словамиКогда неизвестно, сколько стоил вызов модели: заморозка, затем сверка
Иногда вызов модели обрывается по таймауту, и вы не знаете, списал ли провайдер деньги. Никогда не записывайте это как ноль. Пометьте как неопределённое, остановите новые платные вызовы и пусть названный человек сверит это с выпиской провайдера. Отказы до генерации — исключение.
ИИ-агенты и MCP простыми словамиКак разбить большую задачу для дешёвой модели: урок 24 000 байт
Дешёвая модель хорошо справляется с одной небольшой чёткой задачей и плохо — с большой кучей. Мы ограничиваем задачу 24 000 байт и отклоняем большие до вызова любой модели. Режьте по единицам — один файл или одна страна на задачу — и проверяйте размер до запуска.
ИИ-агенты и MCP простыми словамиВосемь ошибок наших агентов в shell и git и правило на каждую
Агенты пишут команды shell быстро и уверенно, и часть сбоев повторяется. Вот восемь реальных ошибок октября 2026: что каждая сломала и какое одно правило мы написали после неё. Перенесите правила в инструкции своих агентов.
💬 Комментарии