Три Agent Skills для применения популярных методологий разработки при работе с Claude Code. Скиллы автоматически активируются, когда запрос соответствует их области применения.
Скопируйте директории скиллов в проект:
cp -r skills/* .claude/skills/Структура после установки:
.claude/skills/
├── domain-driven-design/
│ └── SKILL.md
├── test-driven-development/
│ └── SKILL.md
└── spec-driven-development/
│ └── SKILL.md
После установки скиллы доступны автоматически — Claude активирует их по контексту запроса.
Файл: .claude/skills/domain-driven-design/SKILL.md
Назначение: Проектирование архитектуры вокруг бизнес-домена.
Когда активируется:
- Старт нового проекта
- Создание структуры модулей
- Определение сущностей и связей
- Упоминание: DDD, domain model, bounded context, aggregates
Пример использования:
Пользователь: Спроектируй архитектуру для системы бронирования отелей
Claude:
1. Запросит описание ключевых сущностей (Booking, Room, Guest, Hotel)
2. Уточнит бизнес-правила (статусы бронирования, правила отмены)
3. Создаст доменную модель с entities, value objects, aggregates
4. Сгенерирует структуру проекта
Что генерирует:
- Структуру директорий по DDD
- Классы сущностей с бизнес-логикой
- Value objects для иммутабельных данных
- Domain services для операций между агрегатами
Файл: .claude/skills/test-driven-development/SKILL.md
Назначение: Разработка через тесты — сначала тесты, потом реализация.
Когда активируется:
- Реализация бизнес-логики или алгоритмов
- Пользователь предоставляет тест-кейсы
- Запрос на верифицируемую генерацию кода
- Упоминание: TDD, тесты, pytest, test cases
Пример использования:
Пользователь:
Вот тесты для валидации телефонных номеров:
def test_valid_russian_phone():
assert validate_phone("+79001234567") == True
def test_invalid_short_phone():
assert validate_phone("123") == False
Напиши функцию validate_phone
Claude:
1. Проанализирует тесты
2. Выведет требования из assertions
3. Реализует функцию, проходящую тесты
4. Запустит тесты для проверки
Режимы работы:
- Тесты предоставлены → анализ и реализация
- Тесты не предоставлены → сначала написание тестов, затем реализация
Файл: .claude/skills/spec-driven-development/SKILL.md
Назначение: Разработка по спецификации как контракту.
Когда активируется:
- Создание API эндпоинтов
- Работа с интеграциями
- Сложные фичи с множеством условий
- Упоминание: OpenAPI, JSON Schema, спецификация, контракт
Пример использования:
Пользователь:
Реализуй эндпоинт по спецификации:
POST /api/payments
Input:
- amount: decimal, required, > 0
- currency: string, required, ISO 4217
- customer_id: integer, required
Behavior:
- Проверить лимит клиента
- Если превышен → 400 с описанием
- Создать платёж в статусе pending
- Вернуть payment_id
Claude:
1. Распарсит спецификацию
2. Уточнит неясные моменты (формат ошибок, дефолты)
3. Сгенерирует код с валидацией всех условий
4. Проверит соответствие спецификации
Поддерживаемые форматы спецификаций:
- OpenAPI / Swagger
- JSON Schema
- Структурированные текстовые требования
| Задача | Скилл | Триггеры |
|---|---|---|
| Архитектура нового проекта | DDD | "спроектируй", "архитектура", "domain model" |
| Функция с чётким поведением | TDD | тесты в запросе, "напиши тесты" |
| API эндпоинт | SDD | OpenAPI, "по спецификации", endpoint spec |
| Сложная фича | DDD + SDD + TDD | комбинируйте по контексту |
Для сложных задач скиллы работают вместе:
Пользователь: Создай модуль обработки заказов для маркетплейса
Claude:
1. [DDD] Запросит доменную модель, создаст структуру
2. [SDD] Определит API контракты для операций
3. [TDD] Напишет тесты для бизнес-логики, затем реализацию
Скиллы можно адаптировать под проект:
- Скопируйте SKILL.md в
.claude/skills/ - Измените шаблоны кода под ваш стек (FastAPI → Django, pytest → unittest)
- Добавьте специфичные для проекта правила
- Обновите примеры под ваш домен