Обучение · Агенты и вайб-кодинг
Глава 12. Скиллы: механика и жизненный цикл
Скилл это отдельный файл с инструкцией, которую агент подгружает, когда сочтёт нужным. Сущность появилась недавно, за полгода вокруг неё выросла целая культура, и почти сразу полезли проблемы, о которых лучше знать заранее, чем потом разгребать.
Как это устроено на самом деле Механика простая, и понимание её сразу снимает половину вопросов.
В контексте агента постоянно висят только заголовки и описания всех доступных скиллов. Не тела, только описания, обычно одна-две строки каждое. Приходит задача, модель смотрит на этот список и решает, стоит ли подгружать какой-то скилл целиком.
ЧТО ПРОИСХОДИТ СО СКИЛЛОМ
Список описаний Задача Решение модели Загрузка тела Применение
всегда в контексте пришла от тебя подходит или нет только выбранного как обычная инструкция
Из этой механики следуют все остальные свойства.
Скиллы платные, даже когда не используются. Заголовки висят всегда, и сотня скиллов это сотня строк на каждом ходу.
Описание работает, а тело нет. Описание сформулировано скверно, значит тело не загрузится никогда, и качество инструкции внутри уже не имеет никакого значения.
Модель решает сама. Загрузкой ты напрямую не управляешь, влияешь только текстом описания.
Описание решает всё Самая практичная часть главы.
Хорошее описание делает две вещи: перечисляет ситуации, в которых скилл применим, и явно называет ситуации, в которых он не нужен. Второе важнее первого, потому что именно оно спасает от ложных срабатываний.
ОПИСАНИЕ, КОТОРОЕ НЕ РАБОТАЕТ
Помогает проектировать агентов.
Слишком общо: модель не понимает, когда именно это про неё, и либо не загрузит никогда, либо будет грузить постоянно.
ОПИСАНИЕ, КОТОРОЕ РАБОТАЕТ
Использовать при проектировании, реализации, ревью, отладке или оценке агента: инженерия контекста, интерфейсы инструментов, надёжность обвязки, память, оценка, координация нескольких агентов. Не использовать для обычного неагентного кода приложения.
Перечислены ситуации и явно отсечены неподходящие. Загружается тогда, когда нужно, и молчит в остальное время.
Практики, у которых скиллы срабатывают стабильно, описывают это так: не люблю вызывать скиллы руками, подбешивает, когда скилл сам не вызывается. Стабильный автовызов это признак хорошего описания, а не везения.
Скилл со скриптом или без Спор, в котором правы обе стороны, и понимать стоит обе.
Позиция первая: скилл без скрипта бесполезен. Аргумент конкретный. Промпты живые, от проекта к проекту улучшаются. Лежали бы они в скиллах, пришлось бы каждый раз обновлять и синхронизировать между всеми машинами, а это морока на ровном месте. Проще держать текст там, где его удобно править, а в скилл класть то, что меняться не собирается либо меняется централизованно.
Позиция вторая: скилл это методичка. А со скриптом она или без, дело десятое. Интерактивность хороша, но не везде реальна и не везде нужна. Смысл скилла в том, чтобы не повторять одно и то же десять раз с мелкими вариациями, а обратиться по названию.
КАК РЕШИТЬ У СЕБЯ Клади в скилл то, что стабильно. Процедура, которая не меняется от проекта к проекту, знание о внутренней системе, порядок действий с чужим интерфейсом. Не клади то, что дорабатываешь каждую неделю. Оно будет разъезжаться между машинами, и ты замучаешься синхронизировать. Отдельный случай, где скилл незаменим. Знания, которых нет ни в репозитории, ни в обучающих данных: внутренние соглашения компании, вендорский функционал, не описанный в коде. Иначе агент про них не узнает никогда.
Пять типовых форм Скиллы, которые встречаются в живых проектах, укладываются в несколько форм.
Форма Что внутри Когда нужна
Процедура Пошаговый порядок действий Повторяющаяся операция со стабильным ходом
Справочник. Что внутри: знание о системе или интерфейсе. Когда нужен: для того, чего нет в коде и в обучающих данных.
Обёртка над утилитой. Что внутри: как вызывать инструмент и что делать с ответом. Когда нужна: внешние интерфейсы, где сборка запросов на лету даёт выдумки.
Роль. Что внутри: взгляд, с которым надо посмотреть на задачу. Когда нужна: ревью, критика, оценка с определённой позиции.
Мета-скилл. Что внутри: как делать другие скиллы или проверять их. Когда нужен: когда скиллов развелось без счёта.
Последняя форма появляется поздно и означает ровно одно: пора наводить порядок.
Гигиена: три правила Держи только инфраструктурные. Заголовки висят в контексте постоянно, поэтому каждый лишний скилл это налог на каждый ход. Практики, наводившие порядок, оставляли те, что описывают работу с системами, и выкидывали те, что описывают пожелания к стилю.
Считай срок годности неделями. Формулировка резкая, но проверенная: скилл, собранный генератором скиллов, сломается через пару недель. Меняются инструменты, меняется поведение модели, меняется проект.
Ревьюй как код. Даже аккуратный скилл после правок агентом требует проверки, и не для галочки. Люди, выкладывавшие свои скиллы, регулярно получали замечания вида хороший скилл, чистый, но агенты в нём намусорили.
Версии и устаревание Проблема, у которой в экосистеме общего решения нет: как человек узнаёт, что вышла новая версия скилла. Честный ответ авторов популярных скиллов: никак, только через ленту изменений.
Два обхода, придуманные практиками.
Предполётная проверка внутри скилла. Раз в сессию агент сверяет файл скилла с источником и, если версии разошлись, одной строкой сообщает, что вышло обновление и как обновиться. Не разошлись, молчит в тряпочку.
Проверка на уровне хранилища. В корпоративном варианте лучше не зашивать проверку в каждый скилл, а повесить её на инфраструктуру: человек ставит, заливает или ищет очередной скилл, и запускается проход по всем установленным.
ПРИЗНАКИ, ЧТО СКИЛЛ ПОРА УДАЛИТЬ 1. Ты не помнишь, что он делает, и в описании этого тоже не поймёшь. 2. За месяц он ни разу не загрузился сам, а ты про него ни разу не вспомнил. 3. Он дублирует то, что модель делает и без него. Проверяется отключением. 4. Он лезет в задачи, к которым не относится. Описание слишком широкое. 5. Внутри он описывает интерфейс, который с тех пор поменялся.
Экономика скилла Отрезвляющий пример, который стоит помнить перед тем, как автоматизировать очередную мелочь.
Человек хотел подписать один документ. Через готовый онлайн-редактор это заняло бы полминуты. Он попросил агента сколотить скилл для этой операции, потратил на сборку и настройку около четверти часа, а по счётчику вышло больше пяти долларов за один заход. Дальнейшие подписания стали дешёвыми, но окупаемость надо было прикидывать до, а не после.
ГЛАВНОЕ ПРО СКИЛЛЫ Скилл окупается только на повторяющемся. Считай окупаемость до создания: сколько раз в месяц это происходит и сколько стоит один ручной проход. И помни, что стоимость скилла сборкой не заканчивается. Он занимает место в контексте, протухает, требует ревью и однажды начинает мешать. Скилл это не разовое вложение, а подписка.
Когда любимый скилл начинает мешать Наблюдение, которое звучит комично, но описывает реальную проблему: иногда любимый скилл начинает лезть туда, где он даром не сдался.
Причина всегда одна: слишком широкое описание. Лечится дописыванием строки о том, где скилл не применяется.
Отдельно стоит знать, что скилл, который пытается бороться со склонностью модели, добавляя новую яркую инструкцию, обычно усиливает перекос вместо того, чтобы его убрать. Тушишь пожар бензином. Работают не уговоры, а детерминированная проверка с ответом да или нет.
Что запомнить В контексте висят только описания. Тело загружается по решению модели.
Описание важнее содержимого: перечисли ситуации и явно отсеки неподходящие.
В скилл клади стабильное. Живой текст держи там, где его удобно править.
Настоящая ниша скилла это знания, которых нет ни в коде, ни в обучающих данных.
Срок годности измеряется неделями. Ревьюй как код и удаляй без соплей.
И считай окупаемость до сборки: скилл это подписка, а не разовая покупка.
← Правила, которые работают · оглавление · Хуки и детерминированные гарантии →
Спросить книгу может любой, кто вошёл в Neuraldeep Hub: агент ищет ответ по тексту и приводит цитату со ссылкой на главу.