Полное руководство по Rules: 8 наборов правил
Что вы сможете сделать после изучения
- Быстро находить и понимать все 8 обязательных наборов правил
- Правильно применять стандарты безопасности, стиля кода, тестирования и другие в процессе разработки
- Знать, какой агент использовать для соблюдения правил
- Понимать стратегии оптимизации производительности и принцип работы системы Hooks
Ваша текущая проблема
Столкнувшись с 8 наборами правил в проекте, вы можете:
- Не запомнить все правила: security, coding-style, testing, git-workflow... какие из них обязательны для соблюдения?
- Не знать, как применять: правила упоминают неизменяемый паттерн, процесс TDD, но как именно это делать?
- Не знать, кому попросить помощи: с какой проблемой обратиться к какому агенту? Кто проводит код-ревью?
- Баланс между производительностью и безопасностью: как оптимизировать эффективность разработки при обеспечении качества кода?
Этот справочный документ поможет вам полностью понять содержание, сценарии применения и соответствующие инструменты агентов для каждого набора правил.
Обзор правил
Everything Claude Code включает 8 обязательных наборов правил, каждый с чёткими целями и сценариями применения:
| Набор правил | Цель | Приоритет | Соответствующий агент |
|---|---|---|---|
| Security | Предотвращение уязвимостей безопасности, утечек конфиденциальных данных | P0 | security-reviewer |
| Coding Style | Читаемость кода, неизменяемость, небольшие файлы | P0 | code-reviewer |
| Testing | Покрытие тестами 80%+, процесс TDD | P0 | tdd-guide |
| Git Workflow | Стандартизация коммитов, процесс PR | P1 | code-reviewer |
| Agents | Правильное использование субагентов | P1 | N/A |
| Performance | Оптимизация токенов, управление контекстом | P1 | N/A |
| Patterns | Шаблоны проектирования, лучшие практики архитектуры | P2 | architect |
| Hooks | Понимание и использование Hooks | P2 | N/A |
Пояснение приоритетов правил
- P0 (Критичный): строгое соблюдение обязательно, нарушения приведут к рискам безопасности или серьёзному снижению качества кода
- P1 (Важный): следует соблюдать, влияет на эффективность разработки и командную работу
- P2 (Рекомендуемый): рекомендуется соблюдать, улучшает архитектуру кода и поддерживаемость
1. Security (Правила безопасности)
Обязательные проверки безопасности
Перед любым коммитом должны быть выполнены следующие проверки:
- [ ] Нет жёстко закодированных ключей (API keys, пароли, tokens)
- [ ] Все пользовательские данные проверены
- [ ] Предотвращение SQL-инъекций (параметризованные запросы)
- [ ] Предотвращение XSS (очистка HTML)
- [ ] CSRF защита включена
- [ ] Аутентификация/авторизация проверена
- [ ] Все конечные точки имеют ограничение скорости
- [ ] Сообщения об ошибках не раскрывают конфиденциальные данные
Управление ключами
❌ Неправильно: жёстко закодированные ключи
const apiKey = "sk-proj-xxxxx"✅ Правильно: использование переменных окружения
const apiKey = process.env.OPENAI_API_KEY
if (!apiKey) {
throw new Error('OPENAI_API_KEY not configured')
}Протокол реагирования на безопасность
При обнаружении проблемы безопасности:
- Немедленно остановите текущую работу
- Используйте агент security-reviewer для комплексного анализа
- Исправьте КРИТИЧЕСКИЕ проблемы перед продолжением
- Обновите все раскрытые ключи
- Проверьте весь код на наличие подобных проблем
Использование агента безопасности
Команда /code-review автоматически запускает проверку security-reviewer, обеспечивая соответствие кода стандартам безопасности.
2. Coding Style (Правила стиля кода)
Неизменяемость (КРИТИЧНО)
Всегда создавайте новые объекты, никогда не модифицируйте существующие:
❌ Неправильно: прямое изменение объекта
function updateUser(user, name) {
user.name = name // МУТАЦИЯ!
return user
}✅ Правильно: создание нового объекта
function updateUser(user, name) {
return {
...user,
name
}
}Организация файлов
Много небольших файлов > мало больших файлов:
- Высокая связность, низкое зацепление
- Типично 200-400 строк, максимум 800 строк
- Извлечение утилитарных функций из крупных компонентов
- Организация по функциональности/домену, а не по типу
Обработка ошибок
Всегда обрабатывайте ошибки полностью:
try {
const result = await riskyOperation()
return result
} catch (error) {
console.error('Operation failed:', error)
throw new Error('Detailed user-friendly message')
}Проверка входных данных
Всегда проверяйте пользовательские данные:
import { z } from 'zod'
const schema = z.object({
email: z.string().email(),
age: z.number().int().min(0).max(150)
})
const validated = schema.parse(input)Контрольный список качества кода
Перед пометкой работы как завершённой обязательно подтвердите:
- [ ] Код читаем, имена понятны
- [ ] Функции небольшие (< 50 строк)
- [ ] Файл сфокусирован (< 800 строк)
- [ ] Нет глубокой вложенности (> 4 уровней)
- [ ] Правильная обработка ошибок
- [ ] Нет инструкций console.log
- [ ] Нет жёстко закодированных значений
- [ ] Нет прямых модификаций (используйте неизменяемый паттерн)
3. Testing (Правила тестирования)
Минимальное покрытие тестами: 80%
Обязательно включите все типы тестов:
- Модульные тесты - независимые функции, утилиты, компоненты
- Интеграционные тесты - API endpoints, операции с базой данных
- E2E тесты - ключевые пользовательские сценарии (Playwright)
Test-Driven Development (TDD)
Обязательный рабочий процесс:
- Сначала напишите тест (RED)
- Запустите тесты - должны fail
- Напишите минимальную реализацию (GREEN)
- Запустите тесты - должны pass
- Рефакторинг (IMPROVE)
- Проверьте покрытие (80%+)
Поиск неисправностей тестов
- Используйте агент tdd-guide
- Проверьте изоляцию тестов
- Убедитесь, что моки настроены правильно
- Исправляйте реализацию, а не тесты (если только сам тест не ошибочен)
Поддержка агентов
- tdd-guide - активно использовать для новых функций, обязателен сначала писать тесты
- e2e-runner - эксперт по E2E тестам на Playwright
Использование команды TDD
Команда /tdd автоматически вызывает агент tdd-guide и проводит вас через полный процесс TDD.
4. Git Workflow (Правила рабочего процесса Git)
Формат сообщений коммитов
<type>: <description>
<optional body>Типы: feat, fix, refactor, docs, test, chore, perf, ci
Сообщения коммитов
Attribution в сообщениях коммитов глобально отключена через ~/.claude/settings.json.
Рабочий процесс Pull Request
При создании PR:
- Проанализируйте полную историю коммитов (не только последний коммит)
- Используйте
git diff [base-branch]...HEADдля просмотра всех изменений - Подготовьте исчерпывающее резюме PR
- Включите план тестирования и TODOs
- Если это новая ветка, используйте флаг
-uдля push
Рабочий процесс реализации функций
1. Сначала планирование
- Используйте агент planner для создания плана реализации
- Определите зависимости и риски
- Разбейте на несколько этапов
2. Метод TDD
- Используйте агент tdd-guide
- Сначала напишите тесты (RED)
- Реализуйте для прохождения тестов (GREEN)
- Рефакторинг (IMPROVE)
- Проверьте покрытие 80%+
3. Код-ревью
- Сразу после написания кода используйте агент code-reviewer
- Исправьте КРИТИЧЕСКИЕ и ВАЖНЫЕ проблемы
- По возможности исправьте СРЕДНИЕ проблемы
4. Коммит и push
- Подробные сообщения коммитов
- Соблюдайте формат conventional commits
5. Agents (Правила агентов)
Доступные агенты
Расположены в ~/.claude/agents/:
| Агент | Назначение | Когда использовать | |--- | --- | --- | ---| | planner | Планирование реализации | Сложные функции, рефакторинг | | architect | Проектирование системы | Архитектурные решения | | tdd-guide | Разработка через тестирование | Новые функции, исправление багов | | code-reviewer | Код-ревью | После написания кода | | security-reviewer | Анализ безопасности | Перед коммитом | | build-error-resolver | Исправление ошибок сборки | При сбое сборки | | e2e-runner | E2E тестирование | Ключевые пользовательские сценарии | | refactor-cleaner | Очистка мёртвого кода | Поддержка кода | | doc-updater | Обновление документации | Обновление docs |
Немедленное использование агентов
Без запроса пользователя:
- Запрос сложной функции - используйте агент planner
- Код только что написан/изменён - используйте агент code-reviewer
- Исправление бага или новая функция - используйте агент tdd-guide
- Архитектурное решение - используйте агент architect
Параллельное выполнение задач
Всегда используйте параллельное выполнение для независимых операций:
| Способ | Описание |
|---|---|
| ✅ Хорошо: параллельное выполнение | Запустите 3 агента параллельно: Агент 1 (анализ безопасности auth.ts), Агент 2 (проверка производительности системы кэширования), Агент 3 (проверка типов utils.ts) |
| ❌ Плохо: последовательное выполнение | Сначала агент 1, затем агент 2, затем агент 3 |
Многопозиционный анализ
Для сложных проблем используйте субагентов с разными ролями:
- Фактический рецензент
- Старший инженер
- Эксперт по безопасности
- Рецензент согласованности | Блокиратор документации | Предотвращает создание ненужных .md/.txt файлов |
PostToolUse
- Создание PR: записывает URL PR и статус GitHub Actions
- Prettier: автоматическое форматирование JS/TS файлов после редактирования
- Проверка TypeScript: запуск tsc после редактирования .ts/.tsx файлов
- Предупреждение console.log: предупреждает о console.log в редактируемых файлах
Stop
- Аудит console.log: проверка console.log во всех изменённых файлах перед завершением сеанса
Автоматическое подтверждение разрешений
Используйте с осторожностью:
- Включите для доверенных, чётко определённых планов
- Отключите при исследовательской работе
- Никогда не используйте флаг dangerously-skip-permissions
- Вместо этого настройте
allowedToolsв~/.claude.json
Лучшие практики TodoWrite
Используйте инструмент TodoWrite для:
- Отслеживания прогресса многошаговых задач
- Проверки понимания инструкций
- Включения реального руководства
- Отображения детализированных шагов реализации
Список TODO раскрывает:
- Шаги в неправильном порядке
- Пропущенные элементы
- Лишние ненужные элементы
- Неверную детализацию
- Неправильно понятые требования
Следующий урок
Следующий урок: Полное руководство по Skills.
Вы узнаете:
- Полное руководство по 11 библиотекам навыков
- Навыки: стандарты кодирования, паттерны бэкенда/фронта, непрерывное обучение и др.
- Как выбрать подходящий навык для разных задач
Резюме урока
8 наборов правил Everything Claude Code предоставляют комплексное руководство для процесса разработки:
- Security - предотвращение уязвимостей безопасности и утечек конфиденциальных данных
- Coding Style - обеспечение читаемости, неизменяемости, небольших файлов
- Testing - обязательное покрытие 80%+ и процесс TDD
- Git Workflow - стандартизация коммитов и процесс PR
- Agents - руководство по правильному использованию 9 специализированных субагентов
- Performance - оптимизация использования токенов и управление контекстом
- Patterns - предоставление распространённых шаблонов проектирования и лучших практик
- Hooks - объяснение принципа работы автоматизированной системы перехватчиков
Помните, что эти правила - не ограничения, а руководство, помогающее вам писать качественный, безопасный и поддерживаемый код. Использование соответствующих агентов (например, code-reviewer, security-reviewer) помогает автоматически соблюдать эти правила.
Приложение: справочник по исходному коду
Нажмите, чтобы раскрыть расположение исходного кода
Дата обновления: 2026-01-25
| Функция | Путь к файлу | Номер строки |
|---|---|---|
| Правила Security | rules/security.md | 1-37 |
| Правила Coding Style | rules/coding-style.md | 1-71 |
| Правила Testing | rules/testing.md | 1-31 |
| Правила Git Workflow | rules/git-workflow.md | 1-46 |
| Правила Agents | rules/agents.md | 1-50 |
| Правила Performance | rules/performance.md | 1-48 |
| Правила Patterns | rules/patterns.md | 1-56 |
| Правила Hooks | rules/hooks.md | 1-47 |
Ключевые правила:
- Security: Нет жёстко закодированных секретов, проверка OWASP Top 10
- Coding Style: Неизменяемый паттерн, файлы < 800 строк, функции < 50 строк
- Testing: Покрытие тестами 80%+, обязательный процесс TDD
- Performance: Стратегия выбора модели, управление окном контекста
Соответствующие агенты:
- security-reviewer: обнаружение уязвимостей безопасности
- code-reviewer: проверка качества кода и стиля
- tdd-guide: руководство по процессу TDD
- planner: планирование реализации