Найти в Дзене

Структура файлов AgentSkill: разбираем SKILL.md и YAML-фронтматтер

Открытый стандарт agentskill — это спецификация упаковки инструкций для ИИ в модульные файлы, где ядром выступает SKILL.md. Он заменяет гигантские монолитные промпты системой динамической подгрузки знаний через YAML-фронтматтер. Результат: агент тратит в 10 раз меньше токенов на контекст, загружая только те правила, которые нужны для текущей задачи. Помните, как пару лет назад мы копировали в чат простыни текста на пять тысяч слов, чтобы заставить нейросеть писать код по нашим правилам? К апрелю 2026 года этот подход окончательно вымер. Промпты перестали быть кусками текста, зашитыми глубоко в скрипты Python. Сегодня мы храним инструкции в Git-репозиториях прямо в корне проектов, версионируем их и делаем код-ревью. Я перевел большинство своих рабочих процессов на архитектуру agentskill еще в конце прошлого года — ну, когда спецификация только стабилизировалась — и обратно дороги нет. Работать с Claude 4.6 или локальным DeepSeek V4 через модульные навыки гораздо предсказуемее. Ниже я ра
Оглавление
   Разбор структуры файлов и конфигурации AgentSkill Артур Хорошев
Разбор структуры файлов и конфигурации AgentSkill Артур Хорошев

Открытый стандарт agentskill — это спецификация упаковки инструкций для ИИ в модульные файлы, где ядром выступает SKILL.md. Он заменяет гигантские монолитные промпты системой динамической подгрузки знаний через YAML-фронтматтер. Результат: агент тратит в 10 раз меньше токенов на контекст, загружая только те правила, которые нужны для текущей задачи.

Помните, как пару лет назад мы копировали в чат простыни текста на пять тысяч слов, чтобы заставить нейросеть писать код по нашим правилам? К апрелю 2026 года этот подход окончательно вымер. Промпты перестали быть кусками текста, зашитыми глубоко в скрипты Python. Сегодня мы храним инструкции в Git-репозиториях прямо в корне проектов, версионируем их и делаем код-ревью.

Я перевел большинство своих рабочих процессов на архитектуру agentskill еще в конце прошлого года — ну, когда спецификация только стабилизировалась — и обратно дороги нет. Работать с Claude 4.6 или локальным DeepSeek V4 через модульные навыки гораздо предсказуемее. Ниже я разложу по полкам, как правильно собирать эти файлы, чтобы ваши агенты не галлюцинировали и делали ровно то, что от них просят.

Анатомия папки навыка: прогрессивное раскрытие

Навык не является самостоятельным агентом. Это скорее картридж с игрой, который вы вставляете в консоль. Спецификация поддерживается платформой agentskills.io, а также нативно понимается GitHub Copilot и Cursor.

Обязательным ядром структуры является файл SKILL.md. Но пихать в него всё подряд — грубая ошибка. Я использую принцип прогрессивного раскрытия. Сам маркдаун-файл держу коротким, до 500 строк. Если мне нужно скормить нейросети объемную документацию по API или схемы баз данных, я выношу их в подпапки.

Стандартная структура директории выглядит так:

  • Файл SKILL.md — главный роутер и базовые инструкции.
  • Папка references/ — здесь лежат тяжелые технические спецификации в маркдауне.
  • Папка scripts/ — исполняемые файлы, например bash-скрипты для парсинга логов.
  • Папка assets/ — шаблоны и статика.

Моя личная рекомендация: никогда не заставляйте агента читать документацию из references при каждом запуске. Настройте файл SKILL.md так, чтобы агент обращался к подпапкам только при срабатывании определенных условий. Это экономит бюджет на API и ускоряет ответ.

Двуликий SKILL.md и правила YAML-фронтматтера

Сам файл делится на две жестко изолированные части. Сверху, между тремя дефисами, находится YAML-фронтматтер. Ниже идет классическое Markdown-тело с плейбуками (playbook), примерами форматов вывода и ограничениями.

Во фронтматтере прописываются метаданные для быстрого сканирования. Тут есть свои жесткие лимиты:

  • Поле name — максимум 64 символа, только нижний регистр и дефисы.
  • Поле description — жесткий лимит в 1024 символа.
  • Поле license — опционально, но полезно для открытых репозиториев.
  • Блок allowed-tools — критически важная секция для связи с внешним миром.

Тут важный момент про парсинг. Есть разные точки зрения на то, где указывать версию навыка. Некоторые фреймворки вроде LM-Kit.NET прощают вольности и читают version как поле верхнего уровня. Но строгий стандарт требует прятать версию внутрь словаря metadata. Я настоятельно советую придерживаться строгого формата. Если ваш agentskill сломается при запуске на чужом сервере из-за кривого YAML, виноваты будете вы.

Если вам нужно дать агенту доступ к внешним базам, используйте поле allowed-tools во фронтматтере. А сами инструменты удобно отдавать через MCP-сервис «Всё подключено» — там уже настроены коннекторы к Wordstat, ВКонтакте, Telegram и генерации картинок через API.

Фаза обнаружения (Discovery) и математика токенов

Почему этот стандарт вообще выстрелил? Из-за фазы обнаружения. Когда вы запускаете сессию в IDE, агент не читает все инструкции из папки .github/skills целиком.

Он сканирует только YAML-фронтматтеры. Формирует у себя в оперативной памяти легковесный каталог — эдакие ID-карты навыков. На это уходит копейки контекста.

Переход на agentskill дает 10-кратную экономию токенов. Вместо загрузки 5 000 токенов монолитного промпта, агент тратит около 500 токенов на каталог метаданных, и еще 500 подгружает только при вызове конкретного файла. Для тяжелых моделей вроде ChatGPT-5.4 это прямая экономия денег.

Кстати, я автоматизировал сбор логов по использованию токенов моими локальными агентами через Make.com — данные улетают в Google Таблицы, и я четко вижу, какой навык жрет бюджет, а какой простаивает. Если интересна автоматизация бизнес-логики, вот моя реф-ссылка: https://www.make.com/en/register?pc=horosheff

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

  📷
📷

Обучение автоматизации на Make.com

Триггеры вместо резюме: как писать description

Самая частая ошибка новичков — писать в поле description красивое маркетинговое описание. Агент плевать хотел на ваши эпитеты. Поле description — это единственное, что видит LLM до активации навыка.

Пишите туда жесткие триггеры и условия использования.

  • Плохо — Этот навык помогает писать отличные тесты для фронтенда на React.
  • Хорошо — Активируй этот навык, когда пользователь просит покрыть Jest-тестами компоненты React или анализирует ошибки CI/CD в пайплайне фронтенда.

Мой совет: относитесь к description как к регулярному выражению для нейросети. Чем точнее вы опишете паттерн проблемы, тем меньше шансов, что агент подтянет нерелевантный файл agentskill и сломает логику ответа.

Безопасность и динамическая установка на лету

Экосистема растет пугающими темпами. В официальном маркетплейсе agentskill.sh сейчас доступно более 40 000 стандартизированных модулей. И, естественно, это привлекло мошенников.

После неприятных инцидентов начала 2026 года в экосистеме OpenClaw, когда через вредоносные инструкции в маркдауне происходила инъекция промптов, правила игры ужесточились. Теперь платформы ввели автоматический скоринг безопасности от 0 до 100.

Как работает рейтинг безопасности:

Если рейтинг вашего файла выше 70 — он устанавливается прозрачно. Если скоринг падает ниже 30 баллов (например, агенту даются слишком широкие права на чтение корневых директорий), система блокирует автоматический вызов и требует ручного подтверждения от разработчика. И я считаю это абсолютно правильным решением.

При этом сама установка стала бесшовной. В современных средах разработки вроде Cursor или в CLI-тулзах типа Claude Code можно использовать команду /learn. Пишете /learn django-auth, агент лезет в глобальный каталог, скачивает нужный agentskill и активирует его прямо посреди диалога. Контекст не теряется, сессию перезапускать не нужно.

Практические кейсы: как это работает в бою

Давайте посмотрим на реальные внедрения. Команда фреймворка Atmos сделала отличный кейс. Они не стали делать одного «умного» агента, который знает всё. Они внедрили 21 узкоспециализированный agentskill.

