Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Мои скиллы для Claude Code

Это три скилла, которыми я пользуюсь сам каждый день. Я не собирал их «чтобы было» — каждый вырос из того, что меня регулярно бесило в работе с Claude Code: он забегает вперёд и пишет код раньше, чем мы договорились, что строим; он теряет контекст между сессиями; и он с одинаковой уверенностью говорит «готово» про то, что проверил, и про то, что просто выглядит правильно.

Забирайте, правьте под себя. Я специально не делал их «универсальными» — это мой рабочий процесс, и в нём есть мои предпочтения. Менять их — нормально и правильно.

Автор: @magerdev1


Что внутри

/pipeline — проект от идеи до выката

Ведёт проект по одиннадцати стадиям с жёсткими воротами между ними: идея → план с критериями приёмки → risk spikes → контракты → сквозной слайс → задачи → реализация → аудит → фидбек → выкат. Каждая стадия материализуется в файл в docs/pipeline/, и после каждой Claude останавливается и спрашивает разрешение идти дальше.

Смысл в двух вещах. Первая: файлы, а не контекст. Сессия умирает, docs/pipeline/ живёт — новая сессия поднимает проект с той же точки, а не с моего пересказа. Вторая: ворота. Именно они не дают модели написать реализацию, пока мы ещё обсуждаем, что вообще строим — самая дорогая ошибка при работе с ИИ-агентом.

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

/launch-web — аудит сайта перед публикацией

52 пункта в восьми секциях: доходят ли заявки, индексация и robots, мета и OG-превью, доступность, скорость, юридические страницы и согласия, аналитика, домен и бэкапы. На выходе — отчёт в docs/launch/ со статусами и приоритетами P1/P2/P3.

Главный принцип: скилл проверяет, а не делает. Это принципиально. Если попросить модель «добавь 20 вещей перед запуском», она сгенерирует отзывы, кейсы, адрес на карте и политику конфиденциальности — то есть выдумает факты реального бизнеса. Поэтому у каждого пункта пять статусов, и один из них — 🙋 «нужны данные от человека». Отзывы, адрес, реквизиты, фото команды скилл не придумывает никогда, он их запрашивает.

У каждого пункта есть строка «Ловушка» — как этот пункт обычно проваливают, считая закрытым. Например: страница 404 существует, но отдаёт код 200, и поисковик индексирует её как обычную. Или robots.txt со стейджа уехал в прод и закрыл весь сайт одной строкой.

/launch-security — аудит безопасности перед выкаткой

63 пункта в двенадцати секциях: секреты и ключи, аутентификация и сессии, доступ к чужим данным, инъекции и XSS, загрузка файлов, заголовки и CORS, лимиты и расходы, утечки в ответах и логах, зависимости, прод-гигиена, платежи и вебхуки, плюс отдельная секция, если внутри приложения работает LLM.

Первым делом скилл определяет стек и честно помечает неприменимое как «н/п» — совет про RLS в проекте без Postgres обесценивает весь отчёт. Дальше идёт по коду и находит вещи вроде «SELECT * FROM orders WHERE id = $1 без проверки владельца» — с указанием файла, строки и сценария: пользователь A подставляет id заказа B и получает чужой адрес и телефон.

Отдельно про ключи: если скилл находит живой секрет, он прерывает обход и говорит сразу. Порядок действий при этом обратный тому, что делают все: сначала отозвать и перевыпустить ключ, потом чистить историю git. Переписывание истории не удаляет секрет из форков, открытых PR и клонов — ключ, побывавший в репозитории, скомпрометирован навсегда.

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


Установка

Windows:

.\install.ps1
.\install.ps1 -DryRun

macOS / Linux:

chmod +x install.sh
./install.sh
./install.sh --dry-run

Скрипт копирует skills/ и agents/ в ~/.claude/, перезаписывая одноимённые папки. Остальное содержимое ~/.claude не трогается. Изменения подхватываются в новой сессии Claude Code — проверить можно, набрав / и посмотрев список.

Если Windows ругается на запуск скрипта, снимите блокировку скачанного файла:

Unblock-File .\install.ps1
powershell -ExecutionPolicy Bypass -File .\install.ps1

Не хотите ставить глобально — скопируйте нужную папку из skills/ в .claude/skills/ внутри конкретного проекта, тогда скилл будет виден только там.

Эта папка — источник правды. Правьте здесь и запускайте установку заново; файлы в ~/.claude/skills руками не трогайте, они перезапишутся.

Кто и когда запускает

Скилл Claude запускает сам Вызов вручную
pipeline да, когда узнаёт задачу по описанию /pipeline
launch-web нет, никогда /launch-web
launch-security нет, никогда /launch-security

Оба аудита я специально сделал только ручными: disable-model-invocation: true во фронтматтере. Claude не подгрузит их ни по смыслу разговора, ни внутри субагента, ни по расписанию. Мне не нужно, чтобы он посреди работы решил, что пора проверить мой сайт на 52 пункта.

Правки скиллы тоже не делают: disallowed-tools: Edit убирает инструмент правки на время работы. Единственный файл, который они пишут, — отчёт. Чинить — отдельной просьбой после, когда я решил, что именно чинить.

Аргументы

/launch-web https://site.ru seo,legal
/launch-security . access,secrets
/pipeline 4

Без аргументов скиллы спросят, что проверять, и пройдут все секции.

Что стоит поправить под себя

  • Секции чек-листов лежат в references/checklist.md каждого скилла — добавляйте свои пункты в том же формате: приоритет, проверка, ловушка.
  • Раздел «Стиль кода» в pipeline/SKILL.md — мой. Правила про комментарии там довольно жёсткие, и это осознанно, но вкусы у всех разные.
  • pipeline требует подтверждения на каждых воротах. Если это раздражает, скажите «не спрашивай, гони до конца» — скилл это понимает.

Заметки по фронтматтеру

Собрал по документации, потому что интуиция здесь подводит:

  • allowed-tools — это пред-одобрение (меньше запросов на подтверждение), а не ограничение. Ограничивает disallowed-tools. Оба сбрасываются со следующим сообщением.
  • disable-model-invocation: true — скилл не подгружается автоматически, не предзагружается в субагентов и не срабатывает по расписанию.
  • user-invocable: false — обратное: скрыть из меню /, оставить только автозагрузку.
  • context: fork — выполнение в отдельном субагенте, основной контекст не засоряется. В аудитах не включал намеренно: они задают уточняющие вопросы и показывают сводку в диалоге.
  • model и effort можно прибить к скиллу — например effort: high для аудита безопасности.

Лицензия MIT — берите, меняйте, используйте в своих проектах, в том числе коммерческих.

Вопросы и предложения — @magerdev1.

About

Скиллы для Claude Code: дисциплинированный пайплайн разработки и два пред-запусковых аудита — сайта и безопасности приложения

Topics

Resources

Stars

17 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages