К основному содержанию
скилл Claude Code CX Codex Cursor GitHub Copilot

ddd-validate — скилл для Claude Code: что делает и как установить

Проверяет границы ограниченных контекстов в коде на TypeScript и выявляет утечки между доменами. Пригодится при аудите архитектуры DDD и перед слиянием общих правок.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add ruvnet/ruflo --skill ddd-validate -a claude-code
Открыть на GitHub

Что делает ddd-validate

Скилл проверяет архитектурную целостность проектов по правилам предметно-ориентированного проектирования (DDD). Сначала он ищет ограниченные контексты в папках src/*/domain/. Затем сканирует файлы .ts и ищет прямые импорты из доменного слоя чужих модулей. Разрешены только обращения через публичный index.ts прикладного уровня, а прямые ссылки вроде src/<context>/domain/entities/... отмечаются как нарушение.

Кроме импортов, анализ затрагивает сущности и репозитории. Скилл находит открытые сеттеры в корнях агрегатов, прямой доступ к дочерним сущностям в обход корня и события с именами не в прошедшем времени. Он также следит, чтобы интерфейсы репозиториев лежали строго в domain/repositories/, а реализации — в infrastructure/.

Итоговый отчёт выводится в виде таблицы по категориям BOUNDARY, INVARIANT, EVENT и REPOSITORY с номерами строк и рекомендациями. Для сохранения истории запуска скилл использует вызов npx @claude-flow/cli@latest memory store и хуки ruflo. Если ваша кодовая база использует структуру путей, отличную от src/*/domain/, сканирование контекстов просто ничего не найдёт.

Какие задачи решает

  • Найти прямые импорты между изолированными доменами
  • Выявить открытые сеттеры и мутации в корнях агрегатов
  • Проверить размещение интерфейсов и реализаций репозиториев
  • Проконтролировать прошедшее время в названиях доменных событий

Примеры запросов агенту

  • Запусти ddd-validate для проверки границ доменов в src/
  • Проверь соблюдение инвариантов агрегатов и структуру репозиториев с помощью ddd-validate
  • Выполни аудит DDD архитектуры через ddd-validate перед мерджем

Как установить ddd-validate

1Через Skills CLI (Vercel)

npx skills add ruvnet/ruflo --skill ddd-validate -a claude-code

2Вручную: положить файлы

~/.claude/skills/ddd-validate/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/ddd-validate/

Из того же набора104

Весь набор →
ruflo ruvnet Скилл добавляет в проект оркестрацию мультиагентных задач, память, маршрутизацию и MCP-инструменты. Нужен для swarm-сценариев и многошаговых workflows. Claude Code CX Codex Cursor +1 4 000установок Swarm Orchestration ruvnet Скилл для управления роями агентов с параллельным выполнением задач, динамической топологией и автоматической балансировкой нагрузки. Нужен, когда одного агента недостаточно и требуется координировать специалистов разного профиля. Claude Code CX Codex Cursor +1 2 100установок github-project-management ruvnet Скилл превращает рутину вокруг issue и доски проекта в вызовы gh и ruv-swarm: метки, подзадачи, поиск дублей. Пригодится, когда задач много, а порядка в трекере нет. Claude Code CX Codex Cursor +1 1 400установок github-workflow-automation ruvnet Скилл автоматизирует GitHub Actions с координацией AI-агентов. Генерирует оптимальные pipeline, управляет pull request'ами, анализирует баги и развёртывает обновления с минимальными рисками. Claude Code CX Codex Cursor +1 1 300установок github-code-review ruvnet Организует параллельное код-ревью в GitHub с помощью агентов безопасности, архитектуры и стиля через пакет ruv-swarm. Claude Code CX Codex Cursor +1 1 300установок stream-chain ruvnet Организует последовательную передачу данных между шагами агента через цепочки промптов или готовые пайплайны. Claude Code CX Codex Cursor +1 1 200установок flow-nexus-swarm ruvnet Развёртывает облачные рои ИИ-агентов и собирает событийные процессы с очередями сообщений. Нужен для координации задач, контроля запусков и масштабирования роя. Claude Code CX Codex Cursor +1 1 200установок performance-analysis ruvnet Находит узкие места в Claude Flow swarms, профилирует операции агентов и генерирует отчёты с рекомендациями по оптимизации. Claude Code CX Codex Cursor +1 1 200установок

Похожие

