В то время как все улучшают свои workflow: докидывают в них новые инструкции, скиллы, хуки и так далее, я понял, что перемудрил...
Модели и агенты развиваются настолько быстро, что старые подходы теряют свою актуальность прежде, чем ты о них узнаешь. И если я ещё пару месяцев назад рекомендовал всем использовать obra/superpowers, то сейчас делать это вслепую я уже не готов. Это всё ещё идеальный способ войти в agentic coding, но точно не самый эффективный способ разработки. Но обо всём по порядку.
Мой воркфлоу сейчас состоит буквально из четырёх вещей:
1. В CLAUDE.md я поместил правило для того, чтобы модель всегда следовала TDD-подходу, плюс описал, для чего нужны команды, объявленные в проекте (модели часто путаются и не понимают, какая команда за что отвечает, либо вообще пишут свои).
2. Каждый промпт, где я верхнеуровнево понимаю, что хочу сделать, начинаю со слов «проведи глубокий анализ/исследование/проверку/оценку» и заканчиваю его словами «используй параллельных субагентов». Между ними, собственно, пишу задачу, которую нужно выполнить.
3. Скилл /brainstorming из obra/superpowers для тех задач, где я вообще не понимаю, куда мне нужно двигаться или работаю в незнакомом для себя домене (хотя в последнее время использую его всё реже и реже).
4. Скилл /frontend-design от Anthropic для создания крутых визуалов — все интерфейсы с начала года создаю только с ним. Кстати, работает он только с Sonnet 4.6 и Opus 4.5/4.6, имейте в виду.
И... на этом буквально всё. Раньше у меня была целая пачка скиллов на каждый чих: на то, чтобы закоммитить и запушить изменения в ветку, на то, чтобы очистить worktrees, на то, чтобы создать описание для PR, с десяток скиллов на рефакторинг кода, другая пачка скиллов на то, чтобы убедиться что ничего не сломалось... Да, в общем, можете посмотреть сами. И это далеко не все скиллы:)
И в какой-то момент я устал их поддерживать и синхронизировать между репозиториями. Я решил создать проект Jack of all Prompts (ну, какова игра слов), чтобы как-то всё это структурировать и шарить между репозиториями. И тут меня осенило, что все эти скиллы мне нахрен не нужны:)
Я просто не понял, что мне выносить в этот новый репозиторий, потому что до меня дошло, что и без скиллов агенты отлично справлялись с поставленной перед ними задачей, а если я сделаю их обобщенными, то они будут работать хуже.
Эти мысли также навели меня на то, что мне и моим агентам на самом деле не нужны superpowers (we are not supermen).
И всё потому, что любые прямые инструкции ограничивают ваших агентов. Таким образом, чем больше инструкций в CLAUDE.md, тем больше палок в колёса вы вставляете своему агенту, тем хуже он будет работать и отвечать. На эту тему даже пару недель назад вышло исследование.
Для примера: в obra/superpowers есть скилл /systematic-debugging, который, как вы можете догадаться, создан для того, чтобы дебажить код. Если прочитать скилл, то вы удивитесь насколько круто он написан, сколько в нём edge-кейсов учтено. На бумаге звучит реально круто, а в жизни работает в несколько раз хуже, чем «проведи глубокое исследование проблемы и исправь её используя TDD-подход и параллельных субагентов».
И всё дело в том, что модель будет стараться решить проблему (либо написать фичу, провести исследование и т.д.) не тем путём, который она посчитает правильным в конкретной ситуации, а тем, который вы ей задали, и как понимаете, этот путь, скорее всего, будет менее эффективным.
Поэтому я перестал пользоваться всеми своими скиллами, а при создании новых руководствуюсь следующими правилами:
1. Добавлять в CLAUDE.md исключительно те моменты на которых агент стабильно спотыкается (пропускает фазу написания тестов, не понимает, что делают команды).
2. Скиллы должны решать очень специфичную проблему, в которой агент может запутаться, для всего остального есть