Правильный подход к использованию Skill: 5 размышлений после публикации методологии Anthropic

marsbitОпубликовано 2026-06-08Обновлено 2026-06-08

Введение

Автор делится размышлениями о методологии создания эффективных «навыков» (Skills) для языковых моделей, таких как Claude Code, основываясь на внутренней документации компании Anthropic. Ключевые выводы: 1. **Избегайте лишнего:** Навык должен содержать не общеизвестные факты, а специфические знания и «подводные камни» (Gotchas) из опыта команды — например, особенности работы с конкретными API или базами данных. 2. **Инженерия контекста:** Навык — это не просто файл, а структурированная папка (с инструкциями, справочниками, скриптами, примерами и активами). Такой подход позволяет дозированно загружать в контекст модели только необходимую информацию, экономя ресурсы и повышая качество выполнения. 3. **Используйте скрипты:** Повторяющиеся действия (запросы данных, преобразования) следует выносить в скрипты. Это освобождает модель от рутины, повышает точность и экономит токены, оставляя её способности для анализа и принятия решений на основе инструкций (опыта). 4. **Описание — это правило маршрутизации:** Описание навыка должно формулировать, *в какой ситуации* его следует активировать (например, «когда CI-пайплайн не проходит»), а не просто перечислять его функции. Это помогает модели точнее выбирать нужный инструмент. 5. **Управление и распространение:** При росте числа навыков эффективна модель «рынка» (Marketplace). Новые навыки сначала тестируются и распространяются внутри малых групп. Те, что доказали свою полезность и популярность, попадают в официальный каталог. ...

Автор: AI 产品阿颖

Прочитал блог команды Anthropic "Lessons from building Claude Code: How we use skills". Это, пожалуй, самое глубокое практическое резюме по теме Skill, которое я видел на данный момент.

Skill — вещь не сложная, но чтобы сделать их действительно хорошо, думаю, это не так уж и просто.

Помню, когда Skill только набирали популярность, все очень любили создавать различные стилистические Skill, Skill для письма. Казалось, достаточно вставить свой стиль письма, и модель стабильно будет выводить текст в этом стиле.

Но позже я сам попробовал и обнаружил, что во многих случаях это просто не работает.

Потому что один стилистический Skill может содержать несколько тысяч или даже десятки тысяч символов. При загрузке Skill контекст занимает большую часть. Когда контекст перегружен, способность модели к анализу, наоборот, снижается.

В итоге часто возникает ситуация: стиль усвоен, но содержание становится поверхностным, аналитические способности также ослабевают.

Еще одна распространенная ситуация.

Многие при написании Skill любят вставлять различные инструкции по выполнению. Первый шаг — сделать то, второй шаг — это, третий шаг — то. В результате при запуске обнаруживается, что выполнение модели нестабильно.

Позже я постепенно понял, что многие такие повторяющиеся задачи лучше подходят для оформления в виде Script (скрипта), а не написания длинных Instructions (инструкций).

После прочтения этой статьи от Anthropic, мое главное впечатление — многие на самом деле используют Skill, но не обязательно их действительно понимают.

По своей сути Skill — это Context Engineering (инженерия контекста). Когда следует помещать знания в Skill, когда следует разбивать на References (ссылки/справочники), когда следует писать Script, когда использовать Gotchas для ограничения модели — в этом есть много опыта.

Поняв принцип работы Skill и оглянувшись на те из них, что работают хорошо, обнаруживаешь, что они решают вовсе не проблему промптов (подсказок), а проблемы контекста, накопления опыта и повторного использования возможностей.

Если вы хотите глубоко изучить Skill, особенно рекомендую две статьи:

https://claude.com/blog/lessons-from-building-claude-code-how-we-use-skills

https://research.perplexity.ai/articles/designing-refining-and-maintaining-agent-skills-at-perplexity

#01 Не пишите лишнего

Skill по сути служат для накопления «неявных знаний» организации. Поэтому в Skill не нужно повторять общеизвестные факты. Ценность представляют именно те сведения, которых модель изначально не знает.

В Anthropic часто подчеркивают, что в Skill действительно нужно записывать Gotchas, то есть типичные подводные камни.

Например:

1. Эту таблицу нельзя сортировать по created_at

2. Возврат 200 от staging не означает успех

3. request_id и trace_id — это одно и то же

Потому что такая информация часто существует только в опыте сотрудников. Поэтому важно помнить, в чем суть Skill.

Skill = запись опыта мастера.

Через Skill можно систематизировать опыт, разбросанный в головах разных людей.

#02 Skill — это на самом деле Context Engineering

Это, пожалуй, одна из самых глубоких идей Anthropic.

Skill — это не markdown-файл, а папка. Для тех, кто пользовался Skill, это звучит как банальность.

Но, размышляя последние пару дней, я постепенно осознал: именно формой папки они хотят выразить концепцию Context Engineering.

Давайте снова посмотрим на типичную структуру Skill:

skill/ ├── SKILL.md ├── references/ размещаем подробные описания, API-справочники, граничные условия ├── scripts/ размещаем исполняемые скрипты ├── examples/ размещаем примеры ├── assets/ размещаем шаблоны, изображения, фиксированные материалы

При вызове определенного Skill модель сначала читает SKILL.md. Если мы запихнем всю информацию в этот файл, очень скоро произойдет перегрузка контекста.

Предположим, это Skill для устранения неполадок платежей, содержащий объяснения кодов ошибок Stripe, примеры прошлых инцидентов, скрипты для проверки и шаблоны итоговых отчетов.

Если все это свалить в SKILL.md, каждый раз при вызове Skill Клоду придется перечитывать это заново.

Даже если пользователь хочет просто уточнить значение кода ошибки или проверить, почему не обновился статус платежа. Множество совершенно ненужной информации также будет загружено в контекст.

А подход Anthropic совершенно иной.

SKILL.md больше похож на навигационную страницу. Его задача — сообщить модели, что при возникновении ошибки Stripe нужно искать соответствующее объяснение в references.

Когда нужны примеры из прошлого — смотреть аналогичные случаи в examples. Когда нужно выполнить действия по проверке — запускать скрипты из scripts. При создании отчета об устранении неполадок — использовать шаблоны из assets.

Весь процесс — это постепенное раскрытие информации.

Настоятельно рекомендую сохранить следующую картинку.

#03 По возможности используйте скрипты

Не заставляйте модель тратить ограниченный контекст и вычислительные ресурсы на рутинную работу. Поручите эти задачи скриптам.

Пример. Многие при написании Skill пишут так:

1. Запросить данные о регистрациях; 2. Запросить данные об оплатах; 3. Рассчитать конверсию; 4. Проанализировать причины аномалий.

Такой подход, конечно, возможен. Модель тоже справится. Но каждый раз при выполнении ей придется заново проходить весь аналитический процесс.

Запрос данных, их организация, обработка различных граничных случаев — все это повторяющаяся работа.

Раз эти возможности уже были проверены множество раз. Зачем заставлять модель изобретать их заново? Лучше предоставить конкретные скрипты.

Кроме того, использование скриптов делает выполнение Skill более точным и экономит токены.

С этой точки зрения Scripts в Skill фактически накапливают организационные возможности. За каждым скриптом часто стоит лучшая практика, выстраданная командой после множества ошибок.

После того, как эти возможности закреплены, Клод каждый раз может работать, опираясь на этот опыт, а не начинать с нуля снова и снова.

Поэтому я все больше чувствую, что в Skill Instructions и Scripts решают задачи на разных уровнях.

Instructions предоставляют опыт и суждения, Scripts предоставляют возможности и выполнение.

Например, в Skill для устранения неполадок платежей может быть такая запись:

Если Stripe возвращает 200, не думайте сразу, что платеж успешен, нужно дополнительно проверить таблицу payment_events.

Это относится к Instructions. Потому что это опыт. А check_payment_events() относится к Script, потому что это исполнительная способность.

Если есть только Script, модель знает, как проверить, но не обязательно знает, почему нужно проверять.

Если есть только Instructions, модель знает, что нужно проверить. Но каждый раз ей придется заново реализовывать проверку. Оба компонента необходимы.

#04 Description больше похож на правило маршрутизации

Многие люди изначально неправильно пишут Description (описание) Skill.

Потому что все привыкли писать его как описание функционала. Например: Skill управления PR помогает пользователю отслеживать статус PR, обрабатывать проблемы CI, автоматически выполнять Merge.

Но проблема в том, что модель ищет Skill не по функционалу. При запуске Claude Code сначала сканирует названия и описания всех Skill.

Затем, исходя из текущего вопроса пользователя, определяет, какой Skill следует загрузить.

Поэтому самая важная информация в Description — не то, что умеет этот Skill, а в какой ситуации его следует загружать.

Description фактически выполняет работу маршрутизации для всего Skill.

В реальном мире мало кто говорит: «Помоги мне вызвать инструмент управления PR». Скорее скажут: «Помоги отследить этот PR», «CI снова упал» и тому подобное.