mantis-summarize официальный google Готовит карту кодовой базы перед аудитом безопасности и создаёт файлы mantis-summary.md в каждой папке. Сокращает контекст для планирования атак. Claude Code CX Codex Cursor +1 1 600установок trailmark trailofbits Парсит исходный код и бинарники в граф вызовов для поиска векторов атак, точек входа и путей передачи данных при аудите безопасности. Claude Code CX Codex Cursor +1 4 000установок verify Yeachan-Heo Скилл превращает «должно работать» в проверяемые доказательства: что запускали, что прошло, что осталось непроверенным. Claude Code CX Codex Cursor +1 642установок improve-codebase-architecture Matt Pocock Скилл ищет архитектурные узкие места в кодовой базе и показывает варианты углубления модулей в HTML-отчёте. Подойдёт для ревью перед рефакторингом. Claude Code 1 163 035установок tdd Matt Pocock Скилл управляет циклом красный-зелёный в TDD: проверяет, что тесты пишутся до кода, держит их на уровне публичных интерфейсов и не завязывает на внутреннюю структуру. Claude Code 1 141 062установок triage Matt Pocock Скилл проводит issue и внешние PR через роли триажа, проверку и подготовку брифа для агента. Подойдёт мейнтейнеру, который разбирает очередь задач. Claude Code 990 453установок codebase-design Matt Pocock Скилл помогает проектировать модули с небольшим интерфейсом и скрытой внутри сложностью. Подходит для рефакторинга, тестируемости и поиска чистого seam. Claude Code 850 344установок code-review Matt Pocock Проверяет изменения от выбранной точки по стандартам репозитория и требованиям задачи. Нужен для ревью ветки, PR или незавершённой работы. Claude Code 789 521установок

Вопросы о ddd-validate

Как установить ddd-validate в Claude Code?

Выполните команду npx skills add ruvnet/ruflo --skill ddd-validate -a claude-code. Также можно вручную поместить файл спецификации в ~/.claude/skills/ddd-validate/SKILL.md.

Что делает ddd-validate?

Скилл инспектирует кодовую базу на TypeScript на предмет нарушений принципов DDD: выявляет прямые зависимости между доменами, неинкапсулированные свойства агрегатов, ошибки в именовании событий и некорректное расположение репозиториев.

Какую структуру проекта ожидает ddd-validate?

Скилл рассчитан на структуру src/*/domain/ с файлами TypeScript. Он разрешает импортировать данные другого контекста только через прикладной index.ts, запрещая прямые ссылки на внутренние сущности домена.

Исходный текст

SKILL.md · MIT
---
name: ddd-validate
description: Validate domain boundaries -- detect cross-context import violations and aggregate invariant issues. Use when auditing a DDD codebase for leaks between bounded contexts, before merging cross-cutting changes, or as a CI gate to catch boundary erosion early.
argument-hint: ""
allowed-tools: Bash Read Grep Glob mcp__plugin_ruflo-core_ruflo__memory_store mcp__plugin_ruflo-core_ruflo__memory_search mcp__plugin_ruflo-core_ruflo__hooks_pre-task mcp__plugin_ruflo-core_ruflo__hooks_post-task
---
Validate domain boundary integrity across all bounded contexts.

## Steps

1. **Discover contexts**: Scan `src/*/domain/` to find all bounded contexts.

2. **Check cross-boundary violations**:
   - For each context, scan all `.ts` files for import statements
   - Flag any import that reaches into another context's `domain/` directory directly
   - Allowed: importing from another context's public `index.ts` (application layer)
   - Violation: importing from `src/<other-context>/domain/entities/...` directly

   ```bash
   # Find cross-boundary imports
   for ctx in $(find src -maxdepth 2 -name "domain" -type d | sed 's|src/||;s|/domain||'); do
     grep -rn "from ['\"].*src/" "src/$ctx/" --include="*.ts" | grep -v "src/$ctx/" || true
   done
   ```

3. **Check aggregate invariant enforcement**:
   - Scan aggregate root entities for public setters that bypass validation
   - Flag mutable public properties without invariant checks
   - Verify that child entities are not directly accessible (must go through aggregate root)

4. **Check event naming conventions**:
   - Domain events should be past-tense named (e.g., `OrderCreated`, not `CreateOrder`)
   - Events should be immutable (no public setters)
   - Events should carry the aggregate ID

5. **Check repository patterns**:
   - Repository interfaces should exist in `domain/repositories/`, not `infrastructure/`
   - Repository implementations should exist in `infrastructure/`, not `domain/`
   - Each aggregate root should have exactly one repository

6. **Report findings**:
   - Output a table of violations with file path, line number, violation type, and suggestion
   - Categorize as: `BOUNDARY`, `INVARIANT`, `EVENT`, `REPOSITORY`
   - Exit with summary: total violations, by category, severity

7. **Store results**:
   ```bash
   npx @claude-flow/cli@latest memory store --key "ddd-validation-TIMESTAMP" --value "RESULTS_SUMMARY" --namespace tasks
   npx @claude-flow/cli@latest hooks post-task --task-id "ddd-validate" --success true --store-results true
   ```

© ruvnet · MIT · ruvnet/ruflo

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой