Назад к блогу
Agent SkillsClaude CodeИИ-агенты

Agent Skills: 397 скиллов на одной машине, и почему нужный не срабатывает

Дмитрий Риппа31 августа 2026 г.обновлено 31 августа 2026 г.17 мин чтения
Agent Skills: 397 скиллов на одной машине, и почему нужный не срабатывает

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

Меня зовут Дмитрий Риппа, я делаю Rippa Digital: мы разрабатываем и внедряем ИИ-агентов, а сайт, который вы читаете, собирается и проверяется собственными скиллами — эта статья написана скиллом article и вычитана скиллом slop-check. Ниже я показываю их исходники и свои цифры, а не пересказываю чужие подборки.

Сразу про написание. В русском тексте живут обе формы — скиллы и скилы, и обе означают одно и то же; в заголовках и командах слово остаётся латиницей, skills. Дальше я пользуюсь всеми тремя написаниями как синонимами, потому что именно так их и ищут.

Что такое agent skills и чем они не являются

Agent skills — это папка с файлом SKILL.md, в котором лежит процедура: что делать, в каком порядке и чего не делать. Рядом могут лежать справочники, скрипты и шаблоны. Агент постоянно видит только имя и описание скилла; тело он читает, когда решил, что скилл подходит, а соседние файлы — когда дошёл до шага, где они нужны. Это называется прогрессивным раскрытием, и это единственная причина, по которой скиллы вообще стали стандартом.

Разница с соседними инструментами простая:

ИнструментКогда в контекстеЧто даёт
Промптодну сессиюразовое пожелание
CLAUDE.md / AGENTS.mdвсегдаправила проекта, за которые всегда платите токенами
MCP-серверпри вызовеновый инструмент: доступ к данным, API
Скиллимя и описание всегда, тело по требованиюпроцедуру, которую агент выбирает сам

Формат открытый, со спецификацией на agentskills.io, и один и тот же SKILL.md понимают агенты разных вендоров. Официальный репозиторий Anthropic — github.com/anthropics/skills; на 31 августа 2026 у него 172 725 звёзд и 1 190 открытых issues. Это стоит отметить отдельно: один из лучших русских гайдов, разбор Хекслета, в разделе частых вопросов утверждает, что официальной библиотеки готовых skills у Anthropic нет. На момент публикации того текста репозиторий уже существовал. Ошибка мелкая, но показательная: полка обновляется быстрее, чем её успевают описывать.

Лимит в 1 %: почему нужный скилл молча перестаёт срабатывать

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

Механику проще посмотреть, чем описать:

Как каталог скиллов обрезается по лимиту контекста

При старте сессии агент собирает каталог из имени и описания каждого установленного скилла. Если каталог не помещается в один процент контекстного окна, лишние описания отрезаются без сообщения об ошибке, и соответствующие скиллы перестают рассматриваться при выборе.

Старт сессииКаталог скиллов:name + description каждого из 397Помещается в 1 % контекстного окна?Да: скилл виден агентуи может сработатьНет: описания отрезанымолча — скиллне рассматривается

Обрезка происходит до того, как агент вообще начнёт выбирать. Ошибки не будет.

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

Самый подробный русскоязычный разбор этой механики — сорокаминутное видео канала Vibe Business. Автор специально занижает лимит, просит агента о задаче, под которую у него есть подходящий скилл, и получает отказ: скилл не активировался, при этом «Клод вообще никак не показывает, что что-то пошло не так». Диагностика находится командой /doctor, которая печатает прямо: пять описаний превышают лимит, 184 описания удалены.

Обратите внимание, как это соотносится с популярным советом. В ролике «ТОП СКИЛЛОВ CLAUDE CODE ДЛЯ НОВИЧКОВ» (23 370 просмотров) про библиотеку из 32 скиллов сказано: «я поставил себе, они между собой вообще не конфликтуют». Смыслового конфликта там действительно нет. Конфликт бюджетный, и именно поэтому его не видно.

Я посчитал свой набор: 397 файлов, 189 имён, 105 дублей

Разговор про лимит остаётся абстрактным, пока не посчитаешь собственную машину. Я посчитал. Скрипт обходит ~/.claude, находит все SKILL.md, разбирает frontmatter и складывает длину полей name и description — то есть ровно то, что попадает в каталог.

Что считаемЗначение
Файлов SKILL.md с описанием397
Из них личных (~/.claude/skills)49
Из них пришедших с плагинами348
Уникальных имён189
Имён, встречающихся более одного раза105
Символов name + description, все файлы181 824
Символов name + description, уникальные84 538
Описаний длиннее 1024 символов8

Дубли — отдельная история: frontend-design лежит на машине в двенадцати копиях, skill-creator — в семи, template-skill, web-artifacts-builder, theme-factory и canvas-design — по шесть. Это не моя неаккуратность, это следствие установки нескольких маркетплейсов, каждый из которых тащит свой набор популярных скиллов.

Теперь пересчёт в токены, и здесь я обязан быть точным насчёт того, что измерено, а что оценено. Количество файлов, имён, дублей и символов — измерено. Токены — оценка: я делю символы на три, что для смеси кириллицы и латиницы даёт грубый, но рабочий порядок. Получается примерно 60 600 токенов, если считать все файлы, и примерно 28 200, если считать только уникальные имена. Для окна в 200 000 токенов это 30,3 % и 14,1 % соответственно.

Рекомендованный лимит — один процент, то есть около 2 000 токенов. Превышение получается в 14–30 раз в зависимости от того, как считать дубли. Восемь описаний при этом длиннее 1024 символов и обрезаются сами по себе, независимо от общего бюджета.

Я не проверял внутренности Claude Code и не знаю, как именно он строит и режет свой список — это поведение я беру из документации и из демонстрации /doctor в чужом ролике. Но порядок величины не оставляет пространства для интерпретаций: набор, который сложился сам собой, без единого сознательного решения «поставлю-ка ещё», на порядок превышает бюджет, под который всё это спроектировано.

И это ровно то, о чём говорит сообщество, когда его спрашивают прямо. Автор популярного разбора в Instagram, shreya.easyhai, формулирует так: «Сейчас существует 1 300 000 агентских скиллов. Никто не может прочитать этот список, поэтому люди выбирают по количеству звёзд и надеются». В том же ролике — новость, которая читается как приговор жанру: Vercel выпустил скилл, единственная работа которого — найти вам все остальные скиллы, и он уже самый устанавливаемый скилл в мире. Отдельный скилл, чтобы разобраться в скиллах.

Кстати, о цифрах каталогов. В русских статьях лета 2026 фигурируют 573 тысячи скиллов на skills.sh, 43 тысячи в Context7, 323 тысячи в LobeHub. В августовском ролике звучит «больше 60 000 скиллов в Claude Code», в разборе от 27 августа — 1,3 миллиона. Числа расходятся на порядок и устаревают за недели, поэтому опираться стоит не на них, а на то, сколько скиллов стоит у вас.

Эксперимент Vercel: 53 % со скиллом, 53 % без него, 100 % на обычном файле

Самый неудобный факт про скиллы принадлежит не Anthropic, а Vercel — компании, которая делает Next.js. Привожу его как чужой результат: я его не воспроизводил, я пересказываю разбор Vibe Business, где он изложен подробно.

Сравнивали два способа дать агенту документацию по Next.js — специальный скилл против обычного файла AGENTS.md, который агент читает в начале сессии:

Что дали агентуПрошло тестов
Ничего53 %
Скилл с документацией53 %
Скилл + прямое указание «обязательно используй скилл»79 %
Обычный AGENTS.md с коротким индексом документации100 %

Скилл с документацией сработал ровно как его отсутствие. Причина не в качестве документации, а в том, что агент не догадывался её открыть. Как только ему сказали прямо, результат вырос до 79 %. А простой текстовый файл, который всегда перед глазами, дал 100 %.

Отсюда рекомендация, которая есть в документации и почти отсутствует в русских гайдах: скилл заводят тогда, когда раздел в CLAUDE.md вырос из факта в процедуру. Пока это факт или короткое правило — ему место в файле, который всегда в контексте. Когда это многошаговый процесс с чек-листом — его выносят в скилл, чтобы не платить за него постоянно. Скилл выигрывает не «качеством», а экономикой контекста, и если экономить нечего, он проигрывает обычному файлу.

Что Anthropic требует сделать до того, как вы напишете первую строку

Замерить, как агент справляется без скилла. Это буквальное требование официального руководства по написанию скиллов, и порядок там такой:

  1. Прогнать модель на реальных задачах без скилла.
  2. Задокументировать конкретные провалы и нехватку контекста.
  3. Построить три сценария проверки, которые эти провалы ловят.
  4. Замерить базовый уровень — сколько модель проходит без скилла.
  5. Написать минимальную инструкцию, закрывающую именно эти провалы.
  6. Прогнать сценарии, сравнить с базовым уровнем, доработать.

Формулировка в документации прямая: это гарантирует, что вы решаете настоящие проблемы, а не документируете воображаемые. Ни в одном из трёх лучших русских разборов темы шага «замерить базовый уровень» нет. У Хекслета есть пять обязательных тест-кейсов — идеальный вход, неполный, конфликтный, плохие данные, граничный случай, — и это отличная практика, но она проверяет скилл, а не гипотезу о том, что скилл вообще нужен.

Разница принципиальная. Пять тест-кейсов отвечают на вопрос «мой скилл работает стабильно?». Базовый замер отвечает на вопрос «а без него было хуже?». После эксперимента Vercel второй вопрос перестаёт быть риторическим.

Там же — правило, которое дешевле всего соблюдать с самого начала: писать в скилл только то, чего модель не знает. Каждую строку проверяют вопросом «модель это и так знает?». Объяснение, что такое PDF или как устроен HTTP, просто жжёт токены. Остаётся только то, что в вашем проекте сделано не как у всех.

Степени свободы: узкий мост и открытое поле

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

  • Узкий мост над обрывом. Есть ровно один безопасный путь. Даёте точный скрипт и запрещаете менять команду. Пример: миграция базы, которая должна выполняться строго в заданной последовательности.
  • Открытое поле без опасностей. К успеху ведёт много дорог. Даёте общее направление и доверяете агенту выбрать маршрут. Пример: код-ревью, где лучший подход зависит от контекста.
  • Промежуточный случай. Есть предпочтительный шаблон, но вариации допустимы. Даёте псевдокод или скрипт с параметрами.

Практический вывод: большинство плохих скиллов плохи не потому, что написаны неаккуратно, а потому что степень свободы выбрана неверно. Жёсткий пошаговый регламент на творческой задаче душит агента; общие рекомендации на хрупкой операции приводят к тому, что он импровизирует там, где импровизировать нельзя.

И сюда же — второй уровень той же мысли, лучшая идея в русской полке. Автор разбора на Хабре формулирует её так: любую инструкцию, которую нельзя проверить, агент рано или поздно нарушит, а вы об этом даже не узнаете. Поэтому там, где правило проверяется машиной, в скилл кладут маленький скрипт-валидатор, и шаг «прогони проверку и правь, пока не пройдёт» пишут явно. Пожелание становится правилом ровно в тот момент, когда за проверку отвечает программа.

Наши рабочие скиллы: что внутри и сколько это стоит в токенах

Вместо очередного списка «поставьте вот эти двадцать» — два скилла, которые работают у нас в проде, с их реальными размерами. Оба обслуживают этот сайт: мы делаем веб-сервисы на заказ, и собственный блог держим на той же дисциплине, что и клиентские проекты.

Скилл article пишет статьи для этого блога. Он устроен так:

.claude/skills/article/
├── SKILL.md              # 253 строки, ~4 488 токенов — процедура из девяти шагов
└── references/
    ├── russian.md        # 144 строки — русская полоса: очередь, ловушки, планка
    ├── research.md       # 109 строк — протокол архива источников
    ├── checklist.md      #  88 строк — проверка перед публикацией
    └── blueprint.md      #  77 строк — разбивка по секциям

Скилл slop-check вычитывает готовый текст на признаки машинного письма: 106 строк, около 1 863 токенов.

Теперь цена. Постоянно в каталоге висят только описания: 383 символа у article и 277 у slop-check — вместе меньше семисот символов. Тело article весом около 4 488 токенов грузится только когда я прошу написать статью. Четыре справочника общим весом около 7 310 токенов не грузятся вообще, пока процедура не дойдёт до шага, которому они нужны: при статье на русском открывается russian.md, при проверке перед публикацией — checklist.md, остальные так и остаются на диске.

Это и есть прогрессивное раскрытие в цифрах. Если бы всё это лежало одним файлом, я платил бы примерно 11 800 токенов за каждый запуск, включая те, где статью писать не надо вовсе.

Два правила, которые я вывел на этих файлах и которых нет в гайдах:

Ссылка на файл должна называть момент, а не факт. Формулировка «детали — в references/» не работает: агент либо тащит файл всегда, либо не открывает никогда. Работает «открой references/russian.md до того, как выберешь тему».

Один уровень вложенности, не больше. Документация предупреждает: когда один справочник ссылается на другой, агент может прочитать вложенный файл частично — подсмотреть первые сто строк вместо полного чтения. Все мои справочники ссылаются из SKILL.md напрямую.

Скилл кодирует решение, а решения устаревают

Скилл — это не инструкция, а решение, записанное в файл. И у решений есть срок годности, о котором никто не предупреждает.

Живой пример, случившийся за день до публикации этой статьи. В файле references/russian.md моего скилла article был записан раздел с вердиктом: тема Agent Skills закрыта, в русской выдаче пятнадцать сайтов, оба наших угла заняты, статью не писать. Правило появилось не с потолка — за ним стояла проверка тринадцати поисковых выдач.

31 августа мы это решение отменили: конкуренция в нише пока небольшая, спрос растёт, а отстроиться можно полнотой материала. Статью — вот эту — решили писать.

И тут важное. Скилл при этом работал безупречно. Он честно вернул записанное в нём правило и остановил работу. Просто правило больше не было верным. Версионирования для такого мало: CHANGELOG.md, который справедливо рекомендует Хекслет, фиксирует, что изменилось, но не хранит почему решение было принято и при каких условиях перестаёт действовать.

Практический вывод, который я теперь применяю: рядом с каждым запрещающим правилом в скилле должна стоять дата и причина. Не «тему не брать», а «тему не брать — проверка выдачи от 30.08.2026, пятнадцать конкурентов; перепроверить через квартал или при смене стратегии». Тогда запрет читается как гипотеза со сроком, а не как закон природы. Похожая мысль стоит за нашим материалом про настройку ИИ-агента: большинство поломок происходит не в модели, а в решениях вокруг неё.

Где скиллы не работают

Есть четыре ситуации, в которых скилл не окупится, и лучше знать о них заранее.

Задача случается редко. На хороший скилл уходит несколько часов, на доводку — ещё несколько дней. Если задача возникает раз в месяц, эти часы не окупятся никогда. Разумный порог — два-три раза в неделю и чаще.

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

Задача решается файлом, который всегда в контексте. Это прямой вывод из эксперимента Vercel. Пока речь о фактах и коротких правилах, CLAUDE.md или AGENTS.md выигрывает и по результату, и по простоте.

Задача слишком большая. На больших входах скилл начинает плыть: контекстное окно перегружается, и агент пропускает середину. Лечится дроблением задачи или упрощением самого скилла, но не добавлением в него новых деталей — от этого становится хуже.

