открытый стандарт SKILL.md · трёхуровневая загрузка · Cursor / Claude Code · приёмка на удалённом Mac
Кому это знакомо? Вы уже пишете код с агентом в Cursor, Claude Code или Gemini CLI — и каждый раз заново вставляете инструкции: как деплоить, открыть PR, провести аудит. Контекст забивается, счёт за токены не уменьшается. Вывод: упакуйте процессы в Agent Skill (папка с YAML-frontmatter в SKILL.md); агент загружает по необходимости, переиспользуя между диалогами. Если scripts/ содержит macOS- или Xcode-шаги, проверяйте вывод на арендованном VNC Mac. Структура: Skill vs Rule → формат файлов → три уровня загрузки → создание и миграция → best practices → экосистема 2026 → кейсы → FAQ.
Эволюция AI-агентов предсказуема: чат-бот → ассистент задач → агент с отраслевой экспертизой. Классические промпты ломаются на трёх проблемах: сложные процессы приходится описывать заново в каждом диалоге; нерелевантные правила заполняют окно контекста; командные знания не версионируются между проектами.
Agent Skills инкапсулируют «как сделать X» в переиспользуемые модули: загрузка по запросу, экономия токенов, обмен между командами. С конца 2025 года, когда Anthropic продвигает открытый стандарт agentskills.io, Cursor, Claude Code, OpenAI Codex и Gemini CLI поддерживают одну структуру каталогов SKILL.md.
Краткое определение: Skill — это инструкция для AI-агента, чтобы он делал нужное в нужный момент, а не рассуждал с нуля каждый раз.
Повторяющаяся работа: деплой, тесты, описание PR в промпте часто съедают 2k–8k токенов за проход.
Загрязнение контекста: 500 строк конвенций в Rules — каждое редактирование файла тащит весь пакет.
Нет версионирования: устные договорённости без PR-review; onboarding через копирование чатов.
Разрыв платформ: один деплой-flow в Cursor и Claude Code в двойном экземпляре — стандарт Skill позволяет делиться через Git.
| Измерение | Rule (правило) | Skill (навык) |
|---|---|---|
| Момент загрузки | Всегда | По запросу / при релевантности |
| Сценарий | Постоянные соглашения (имена, стиль) | Сложные workflow (деплой, аудит) |
| Контекст | Фиксированный overhead | Динамично и эффективно |
| Триггер | Автоинъекция в system prompt | Маршрутизация агента + /skill-name |
| Аналогия | Лист для новичка | Специализированный runbook |
Что ещё умеют Skills: пользовательские команды / (например /deploy), многошаговые процессы, доменные знания, встроенные Bash/Python/Node-скрипты, интеграция с Hooks и MCP. Наша статья о рынке навыков OpenClaw — про внутренние плагины продукта; здесь — кросс-редакторный формат Skill, идея близкая, экосистемы разные.
Стандартная структура (имя папки = имя skill):
.cursor/skills/
└── deploy-app/
├── SKILL.md # обязательно
├── scripts/ # опционально: исполняемые скрипты
│ ├── deploy.sh
│ └── validate.py
├── references/ # опционально: справочные документы
└── assets/ # опционально: шаблоны и статикаСовместимые пути: .agents/skills/ (Claude Code, Codex, Gemini CLI), ~/.cursor/skills/ (глобально для пользователя), ~/.agents/skills/ (глобально cross-tool).
--- name: deploy-app description: >- Когда пользователю нужно задеплоить приложение в staging или production. Ключевые слова: деплой, релиз, выкладка, смена окружения. paths: - "apps/web/**" disable-model-invocation: false --- # Деплой приложения ## Шаги 1. Запустить `scripts/validate.py` — проверить переменные окружения 2. Выполнить `scripts/deploy.sh <environment>` 3. Убедиться, что health check возвращает HTTP 200
| Поле | Обязательно | Назначение |
|---|---|---|
| name | Да | Строчные буквы + дефисы, совпадает с именем папки |
| description | Да | Ключ маршрутизации: условия триггера, не аннотация |
| paths | Нет | Glob ограничивает файлы |
| disable-model-invocation | Нет | true = только вручную /skill-name |
Agent Skills используют progressive disclosure — в официальной документации и на agentskills.io описано три фазы:
Обнаружение (старт сессии): только name + description каждого Skill — оценка релевантности.
Активация (совпадение): читается полный текст SKILL.md и выполняются шаги.
По запросу (выполнение): references/ при необходимости; для scripts/ в контекст попадает только вывод скрипта, не исходный код.
Способы запуска: автоматически (агент решает, по умолчанию); вручную /skill-name; с контекстом @skill-name. Для опасных операций — disable-model-invocation: true и подтверждение человеком перед загрузкой.
Цифра из сообщества: в начале 2026 доступно более 31 000 Skills. Если бы все были в Rules, контекст одного чата мог бы вырасти более чем в 10 раз — progressive disclosure означает: агент «знает о многих справочниках, но открывает только нужный».
Быстрый путь: в Cursor Agent введите /create-skill, опишите Skill — агент создаст папку и SKILL.md.
Вручную: создайте SKILL.md в .cursor/skills/ваш-skill/ с frontmatter и шагами.
Скрипты опционально: повторяемые команды в scripts/, ссылки относительными путями в тексте.
Проверка распознавания: Cursor Settings → Rules или перезапуск сессии агента — Skill в списке?
Миграция: с Cursor 2.4+ команда /migrate-to-skills конвертирует dynamic rules и slash commands в папки Skill.
Разработчик на Windows пишет Skill в Cursor; если scripts/ содержит bash, xcodebuild или notarytool, локальный запуск невозможен. Рекомендуемый поток: Git-синхронизация на арендованный удалённый Mac → VNC с Cursor или терминалом → триггер Skill → проверка exit code и логов. Keychain, нотаризация и шаги TCC требуют VNC — см. наш чеклист разрешений TCC.
① description — маршрутизация, не резюме. Плохо: «Этот skill содержит инструкции деплоя». Хорошо: «Когда пользователь упоминает деплой, выкладку или staging/production, применять».
② Progressive disclosure: держите SKILL.md до 500 строк; детали в references/; логику выполнения в scripts/.
③ Единая ответственность: один Skill — одна область; «деплой + security audit + написать тесты» — три Skill.
④ Объясняйте зачем: «Перед деплоем validate.py, чтобы отсутствующие env не роняли сервис» — не просто «запустить validate.py».
⑤ Gather → Act → Verify: собрать информацию, действовать, проверить — агент лучше реагирует на отклонения.
⑥ Единая терминология, POSIX-пути, явная обработка ошибок: при сбое скрипта — retry, rollback или stop — пропишите в тексте.
| Категория | Примеры | Назначение |
|---|---|---|
| Продуктивность | Prompt Lookup, Skill Installer, Ralph Coding Loop | Качество промптов, установка Skills, TDD-автономия |
| Frontend / Web | React Best Practices, Web Design Audit, Next.js Cache Optimizer | Аудит производительности и a11y (в т.ч. Vercel) |
| Workflow | PR Skill, TDD Skill, Skill Writer | Commit → push → PR, test-driven, meta-skills |
| Креатив | Remotion Video Editor | Монтаж видео через React-описание |
Экосистема 2026: agentskills.io как кросс-платформенная база; Cursor Marketplace для bundles Rules+Skills+MCP; в monorepo вложенные пути .cursor/skills/shipping/deploy-staging/SKILL.md для изоляции scope.
Связь с MCP: MCP подключает внешние API (БД, браузер, GitHub). Skills определяют когда и в каком порядке вызывать инструменты. PR Skill может сделать git status, затем GitHub MCP — дополняют друг друга, не заменяют.
Сценарий: каждый релиз = commit → push → PR → описание. Skill: закоммитить, запушить ветку, gh pr create, заполнить шаблон — один /pr на всё.
Сценарий: править код, пока тесты не зелёные. Skill: запуск тестов → при ошибке агент патчит → повтор. Hooks могут будить агента при падении CI.
Сценарий: разработчик на Windows ведёт Skill с xcodebuild archive и notarytool submit. Локально — только редактирование Markdown; реальная приёмка на VNCMac: VNC → триггер Skill → агент выполняет скрипты → клик Keychain «Всегда разрешать» в GUI. Как в чеклисте notarytool stapler — одного SSH недостаточно.
| Пункт приёмки | Windows локально | Удалённый Mac + VNC |
|---|---|---|
| Редактировать SKILL.md | Да | Да |
| Bash-скрипты деплоя | WSL частично | Полная macOS-среда |
| xcodebuild / нотаризация | Нет | Обязательно |
| Keychain / диалоги TCC | Нет | Клик через VNC GUI |
Skill — структурированное руководство, не принуждение. Модель решает сама; чёткие description и шаги повышают согласованность. Перед установкой community Skill читайте scripts/.
Тестируйте на реальных задачах; проверяйте триггер-слова в description. Если автозагрузки нет — вручную /skill-name. Добавьте синонимы в начало description.
Общие workflow (commit, тесты) — в ~/.cursor/skills/; пути и внутренние API репозитория — в .cursor/skills/ проекта с коммитом в Git.
Идея близкая (переиспользуемые модули), но OpenClaw использует ClawHub и Gateway-плагины; Cursor Agent Skills следуют SKILL.md и agentskills.io. Могут сосуществовать: OpenClaw gateway 7×24, Cursor Skills для coding-workflow.
Agent Skills превращают процессы «которые знают только старожилы» в версионируемые runbook SKILL.md с review и cross-platform sharing. description = триггер, тело = Gather-Act-Verify, скрипты в scripts/ — и агент перестаёт быть «учителем с нуля», становится пользователем справочника.
Реалистичное ограничение: Skills с macOS-сборкой, нотаризацией и Keychain пишутся на Windows, но не валидируются локально; чистый SSH на удалённом Mac не нажимает системные диалоги. Собственный Mac mini оправдан при постоянном 7×24 agent-режиме; для ежемесячной приёмки iOS/macOS разделите написание на основной машине и запуск на VNC Mac — часто дешевле разового железа.
Ценность Skill — в переиспользовании, а переиспользование требует работающей среды. Откройте тарифы удалённого Mac и зарезервируйте VNC-узел для приёмки macOS Skills.