У них есть легковесный маркдаун-роутер AGENTS.md. Когда разработчик просит поправить авторизацию, роутер читает YAML-фронтматтеры и понимает: ага, подгружаем навык atmos-auth. Если задача по инфраструктуре — тянет atmos-terraform. Разделение зон ответственности идеальное.

Другой пример — автоматизация UI-тестирования под iOS. Ребята создают пакеты, в которых сам файл генерирует код тестов, а приложенные bash-скрипты автоматически вшивают нужные accessibility identifiers в исходный код Swift-приложения.

Кстати, если вы работаете с генерацией контента, для мультимодальных агентов сейчас отлично подходят связки с Nano Banano 2 или GPT Image 1.5. У меня есть готовое решение: Tilda AI Agent (скачать), которое отлично работает с динамическими фидами и генерацией коллажных обложек.

Кроссплатформенность и выбор модели

Прелесть единого стандарта в том, что ваш файл теперь портативен. Вы можете написать его один раз и использовать локально через Pydantic AI, а завтра загрузить в корпоративный GitHub Copilot.

Но модели по-разному реагируют на форматирование маркдауна.

  • Claude 4.6 (версия Sonnet) — безупречно понимает вложенные структуры и правила из фронтматтера. Это мой фаворит для вайб-кодинга.
  • Qwen 3.5 — отличный open-source для локального развертывания, но иногда игнорирует поле allowed-tools, если не прописать жесткие ограничения в самом теле документа.
  • YandexGPT 4 Enterprise и GigaChat Pro — мощные корпоративные решения, работающие локально и по прямым каналам (с учетом ГОСТов РФ), они требуют более формального русского языка в плейбуках.

Рекомендую тестировать ваши навыки минимум на двух разных LLM перед публикацией в команду.

Что делать дальше

Хватит плодить бесконечные текстовые файлы на рабочем столе. Переход на модульную архитектуру агентов — это не прихоть, а техническая гигиена 2026 года.

Вот ваши шаги на сегодня:

  1. Создайте папку .agents/skills в корне вашего текущего проекта.
  2. Выделите самый частый и рутинный запрос к ИИ, который вы делаете.
  3. Опишите его в формате SKILL.md, добавив строгий YAML-фронтматтер с понятным полем description.
  4. Вынесите все куски кода или стороннюю документацию в папку references/.
  5. Протестируйте вызов этого навыка в вашем любимом ИИ-редакторе.

Если хочешь разобраться глубже в автоматизации процессов, создании агентов и связке всего этого через API — у меня есть обучение: Обучение по Автоматизации, CursorAI, маркетингу и make.com.

Хотите научиться автоматизации рабочих процессов с помощью сервиса make.com и нейросетей? Подпишитесь на наш Telegram-канал или читайте Мы в MAX. Для готовых сценариев забирайте Блюпринты по make.com.

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

Как агенты понимают, какой agentskill выбрать из десятков доступных?

Агент читает только блок YAML-фронтматтера у всех доступных файлов при запуске. Поле description работает как семантический триггер: если запрос пользователя совпадает с описанием проблемы в этом поле, навык активируется.

Можно ли использовать переменные внутри SKILL.md?

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

Обязательно ли выкладывать свои навыки в открытый маркетплейс agentskill.sh?

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

Почему мой ИИ-агент игнорирует инструкции из папки references/?

Скорее всего, вы забыли прописать в основном маркдаун-файле явное правило для обращения к этой папке. Добавьте в плейбук фразу вроде: При выполнении задачи обязательно прочитай спецификацию из references/api-docs.md.

Что будет, если в YAML-фронтматтере допустить ошибку синтаксиса?

В зависимости от платформы, навык либо тихо не загрузится (агент его просто не увидит), либо IDE выдаст ошибку парсинга при инициализации сессии. Всегда проверяйте YAML через валидаторы перед коммитом.

Чем agentskill отличается от Model Context Protocol (MCP)?

Они решают разные задачи. Стандарт агентов описывает рабочие процессы (workflow), логику и правила поведения. MCP используется исключительно для предоставления инструментов (tools), например, безопасного доступа к базе данных или внешнему API.