Поэтому хорошее Description должно по возможности описывать намерение пользователя, а не перечислять функции.

Я даже думаю, что можно использовать очень простой метод проверки.

После написания Description удалите весь Skill, оставив только эту строку Description. Затем спросите себя: сможет ли модель, увидев вопрос пользователя, понять, когда нужно загрузить этот Skill.

Если нет, то, скорее всего, его еще нужно доработать.

#05 Управление и распространение Skill

Еще один момент касается управления Skill.

Когда Skill использует один человек, все просто. Написал несколько Skill, сам поддерживаешь, сам обновляешь. Но я верю, что большинство команд впоследствии столкнутся с одной и той же проблемой.

Когда Skill из нескольких превращаются в десятки или даже сотни, как ими управлять? Как обновлять? Как распространять среди членов команды?

Опыт Anthropic в этом отношении, на мой взгляд, весьма достоин внимания.

Когда команда небольшая, Skill напрямую следуют за репозиторием кода. Достаточно поместить их в каталог .claude/skills проекта. Все используют один и тот же набор Skill и один и тот же рабочий метод.

Но по мере роста количества Skill возникает новая проблема.

При запуске Claude Code сканирует названия и описания всех Skill, а затем определяет, какой Skill следует вызвать для текущей задачи. Чем больше Skill, тем выше стоимость маршрутизации.

Именно поэтому Anthropic позже начали создавать Marketplace. Но что еще интереснее, так это их подход к управлению Marketplace.

Многие компании, столкнувшись с такой проблемой, первой реакцией часто является создание процесса утверждения. Кто написал Skill — сначала подает заявку; после проверки и одобрения Skill попадает в официальную библиотеку. Мы внутри компании тоже так делали, но это очень громоздко. Управление ради управления.

Я обнаружил, что подход Anthropic очень гибкий.

Пусть новый Skill сначала распространяется в небольшом кругу, пусть коллеги сами устанавливают, сами пробуют.

Если пользователей становится все больше, значит, этот Skill действительно решает какую-то реальную проблему. На этом этапе автор может отправить его в официальный Marketplace.

Таким образом, они не обсуждают сначала, имеет ли Skill ценность, а сначала позволяют ему пройти проверку реальными сценариями использования. Чем больше людей его использует, тем естественнее он войдет в официальную систему. Таким образом, оставшиеся Skill — это, как правило, именно те Skill, которые действительно нужны команде.

Связанные с этим вопросы

QЧто, по мнению автора статьи, является самой распространённой ошибкой при создании Skills, связанной с описанием (Description)?

AСамая распространённая ошибка в том, что Description пишут как описание функциональности (что Skill делает), а не как правило маршрутизации. Description должен отвечать на вопрос «в какой ситуации следует загружать этот Skill?», описывая намерения пользователя (например, «помоги проверить этот PR», «CI снова упал»), а не перечислять возможности (например, «управление PR, решение проблем CI»).

QКакая ключевая идея подхода Anthropic к структуре Skill, позволяющая избежать «взрыва контекста»?

AКлючевая идея — рассматривать Skill не как один Markdown-файл, а как папку (контекстный инжиниринг). Основной файл SKILL.md служит навигационной страницей, которая указывает модели, где искать конкретную информацию (в подпапках references, examples, scripts, assets). Это позволяет постепенно раскрывать контекст по мере необходимости, а не загружать всю информацию разом, экономя токены и вычислительные ресурсы модели.

QСогласно статье, какие два типа знаний/компонентов должны сочетаться в эффективном Skill, и какова роль каждого?

AВ эффективном Skill должны сочетаться Instructions (инструкции/знания) и Scripts (скрипты). Instructions содержат опыт и критически важные знания, «подводные камни» (Gotchas), объясняя модели, «что делать и почему» (например, «если Stripe возвращает 200, это не всегда означает успех»). Scripts предоставляют готовые, проверенные возможности для выполнения повторяющихся задач, решая вопрос «как это сделать», экономя токены и обеспечивая точность. Оба компонента необходимы для сочетания экспертизы и эффективного исполнения.

QКак Anthropic предлагает решать проблему управления и распространения Skills в команде по мере их роста?

AAnthropic предлагает лёгкий, эволюционный подход. На начальном этапе Skills хранятся в общем каталоге проекта (.claude/skills). Когда количество Skills растёт, новые Skills сначала распространяются и тестируются неформально в малых группах. Только те Skills, которые доказали свою полезность и получили органическое распространение среди коллег, затем попадают в официальный Marketplace. Таким образом, система отбора основана на реальном использовании и потребностях команды, а не на тяжёлых бюрократических процессах утверждения.

