✅ Чек-листы
Готовые чек-листы для всех ключевых операций: новая фича, code review, деплой в прод, настройка нового проекта, безопасность. Используй как шаблон в задачах Claude.
Как использовать: Скопируй нужный чек-лист в prompt Claude Code. Claude будет выполнять пункты последовательно и отмечать выполненное. Для длинных задач — вставляй в CLAUDE.md проекта.
🚀 Настройка нового проекта
⚙️ Claude Code для нового проекта
- Создать CLAUDE.md в корне проектаСтэк, модель, workflow, стандарты, критические правила
- Создать .mcp.json с нужными серверамиSerena, Context7, + специфичные для стэка
- Создать claude_readonly роль в PostgreSQLGRANT SELECT ON ALL TABLES...
- Скопировать hooks из example/.claude/helpers/dangerous-guard, auto-format, secret-scanner
- Прописать hooks в settings.jsonPreToolUse, PostToolUse, Stop
- Добавить examples/ директориюЭталоны кода для Claude
- Проверить MCP_TOOL_SEARCH=1 в settings.json envКритично для экономии токенов
- Проверить пароли в .gitignore.mcp.json содержит DATABASE_URI с паролем
🔴 Новый Laravel проект
- composer require tightenco/larapint+ создать pint.json
- php artisan vendor:publish laravel-boostУстановить boost:mcp команду
- Добавить laravel-boost в .mcp.jsondocker exec backend php artisan boost:mcp
- Создать FormRequest базовый классЗапрет $request->all()
- Настроить Telescope для dev средыLaravel Telescope для отладки
- Pest вместо PHPUnitcomposer require pestphp/pest --dev
- Настроить TrustProxiesДля работы за Caddy reverse proxy
✨ Новая фича
💡 Pre-coding (планирование)
- /brainstorm — обсудить задачуОсобенно если > 5 файлов будет изменено
- Сохранить spec в docs/superpowers/specs/YYYY-MM-DD-feature-design.md
- /write-plan — создать план реализацииСохранить в docs/superpowers/plans/
- git worktree add для изоляцииE:\Clients\wt\feature-name feat/feature-name
- Проверить миграции в планеНужен ли pg_dump перед запуском?
💻 During coding
- Написать тест первым (TDD RED)Запустить pest → убедиться что тест красный
- Реализовать минимум (TDD GREEN)Только то что нужно для теста
- Рефакторинг (TDD REFACTOR)Тест должен оставаться зелёным
- Запустить полный suite перед PR./vendor/bin/pest --parallel
- Проверить авто-форматированиеPint/Ruff/ESLint должны не давать ошибок
🔍 Pre-PR (Code Review)
- git diff main — проверить все измененияНет ли случайных файлов?
- Нет $request->all() в кодеТолько $request->validated()
- Нет any в TypeScriptИли явное обоснование в комментарии
- Все сервисы через DIfinal class + readonly в конструкторе
- DB::transaction() для множественных записейRollback при ошибке
- /request-code-review через ClaudeФинальная проверка кода
🚀 Деплой в production
⚠️ Перед деплоем
- pg_dump — бэкап базы данныхВыполнить ВРУЧНУЮ, не через Claude
- proxy backup — бэкап Caddy + сертификатыproxy.cmd backup
- Все тесты зелёныеCI/CD pipeline прошёл
- Проверить .env.productionНовые переменные добавлены?
- Миграции готовыalembic upgrade head / php artisan migrate
- Notify teamЕсли деплой затрагивает shared infra
✅ После деплоя
- Проверить health checkmcp__docker__docker_container_health_check
- proxy list — TLS сертификат активенproxy.cmd list
- Проверить логиmcp__docker__docker_container_logs
- Smoke test — 2-3 ключевых эндпоинтаВручную или через Playwright
- Telescope — нет новых ошибокLaravel Telescope errors tab
- RAM/CPU нормаmcp__docker__docker_container_stats
🔒 Безопасность
🔑 Аудит безопасности кода
- Нет $request->all()Mass assignment уязвимость
- SQL — только параметризованные запросыDB::select('...', [$param]) не конкатенация
- Нет echo/print $_GET/$_POSTXSS — только через Blade escape
- CSRF защита активна@csrf в формах, VerifyCsrfToken middleware
- Нет секретов в кодеТолько os.getenv() / config()
- Нет eval()Никогда
- Нет serialize() с внешними даннымиPHP Object Injection риск
🐳 Docker безопасность
- БД не публикует портыНет ports: 5432:5432 в compose
- Redis без внешних портовТолько internal network
- Не запускать как rootuser: "1000:1000" в compose
- .env в .dockerignoreНе попасть в образ
- Только нужные capabilitycap_drop: ALL в prod
- Healthcheck настроенДля всех критичных сервисов
🗄️ Работа с миграциями
🔄 Laravel migration
- Claude генерирует файлdatabase/migrations/YYYY_MM_DD_*.php
- Проверить up() вручнуюЧто именно создаётся/изменяется
- Проверить down() вручнуюКорректный rollback
- pg_dump перед migrateОбязательно для prod!
- migrate --pretendПоказать SQL без выполнения
- Запустить migratemcp__docker__docker_exec → php artisan migrate
- Проверить migrate:statusВсе миграции выполнены?
🐍 Python Alembic migration
- alembic revision --autogenerateСгенерировать revision файл
- Проверить versions/*.pyupgrade() и downgrade() корректны?
- pg_dump перед upgradeОбязательно для prod!
- alembic upgrade headdocker exec → alembic upgrade head
- alembic currentТекущая версия схемы
- alembic historyИстория всех миграций