بنقرة واحدة
validate-architecture
Detects inter-layer import rule violations (Clean Architecture)
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Detects inter-layer import rule violations (Clean Architecture)
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Plan-then-execute sprint orchestrator. Works like a real delivery team: split work into sprints (~1 human-week each), plan them all up front WITH the user, then autonomously run each sprint through a full cycle (research→plan→design→do→QA→fix→deploy) to completion. Multiple sprints can run at once (concurrent dispatch). The leader (main session) dynamically scaffolds project-local agents for whatever domain — not dev-only (marketing, research, ops, data all fit). bkit-aware: borrows bkit agents/skills internally when present, runs fully standalone otherwise. Not for single-file edits, one-shot bug fixes, or work under ~a few hours.
Invoke for "/cowork-insights" command or when the user asks to summarize, review, or report on past Claude Code sessions. Analyzes sessions to show key prompts (verbatim), structured assessments (goal/outcome/friction), tool usage patterns, and actionable insights. Produces HTML report + shareable Markdown for Jira/Notion/Slack. Three report formats — full (deep narrative), standard (core insights), minimal (quick team share). Supports --from/--to with absolute (2026-03-01) or relative (7d, 2w, 1m) dates. Trigger on phrases like weekly status update, sprint recap, what did I do with Claude, AI usage patterns, session history, minimal recap, what I worked on today, share with team, cowork-insights. DO NOT invoke for active tasks (debugging, refactoring, code review, project setup) or for commit-time recaps (use cowork-commit instead).
Trigger whenever the user asks to commit AND wants the commit message enriched with AI collaboration history. Creates a lightweight commit message (key decision highlights + link) and a full directive-log file with conversation transcript + recap. The key signal is the combination of (1) making a commit with (2) capturing how AI contributed. Trigger on phrases like commit with AI recap, attach collaboration history to commit, record AI work in commit, cowork-commit. DO NOT trigger for plain commits without AI documentation, standalone time-period recaps (use cowork-insights instead), PR reviews, or general git operations.
One-time bootstrap of an existing project's docs/ and source into the cowork-doc-sync taxonomy structure. After a detailed gap analysis, relocate docs to match the standard. Phase 1 = relocation only (no new creation, includes moving content between docs), Phase 2 = analyze source to create new docs (only after user approval). For ongoing maintenance use /cowork-doc-sync. Triggers: cowork-doc-init, /cowork-doc-init, init doc structure, relocate docs, organize existing docs, doc init, doc bootstrap
Ongoing doc-sync skill that aligns a project's docs/ with the current code/decision state. Call once at the very end, after implementation/refactoring is complete. Enforces a numbered taxonomy (00-reference~99-misc) + status model (LIVING/ACTIVE/FROZEN) + migration rules. To fit an existing project into this structure for the first time, use /cowork-doc-init. Triggers: cowork-doc-sync, /cowork-doc-sync, sync docs, align docs, organize docs, doc sync, doc alignment
Compare DevMD files against actual source code. Measures coverage, accuracy, and consistency with deterministic counting and evidence-backed findings.
| name | validate-architecture |
| description | Detects inter-layer import rule violations (Clean Architecture) |
| triggers | ["validate architecture","check architecture"] |
| user-invocable | true |
| allowed-tools | ["Read","Write","Glob","Grep","Bash"] |
Corresponding rule: architecture.md
Statically detect inter-layer import rule violations and circular references in a project. If CLAUDE.md defines an architecture, use that layer definition; otherwise default to the general 3-layer model (presentation/business/data access).
Resolve target directories in this order:
**/*.{ts,tsx,js,jsx,py,java,go,rs}) -- use the top-level directory containing matched filesDefault exclusions: node_modules/, .git/, dist/, build/, coverage/
Skill-specific exclusions: *.test.*, *.spec.*, test_*, *_test.*
Output the following before proceeding with validation. Do not advance until resolution is complete.
| Step | Result |
|---|---|
| CLAUDE.md check | Found/Not found |
| Resolved directories | {list or "none"} |
| Source file count | {count} |
| Resolution method | CLAUDE.md / Glob fallback / SHALLOW |
Read the architecture definition from CLAUDE.md
Read to read the project root CLAUDE.mdCollect source files
Glob to collect files matching src/**/*.{ts,tsx,js,jsx,py,java}*.test.*, *.spec.*, test_*, *_test.*)Collect import/from statements
Grep to extract import statements from each fileimport .* from, from .* import, require(, @importDetect layer violation patterns
sqlalchemy, prisma, typeorm, drizzle, mongoose, sequelize, knex, pg, mysql, sqlite, etc.)Detect circular references
Output the matrix below before generating the final report. Do not proceed until every check has been performed.
| Check Item | Status | Items Checked | Violations | Severity | Evidence |
|---|---|---|---|---|---|
| Read CLAUDE.md architecture | ? | ? | -- | -- | {Read result} |
| Source file collection | ? | ? | -- | -- | {Glob pattern, file count} |
| domain -> infra import | ? | ? | ? | ERROR | {Grep pattern, searched files} |
| domain -> presentation import | ? | ? | ? | ERROR | {Grep pattern, searched files} |
| presentation -> DB import | ? | ? | ? | ERROR | {Grep pattern, searched files} |
| Circular references | ? | ? | ? | WARN | {Grep pattern, searched files} |
Status values: PASS (verification complete, no issues), NOT_APPLICABLE (no source files), SKIPPED (plugin issue), SHALLOW (target resolution failed)
Check every item before writing the report. If any item is unchecked, go back and complete it.
Before writing to .ww-w-ai/devtools/validate-architecture/, verify the JSON output:
Generate the validation report in the user's conversation language.
Output violations as a Markdown table in this format:
===== Architecture Validation Report =====
[Architecture basis]: CLAUDE.md definition / General 3-layer
| File | Violation | Severity |
|------|-----------|----------|
| `src/domain/user.ts` | Infrastructure layer import (`../../infra/db`) | ERROR |
| `src/core/order.ts` | Presentation layer import (`../../pages/OrderView`) | ERROR |
| `src/pages/Dashboard.tsx` | Direct DB import (`prisma`) | ERROR |
| `src/services/auth.ts` <-> `src/services/user.ts` | Circular reference | WARN |
Total violations: {N} (ERROR: {E}, WARN: {W})
====================================
When there are no violations:
===== Architecture Validation Report =====
[Architecture basis]: CLAUDE.md definition / General 3-layer
No violations.
====================================
| Severity | Condition |
|---|---|
| ERROR | Layer dependency-direction violation (domain -> infra, domain -> presentation, presentation -> DB) |
| WARN | Circular reference, ambiguous layer placement (file outside any layer directory) |
After generating the architecture validation report, save results to .ww-w-ai/devtools/validate-architecture/:
.ww-w-ai/devtools/validate-architecture/ if missinglatest.json -- structured result following templates/schema.jsonlatest.md -- human-readable report following templates/report.template.mdhistory/ -- copy latest.json to .ww-w-ai/devtools/validate-architecture/history/{timestamp}.jsonlatest.md is generated in the user's conversation language. JSON field names stay in English regardless of language.
The JSON output enables machine-parseable history tracking and cross-run comparison.
The history/ directory preserves previous executions for trend analysis.
mkdir -p .ww-w-ai/devtools/validate-architecture/history). The validation itself is read-only and does not modify project files.*.test.*, *.spec.*) are excluded from inspection (per testing.md exceptions, internal access inside tests is permitted).For detailed validation criteria, evidence tables, and examples:
../../docs/specs/architecture.md