- BrainTools - https://www.braintools.ru -
Skills стали одной из самых популярных точек расширения в Claude Code. Они гибкие, их легко создавать и распространять.
Но эта гибкость усложняет понимание. Что работает лучше всего. Какие skills стоит делать? Как написать хороший skill? Когда имеет смысл делиться ими с другими?
Мы в Anthropic активно используем skills в Claude Code — сейчас у нас их сотни в работе. Ниже — уроки, которые мы извлекли из этого опыта [1].
Если вы только начинаете, рекомендую прочитать документацию [2] или посмотреть наш новый курс на Skilljar по Agent Skills [3]. Дальше в тексте предполагается базовое знакомство с темой.
Частое заблуждение: skills — это «просто markdown-файлы». На самом деле самое интересное в них то, что это не просто текстовые файлы. Это папки, которые могут содержать скрипты, ассеты, данные и т.д. Агент может их обнаруживать, исследовать и использовать.
В Claude Code у skills также есть множество опций конфигурации [2], включая регистрацию динамических hooks. Самые интересные skills используют эти опции и структуру папок нестандартно.
Проанализировав все наши skills, мы заметили, что они группируются в несколько повторяющихся категорий. Лучшие skills чётко попадают в одну из них; те, что размываются между несколькими, обычно вызывают путаницу. Это не исчерпывающий список, но он помогает оценить, чего вам может не хватать в организации.

Skills, которые объясняют, как правильно использовать библиотеку, CLI или SDK. Могут относиться как к внутренним библиотекам, так и к публичным, с которыми у Claude Code бывают трудности. Обычно содержат папку с примерами кода и список типичных ошибок.
Примеры: billing-lib (ваша внутренняя библиотека биллинга: крайние случаи, подводные камни), internal-platform-cli (все подкоманды вашего CLI с примерами), frontend-design (улучшение работы Claude с вашей дизайн-системой).
Skills, описывающие, как тестировать и проверять работоспособность кода. Часто используются в связке с внешними инструментами вроде Playwright, tmux и т.д.
Верификационные skills крайне полезны для контроля корректности. Может быть оправдано выделить инженера на неделю, чтобы довести их до совершенства.
Полезные техники: запись видео выходных данных Claude для визуальной проверки, программные assertions на каждом шаге. Для этого в skill обычно включают набор скриптов.
Примеры: signup-flow-driver (прогон signup → подтверждение email → онбординг в headless-браузере с assertions на каждом шаге), checkout-verifier (прогон UI оплаты с тестовыми картами Stripe, проверка состояния инвойса), tmux-cli-driver (интерактивное тестирование CLI, где нужен TTY).
Skills, подключающиеся к вашим стекам данных и мониторинга. Могут содержать библиотеки для получения данных с учётными данными, идентификаторы дашбордов, инструкции по типичным рабочим процессам.
Примеры: funnel-query (какие события нужно соединить, чтобы увидеть signup → активацию → оплату, плюс таблица с каноническим user_id), cohort-compare (сравнение retention/конверсии двух когорт с отметкой статистически значимых отклонений), grafana (UID источников данных, имена кластеров, таблица соответствия проблем и дашбордов).
Skills, автоматизирующие повторяющиеся рабочие процессы. Обычно это достаточно простые инструкции, но они могут зависеть от других skills или MCP. Для таких skills полезно сохранять результаты прошлых запусков в лог-файлах — это помогает модели быть последовательной и учитывать предыдущий контекст.
Примеры: standup-post (агрегирует данные из трекера задач, GitHub-активности и Slack → форматированный стендап, только изменения), create-ticket (применяет схему: допустимые enum-значения, обязательные поля, плюс пост-действия: пинг ревьюера, ссылка в Slack), weekly-recap (объединённые PR + закрытые тикеты + деплои → форматированный итог недели).
Skills для генерации фреймворк-бойлерплейта под конкретную функцию в кодовой базе. Их можно комбинировать с компонуемыми скриптами. Особенно полезны, когда скаффолдинг включает требования на естественном языке, которые нельзя покрыть одним кодом.
Примеры: new-workflow (скаффолдинг нового сервиса/воркфлоу/хендлера с аннотациями), new-migration (шаблон файла миграции и типичные ошибки [4]), create-app (новое внутреннее приложение с предварительно настроенными авторизацией, логированием и конфигурацией деплоя).
Skills, обеспечивающие качество кода в организации и помогающие с ревью. Могут включать детерминированные скрипты или инструменты для максимальной надёжности. Их можно запускать автоматически через hooks или в GitHub Actions.
Примеры: adversarial-review (запускает подагента для критики «свежим взглядом», применяет исправления, итерирует, пока замечания не деградируют до мелочей), code-style (обеспечивает стиль кода, особенно тот, который Claude по умолчанию соблюдает плохо), testing-practices (инструкции по написанию тестов и выбору того, что тестировать).
Skills для получения, отправки и развёртывания кода. Могут ссылаться на другие skills для сбора данных.
Примеры: babysit-pr (мониторит PR → повторяет flaky CI → решает merge-конфликты → включает auto-merge), deploy-service (сборка → smoke-тест → постепенный переход трафика с сравнением error rate → автоматический откат при регрессии), cherry-pick-prod (изолированный worktree → cherry-pick → разрешение конфликтов → PR по шаблону).
Skills, которые принимают симптом (тред в Slack, алерт, сигнатура ошибки), проводят расследование с помощью нескольких инструментов и формируют структурированный отчёт.
Примеры: service-debugging (сопоставляет симптомы с инструментами и паттернами запросов для ваших самых нагруженных сервисов), oncall-runner (получает алерт → проверяет типичных подозреваемых → формирует отчёт), log-correlator (по request ID подтягивает совпадающие логи из всех систем, которые могли обработать запрос).
Skills для рутинных задач обслуживания и операционных процедур. Некоторые из них включают деструктивные действия, которым полезны предохранители. Упрощают следование лучшим практикам при критических операциях.
Примеры: resource-orphans (находит осиротевшие pods/volumes → публикует в Slack → период ожидания → подтверждение пользователя → каскадная очистка), dependency-management (ваш внутренний процесс одобрения зависимостей), cost-investigation (почему вырос счёт за storage/egress — с конкретными бакетами и паттернами запросов).

