Зачем нужны скиллы (особенно, когда у тебя каждую неделю новая LLM)
На связи Степан😎
Сегодня поговорим про скиллы в этих ваших харнессах. Желание про них написать появилось после того, как я сам (наконец) осознал, насколько это удобная и переносимая между разными инструментами штука (хоть в Claude, хоть в Codex, хоть в Cursor).
⸻
За первые две недели сентября я переезжал с модели на модель раз 5, не меньше.
Причины тут абсолютно житейские и знакомые каждому, кто плотно сидит на AI-инструментах. Во-первых, рабочие лимиты на подписках тают очень быстро, и чем мощнее модель, тем быстрее. Во-вторых, банальное гиковское любопытство: выкатили что-то свежее - руки чешутся сразу пойти и проверить в деле. В-третьих, регулярная смена подписок: одну отменил, другую возобновил, где-то упал промо-доступ, где-то скидки по API.
Сидишь перед новым чистым окном и готов мучать новую модель. А работа предстоит старая: контекст, ограничения, формат артефакта, критерии приемки. Меняется только исполнитель (Luna 5.6, Composer 2.5, Gemini 3.8, Opus 5, даже Grok 4.6). Представляете, какой зоопарк?
И каждому новому цифровому коллеге приходится заново, с выражением и подробностями пересказывать базовые вещи, на которых ты уже сто раз спотыкался.
И вот тут на сцену выходят скиллы (файлы-инструкции, помогающие модели выполнять задачу). Один раз описал (50 раз обновил, но об этом умолчу), потом адаптировал под новую тулу 1 раз - и все, можно переиспользовать бесконечно. Раньше были системные промты и инструкции в проектах чатика гпт, а сейчас вот скиллы вместо них. В комментах ниже справка от Кеши, что такое скилл. Над постом картинка-памятка для визуалов.
⸻
Основное правило: если мой запрос повторяется раз за разом - это стопроцентный кандидат в скилл.
Для примера разберу один из моих рабочих скиллов в Cursor для подготовки BA-артефактов: эпиков, сторис, задач, спайков, багрепортов.
Что внутри:
-Секция Description со словами-триггерами. Это не человеческое описание для чтения, а жесткое условие срабатывания для агента. Туда вшиты реальные фразы, которыми я обычно ставлю задачу: «напиши стори», «оформи требования», «опиши баг». Плюс обязательная ветка "предложи сам" на случай, когда я на бегу надиктовал кучу мыслей, а конкретный тип артефакта назвать просто забыл.
-Секция Context. Вещи, о которых модель сама по себе знать не может. Например: задачу я ставлю на русском (голосом или текстом), но готовый артефакт агент обязан вернуть строго на английском, потому что он сразу поедет в Jira.
-Секция Workflow. Четкий порядок действий. Сначала агент обязан собрать черновик, где каждое утверждение помечено ссылкой на источник, а в самом низу прикреплен список точных цитат. И только после этого формируется чистовик - без пометок и цитат, готовый к вставке в Confluence.
-Секция Templates. Тут требования к формату артефактов. Можно описать в скилле, можно ссылкой на папку с шаблонами. Но если скилл сильно раздует - лучше хранить по ссылке.
-И в самом низу - секция Gotchas. Все пункты в ней - это мои собственные комментарии на ревью, которые я когда-то написал руками ровно по одному разу.
Пара цитат из моего файла:
«Don't use Gherkin unless the user asks.»
«Never emit labels as *Label:* — literal asterisks paste as plain characters and do not convert.»
«"I don't know" is not an answer.»
Когда эти грабли явно прописаны в Gotchas, модель чаще отлавливает косяки еще до того, как принесет ответ мне на экран.
⸻
При всем этом: никакой магии внутри скилла нет.
Внутри файла SKILL.md лежит текст. От того, что файл получил модное расширение и лежит в специальной системной папке, модель умнее не становится. Разница: процедура теперь отвязана от конкретного контекстного окна и живет отдельно. Забрали Claude или кончились токены - закинул скиллы в Codex или Cursor, 1 раз попросил адаптировать под себя, и они работают по тем же рельсам.
По этой же причине чужие скиллы редко заводятся без напильника. Чужой скилл описывает чужой процесс и чужие мозоли. Примерять и переписывать под себя все равно придется.
Post #308
47

- ❤ 4