И пятое, техническое, про которое стоит помнить отдельно. В тело скилла можно подставлять вывод команд оболочки, и эта подстановка выполняется до того, как агент вообще проснётся. Механика полезная — например, подтянуть последние изменения из репозитория прямо в инструкцию. Но у скачанного из интернета скилла в этом месте может стоять что угодно, с доступом ровно туда же, куда есть доступ у вас. Скиллы из чужих каталогов стоит открывать и читать глазами, а не ставить пачками по звёздам.

Ревизия набора за десять минут

Порядок действий, если предыдущие разделы попали в вас:

  1. Посчитайте, сколько у вас скиллов. find ~/.claude -name "SKILL.md" | wc -l. Число обычно удивляет: у меня было 397 при ощущении «десяток-другой».
  2. Найдите дубли. Одинаковые имена из разных маркетплейсов — самая дешёвая экономия: удаление лишних копий не отнимает ни одной возможности.
  3. Проверьте длину описаний. Всё, что длиннее 1024 символов, обрезается независимо от общего бюджета, и обрезается с конца — то есть теряются как раз слова-триггеры, по которым скилл должен находиться.
  4. Запустите /doctor. Если список сокращён, вы увидите это там и только там.
  5. Отключите то, чем не пользовались ни разу. Не удаляйте — отключите, вернуть всегда успеете.
  6. Для оставшихся проверьте базовый уровень. Возьмите задачу, отключите скилл, прогоните. Если разницы нет — у вас не скилл, а красивая папка.

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

Частые вопросы

Скиллы работают только в Claude Code? Нет. Формат открытый, спецификация опубликована, один и тот же SKILL.md понимают агенты разных вендоров. Каталоги, в которых агент ищет скиллы, у всех свои, а внутри всё одинаково. Практикующие синхронизируют один набор между несколькими агентами через симлинки, чтобы не держать копии.

Сколько скиллов держать в проекте? Практический ориентир — от трёх до десяти на проект. Меньше трёх обычно значит, что повторяющиеся задачи ещё не разобраны. Больше десяти — команда перестаёт помнить, какой скилл для чего. Но главный ограничитель не этот, а бюджет каталога: считайте не количество, а суммарную длину имён и описаний.

Чем скилл отличается от системного промпта? Системный промпт применяется всегда и стоит токенов постоянно. Скилл агент выбирает сам под задачу, и до выбора он стоит только длины своего описания. Если правило должно действовать всегда — это не скилл.

Почему мой скилл не срабатывает? Три причины по частоте: описание не содержит слов, которыми вы формулируете задачу; каталог обрезан по лимиту, и скилл в него не попал; описание длиннее 1024 символов и обрезано с конца вместе с триггерами. Первое лечится переписыванием описания под реальные формулировки, второе и третье — ревизией набора.

Писать скиллы на русском или на английском? Поля name и description — латиницей и в нижнем регистре, это требование формата. Тело можно писать по-русски, агент понимает. Практика расходится: часть авторов держит скиллы на английском, потому что вся экосистема англоязычная. Я держу процедуры на английском, а справочники с русскими правилами — на русском, и проблем это не создавало.

Можно ли поручить написание скилла самому агенту? Можно и разумно — для этого есть отдельный класс скиллов, создающих другие скиллы. Но проверять результат придётся вам: агент склонен добавлять объяснения того, что модель и так знает, и раздувать тело. Документация прямо советует после генерации пройтись и вырезать лишнее.


Самое неожиданное в этой теме то, что скиллы оказались не про добавление, а про вычитание. Каждый установленный скилл забирает часть внимания у всех остальных, и чем больше их в списке, тем ниже шанс, что сработает нужный. Пока рынок мерит успех количеством — 60 тысяч, 573 тысячи, 1,3 миллиона, — работает ровно обратная арифметика: набор из пяти скиллов, каждый из которых прошёл проверку базовым уровнем, полезнее набора из трёхсот, собранного по звёздам. У меня их было 397, и я не помню, чтобы принимал хоть одно решение поставить.

Одна статья в месяц, когда есть что измерить.

На эту ушли три разбора из выдачи, три расшифровки, сверка с документацией и подсчёт собственных 397 скиллов. Оставьте почту — пришлю следующую.