Определившись с типом skill, возникает следующий логичный вопрос: “А как его написать?”. Вот лучшие практики, к которым мы пришли.
Мы также недавно выпустили Skill Creator [2] для упрощения создания skills в Claude Code.
Claude Code много знает о вашей кодовой базе, а Claude в целом хорошо разбирается в коде, включая многие стандартные подходы. Если ваш skill в первую очередь про знания, сфокусируйтесь на информации, которая выводит Claude за рамки привычного мышления [5].
Хороший пример — skill frontend design [6]. Его создал один из инженеров Anthropic, итеративно работая с пользователями над улучшением дизайн-вкуса Claude, чтобы избежать классических паттернов вроде шрифта Inter и фиолетовых градиентов.

Самый ценный контент в любом skill — раздел с типичными ошибками (Gotchas). Он должен формироваться на основе реальных проблем, с которыми Claude сталкивается при использовании вашего skill. В идеале вы будете обновлять skill со временем, добавляя новые.

Skill — это папка, а не просто markdown-файл. Воспринимайте всю файловую систему как инструмент context engineering и постепенного раскрытия. Укажите Claude, какие файлы есть в вашем skill, и он прочитает их в подходящий момент.
Простейшая форма — ссылки на другие markdown-файлы. Например, детальные сигнатуры функций и примеры использования можно вынести в references/api.md. Другой пример: если конечный результат — markdown-файл, можно включить шаблон в assets/ для копирования.
Папки со справочниками, скриптами и примерами помогают Claude работать эффективнее.
Claude обычно старается следовать инструкциям, и поскольку skills многократно переиспользуются, слишком конкретные указания бывают вредны. Давайте Claude нужную информацию, но оставляйте гибкость для адаптации к ситуации.


Некоторым skills нужен контекст от пользователя на старте. Например, skill для публикации стендапа в Slack должен знать, в какой канал отправлять.
Хороший паттерн — хранить настройки в config.json внутри директории skill. Если конфиг не заполнен, агент спросит пользователя.
Если нужно показать структурированные вопросы с вариантами ответов, можно указать Claude использовать инструмент AskUserQuestion.

При старте сессии Claude Code собирает список всех доступных skills с их описаниями. По этому списку Claude решает: «есть ли skill для этого запроса?» Поле description — это не резюме. Это описание условий, при которых skill должен срабатывать.

Некоторые skills могут иметь форму памяти [7], сохраняя данные внутри себя. Это может быть что угодно — от append-only текстового лога или JSON-файлов до SQLite-базы.
Например, skill standup-post может вести standups.log со всеми опубликованными стендапами, и при следующем запуске Claude прочитает свою историю и определит, что изменилось со вчерашнего дня.
Данные в директории skill могут быть удалены при обновлении, поэтому лучше хранить их в стабильной папке. Сейчас мы предоставляем ${CLAUDE_PLUGIN_DATA} как стабильную директорию для каждого плагина.
Один из самых мощных инструментов для Claude — код. Скрипты и библиотеки позволяют Claude тратить свои шаги на композицию — решать, что делать дальше, а не воссоздавать бойлерплейт.
Например, в data science skill может быть библиотека функций для получения данных из вашего event source.

Для сложного анализа можно дать Claude набор хелперов, и он будет генерировать скрипты на лету, компонуя эти функции для промптов вроде «Что произошло во вторник?»

Skills могут включать hooks, которые активируются только при вызове skill и действуют до конца сессии. Используйте это для опционных hooks, которые не нужны постоянно, но иногда крайне полезны.
Примеры: /careful — блокирует rm -rf, DROP TABLE, force-push, kubectl delete через PreToolUse matcher на Bash (нужен только при работе с продом — держать постоянно включённым было бы невыносимо), /freeze — блокирует любые Edit/Write вне указанной директории (полезно при отладке, когда хочется добавить логи, но не исправлять случайно что-то лишнее).
Одно из главных преимуществ skills — возможность делиться ими с командой.
Два основных способа: закоммитить skills в репозиторий (в ./.claude/skills) или создать плагин и использовать маркетплейс плагинов Claude Code, где пользователи могут загружать и устанавливать плагины (подробнее в документации [2]).
Для небольших команд, работающих с немногими репозиториями, коммит skills в репо работает хорошо. Но каждый закоммиченный skill немного увеличивает контекст модели. При масштабировании внутренний маркетплейс плагинов позволяет распространять skills и давать команде выбор, что устанавливать.
Как решить, какие skills попадают в маркетплейс? Как их предлагать?
У нас нет централизованной команды для таких решений. Мы находим полезные skills органически. Если у вас есть skill, который хотите предложить коллегам, загрузите его в sandbox-папку на GitHub и поделитесь ссылкой в Slack или на форумах.
Когда skill набирает популярность (это решает автор skill), можно создать PR для переноса в маркетплейс.
Предупреждение: создать плохие или дублирующие skills довольно легко, поэтому какой-то механизм курирования перед релизом важен.
Иногда skills зависят друг от друга. Например, skill загрузки файлов и skill генерации CSV, который создаёт CSV и загружает его. Управление зависимостями пока не встроено в маркетплейсы и skills, но можно ссылаться на другие skills по имени — модель вызовет их, если они установлены.
Для оценки использования skills мы применяем PreToolUse hook, который логирует использование skills внутри компании (пример кода [2]). Такой подход позволяет находить популярные skills или те, которые срабатывают реже ожидаемого.
Skills — мощный и гибкий инструмент для агентов, но мы все ещё на раннем этапе и вместе разбираемся, как их лучше использовать.
Воспринимайте этот текст скорее как набор работающих советов, а не как окончательное руководство. Лучший способ разобраться в skills — начать, экспериментировать и смотреть, что подходит вам. Большинство наших skills начинались с нескольких строк и одного «подводного камня», а улучшались потому, что люди дополняли их по мере того, как Claude натыкался на новые граничные случаи.

Друзья! Перевод этой статьи подготовила команда ТГК «AI for Devs» — канала, где мы рассказываем про AI-агентов, плагины для IDE, делимся практическими кейсами и свежими новостями из мира ИИ. Подписывайтесь [8], чтобы быть в курсе и ничего не упустить!
Автор: python_leader
Источник [9]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/27309
URLs in this post:
[1] опыта: http://www.braintools.ru/article/6952
[2] прочитать документацию: https://docs.anthropic.com/
[3] Skilljar по Agent Skills: https://skilljar.com/
[4] ошибки: http://www.braintools.ru/article/4192
[5] мышления: http://www.braintools.ru/thinking
[6] skill frontend design: https://github.com/anthropics/skills/blob/main/skills/frontend-design/SKILL.md
[7] памяти: http://www.braintools.ru/article/4140
[8] Подписывайтесь: https://t.me/+45F5cC3Whs5jYzdi
[9] Источник: https://habr.com/ru/articles/1011524/?utm_campaign=1011524&utm_source=habrahabr&utm_medium=rss
Нажмите здесь для печати.