Свой skill в формате superpowers
Frontmatter, when-to-use, примеры, anti-patterns — рабочий skill, который реально подхватывается.
Напиши skill в формате superpowers для {{skill_purpose}}. Skill — не команда: его подхватывает агент по триггеру, а не пользователь вручную.
0. Сверься с актуальным форматом
Открой документацию superpowers / skills своей версии. Поля frontmatter и расположение менялись. Не пиши по памяти.
1. Решение: skill, команда или агент?
| Хочешь | Бери |
|---|---|
| Чтобы агент сам понял "сейчас уместно X" | skill |
| Чтобы пользователь явно запустил X | slash-команда |
| Чтобы делегировать целый кусок в изолированный контекст | subagent |
Если у тебя skill, который никто не триггерит — переоформи в команду.
2. Расположение
.claude/skills/<name>/
SKILL.md # обязательный главный файл
examples/ # опц., референсы
scripts/ # опц., вспомогательное
Имя папки = имя skill'a. safe-rebase → skill подхватывается под этим именем.
3. SKILL.md: frontmatter
---
name: safe-rebase
description: |
Use when the user asks to rebase, squash, or rewrite git history,
especially on a shared branch. Walks through stash → fetch →
rebase --autostash with conflict-handling checkpoints.
Triggers: "rebase", "squash commits", "rewrite history", "clean up branch".
when-to-use:
- User explicitly asks to rebase or squash
- History needs linearisation before a PR
- Conflict-prone branch with 5+ commits behind base
when-not-to-use:
- History is already pushed and shared with others
- User wants a merge commit (use a regular merge)
- Repo has hooks that block force-push
---
Description — самое важное поле. Агент решает по нему, подхватить или нет. Указывай когда, не что.
4. Тело SKILL.md
Структура:
# {{skill_purpose}}
## Когда срабатывать
[те же критерии, повтор для модели]
## Алгоритм
1. Сначала [discover]
2. Затем [act]
3. На каждом шаге [check]
4. Если конфликт — [recover]
## Примеры
### Example 1: типичный кейс
Input: ...
Действия: ...
Output: ...
### Example 2: edge case
Input: ...
Действия: ...
Output: ...
## Чего НЕ делать
- Не [...]
- Не [...]
## Известные ограничения
- [Когда skill не подойдёт]
5. Триггер-фразы
Из {{trigger_phrases}} собери список синонимов: формальные, разговорные, ошибки правописания, RU/EN. Минимум 5, максимум ~15. Слишком широкие триггеры → ложные срабатывания.
6. Тестирование
Прогон в 3 режимах:
- Positive: фразы из триггер-списка → skill должен подхватиться
- Negative: похожие, но не релевантные фразы → skill не должен срабатывать
- Ambiguous: неоднозначные кейсы → агент должен сам решать (и решать правильно)
Логируй: какая фраза вызвала какой выбор. Если skill ловит лишнее — сузь description.
7. Безопасность
Skill часто пускает агента в destructive операции:
- Перечисли явно что изменяется в системе (файлы, история, прод)
- Опиши rollback на каждый шаг
- Если есть irreversible шаг — добавь явное "stop, confirm" в алгоритм
- Не давай skill права на больше чем нужно
8. Документация
В описании репо / README:
- Список доступных skills
- Что каждый делает
- Когда подхватится
Это снижает "магию" — команда понимает что под капотом.
9. Версионирование
Skill эволюционирует. Веди CHANGELOG прямо в SKILL.md (или CHANGES.md рядом):
- Что изменилось
- Какие триггеры добавлены/убраны
- Что в anti-cases
Анти-паттерны
- Description в одну строку — не подхватится
- Триггеры "task", "code" — будет ловить всё
- Skill без алгоритма — модель импровизирует
- Skill без examples — модель путается в формате
- when-not-to-use отсутствует — будут ложные срабатывания
- Skill для одноразовой задачи — оверкилл
На выходе
- Папка
.claude/skills/<name>/сSKILL.md - Триггер-фразы протестированы (positive + negative + ambiguous)
- Запись в README репо
Как начать работать с Claude Code — мой первый раз
Пошаговая инструкция первого запуска: открыть, дать первое задание, что увидеть на экране, куда нажать.
Установи Claude Code пошагово — Mac / Windows / Linux
От «вообще ничего не понимаю» до «первая команда сработала». С скрин-описаниями и проверками что всё ок.
Создать специализированного агента
Определить роль, инструменты, границы и системный промт нового агента для Claude Code.