Claude Code в production: 6 месяцев, 9 проектов, лессоны
- Claude Code
- AI
- DevOps
- MCP
- subagents
Claude Code за полгода прошёл путь от удобного CLI-помощника до основной среды разработки на 9 наших проектах. Не «кодогенератор» и не «pair-programmer», а оркестратор знаний и операций — со своей системой расширений, памятью и долгоживущими рабочими процессами.
Контекст
С ноября 2024 по октябрь 2025 Anthropic выпустил пять точек расширения подряд: MCP (ноябрь 2024), Subagents (июль 2025), Hooks (сентябрь 2025), Plugins и Skills (октябрь 2025). Каждый релиз раз в два месяца. К весне 2026 в открытом маркетплейсе уже 425 plugins, 2 810 skills и 200 agents [ccpi/tonsofskills.com].
В нашем боевом контуре — Круизный флот (бронирование речных круизов), Прогулочный флот (прогулки на теплоходах), ozsm.ru (B2B вибропогружатели), webshturm.ru (этот сайт), Hermes Stack (9 docker-сервисов на 185.179.188.145), Paperclip (knowledge-management), Gemma Oracle (локальный fine-tune). Среднее число коммитов в день — 15-30, среднее число subagent-dispatch’ей за сессию — 5-15.
MCP-серверы как источник правды
Главная проблема обычного LLM — у него только то, что помещается в окно. MCP это исправляет: Claude получает прямой доступ к внешним системам, без копирования данных в промпт.
У нас подключено три MCP:
- LightRAG — knowledge-graph + векторный поиск по нашим документам (~150 markdown/docx, ~1 500 entities, ~3 000 relationships). Через
lightrag_query(mode='mix')Claude находит реквизиты ООО, спецификации, прошлые решения за один вызов. - Graphify — AST-граф workspace
K:/webshturm/(~5 200 узлов): кто импортируетButton.svelte, кратчайший путь от+page.svelteдоcalc_legacy_plan_price, какие функции вызываются из которых страниц. - river-mcp — прямой доступ к Supabase Postgres production: миграции, RPC, RLS-policies. Не запросы в чат, а реальные данные.
Принципы:
- Всегда
lightrag_queryдо начала задачи — экономит 30-50% контекста на повторное «открытие» прошлых решений. get_neighborsв Graphify вместоGrepпо большому каталогу — точечно, без шума.- Read-only по умолчанию — Claude видит prod, но не пишет туда без явного подтверждения.
Subagent-driven development
Один контекст плохо справляется с большим планом — копит ошибки, теряет фокус, поедает токены. Решение — каждый task получает свой fresh subagent с минимально необходимым контекстом.
Паттерн на webshturm.ru (этот сайт): план на 55 tasks разбит на семь фаз, каждая фаза — один subagent. Контроллер видит только итоги (DONE/CONCERNS, commit SHA, file count), а внутренние tool-calls остаются у subagent’а. Контекст контроллера экономится в 5-10 раз.
# Главный сеанс остаётся «дирижёром», работа делается в форках
Task("Phase 5a: Forms + API + hybrid mode") # → 5 commits, 9 vitest pass
Task("Phase 5b: Calculators + Pagefind + Я.Метрика") # → 4 commits, 16 vitest pass
Task("Phase 6a: Deploy artifacts (Caddyfile + workflow + DEPLOY.md)")
Цена паттерна — больше invocation’ов; зато провал одного task’а не загрязняет остальные.
Hooks для безопасности и автоматики
Hooks — это скрипты, привязанные к lifecycle-событиям Claude Code. Используем их в трёх ролях:
- Auto-lint после правки кода: PostToolUse hook на
Editзапускаетpnpm vitest runи блокирует следующий шаг, если тесты упали. - Блокировка опасных команд: PreToolUse hook отлавливает
docker system prune,git reset --hard origin/master,rm -rf /opt/webshturm-site/distи требует явного подтверждения. - Уведомления о завершении: Stop hook отправляет в Telegram бота
@hermesdm64botкороткое уведомление со ссылкой на коммит и pipeline status.
Hooks не вмешиваются в код — они охраняют процесс.
Skills и Plugins как библиотека макросов
Skills — markdown-файлы, обучающие Claude повторяемому workflow. Один SKILL.md = одна slash-команда /штурм, /сохранись, /разбитьплан. Пишешь раз — используешь годами.
В нашем глобальном ~/.claude/skills/ лежат:
/сохранись— гарантированно записывает знания в LightRAG + memory-файл + MEMORY.md, не пропуская ни одного шага./штурм— брейншторм с гейтом «не писать код до approval design spec» (этот skill родил проектный план для webshturm.ru)./разбитьплан— превращает spec в пошаговый task-list с TDD-чеклистами.
Plugins — следующий уровень: упакованные комплекты skills, hooks, MCP-конфигов. У нас стоит официальный superpowers: plugin (TDD, code-review, executing-plans), cybersecurity-skills (754 готовых рецепта по DFIR, malware analysis, pentesting) и собственный commit-commands:.
Что мы из этого вынесли
- Расширения важнее самой модели. Apples-to-apples сравнение «какая модель умнее» имеет смысл; но MCP+Skills+Hooks дают мультипликатор, который сильнее любой межмодельной разницы.
- Fresh context побеждает. Большой план в одном контексте — путь к деградации. Subagent-driven-development стоит дороже по токенам, но дешевле по итоговому браку.
- Автоматика возможна только через Hooks. Память и preferences не запускают команды — это делает только runtime-хук, привязанный к lifecycle-событию.
Ссылки
- Towards AI — Claude Code Extensions Explained — карта пяти точек расширения, март 2026
- code.claude.com/docs/en/plugins — официальная документация Plugins
- alexop.dev — Understanding Claude Code’s Full Stack — детально по архитектуре MCP/Hooks/Skills
- github.com/jeremylongshore/claude-code-plugins-plus-skills — открытый маркетплейс 425 plugins / 2 810 skills