QПочему, согласно статье, попытки создать Skill для определённого стиля письма (например, авторского) часто терпят неудачу?

AТакие попытки часто терпят неудачу, потому что для описания стиля требуется загружать в контекст огромные объёмы текста (тысячи или десятки тысяч знаков). Это приводит к «перегрузке контекста»: модель тратит значительную часть своих вычислительных ресурсов и ограниченного окна контекста на обработку этих данных. В результате, хотя модель может перенять стиль, её аналитические способности и глубина содержания часто снижаются («содержание становится поверхностным, аналитические способности слабеют»).

Похожее

Трейдеров с Уолл-стрит сместили активность на крипторынке на рабочие дни

Десятилетиями график Уолл-стрит был фиксирован, но круглосуточный крипторынок заставляет институциональных игроков адаптироваться. Хотя ожидалось, что их приход снизит волатильность, на практике он привёл к структурному сдвигу. Доля торгов в выходные упала с 25% на заре индустрии до 16% сегодня, так как формирование цен сместилось на часы работы американского рынка. Без «страховочной сетки» крупных игроков в субботу и воскресенье рынок становится более уязвимым. Согласно анализу, в выходные торговые издержки вырастают в среднем на 11%, ликвидность для крупных сделок ухудшается, и даже небольшие объёмы могут вызвать резкие ценовые движения. Главным фактором изменений стал успех американских спотовых биткоин-ETF. Они обеспечивают стабильный спрос в будни, но их отсутствие на выходных создаёт вакуум ликвидности, делая торговлю в эти дни более рискованной из-за повышенной вероятности скачков и проскальзываний. Понимание этих механизмов ликвидности теперь критически важно для успеха.

cryptonews.ru13 мин. назад

Трейдеров с Уолл-стрит сместили активность на крипторынке на рабочие дни

cryptonews.ru13 мин. назад

Каждое голосование по закону CLARITY будет оцениваться: 3 миллиона сторонников криптовалют хотят, чтобы сенаторы проголосовали «за»

Крипто-лоббистская организация Stand With Crypto объявила, что будет фиксировать голоса сенаторов США по законопроекту CLARITY Act в своих публичных рейтингах. Эти рейтинги, представляющие интересы 3 миллионов американских сторонников криптовалют, станут инструментом для избирателей на предстоящих в ноябре выборах. Организация призвала законодателей поддержать законопроект, отмечая, что миллионы владельцев криптовалют ждут от регуляторов четких правил. Опросы организации показывают, что позиция кандидатов по криптовопросам существенно влияет на выбор почти 70% крипто-избирателей, многие из которых являются колеблющимися. Законопроект, одобренный комитетом Сената в мае, устанавливает рамки федерального регулирования цифровых активов. Однако его прохождение сталкивается с трудностями: аналитики Galaxy Research снизили вероятность принятия до 30% из-за разногласий по этическим нормам и защите потребителей. Для продвижения законопроекта требуется 60 голосов в Сенате. Предстоящее голосование определит не только судьбу закона, но и позицию каждого сенатора в глазах криптосообщества перед выборами.

cryptonews.ru23 мин. назад

Каждое голосование по закону CLARITY будет оцениваться: 3 миллиона сторонников криптовалют хотят, чтобы сенаторы проголосовали «за»

cryptonews.ru23 мин. назад

Kraken приобретает бизнес кошельков Magic Labs

Payward, материнская компания криптобиржи Kraken, договорилась о приобретении бизнеса кошельков-as-a-service у Magic Labs. Это расширит предложение Payward в сфере корпоративной инфраструктуры на фоне растущего спроса на ончейн-финансовые услуги. Технология некастодиальных кошельков Magic Labs будет интегрирована в B2B-платформу Payward Services, предлагающую услуги по торговле криптовалютами, кастодиальному хранению, токенизации активов и фиатным шлюзам. Внедрение встраиваемых кошельков позволит компаниям-клиентам предлагать кошельки с самостоятельным хранением прямо в своих приложениях, без reliance на сторонних провайдеров. Инфраструктура Magic Labs использовалась для создания более 60 миллионов некастодиальных кошельков и обработки транзакций на сумму свыше $10 млрд. Сделка, условия которой не разглашаются, должна завершиться в ближайшие недели. После продажи Magic Labs сосредоточится на развитии своей платформы Newton для безопасной авторизации и верификации ончейн-транзакций.

cointelegraph53 мин. назад

Kraken приобретает бизнес кошельков Magic Labs

cointelegraph53 мин. назад

Торговля

Спот
活动图片