mustard-claude 3.1.6 → 3.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mustard-claude",
3
- "version": "3.1.6",
3
+ "version": "3.1.7",
4
4
  "description": "Framework-agnostic CLI for Claude Code project setup",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,86 +1,86 @@
1
- <!-- mustard:generated at:2026-03-25T00:00:00.000Z role:general -->
2
- # Stack: Templates
3
-
4
- > Technology stack and tooling for the Mustard templates subproject.
5
-
6
- ## Runtime
7
-
8
- | Component | Version | Notes |
9
- |-----------|---------|-------|
10
- | Node.js | >=18 | All hooks/scripts use CommonJS (`require`) |
11
- | JavaScript | ES2020+ | Optional chaining, nullish coalescing, `Set`, `Map` |
12
-
13
- ## Dependencies
14
-
15
- None. All template files are dependency-free — they use only Node.js built-in modules:
16
-
17
- | Module | Used In |
18
- |--------|---------|
19
- | `fs` | All hooks, all scripts |
20
- | `path` | All hooks, all scripts |
21
- | `child_process` | `auto-format.js`, `pre-compact.js`, `statusline.js`, `sync-detect.js`, `sync-registry.js` |
22
- | `crypto` | `sync-detect.js` (SHA-256 hashing) |
23
- | `os` | `statusline.js`, `session-cleanup.js` |
24
-
25
- ## File Categories
26
-
27
- | Category | Path | Count | Purpose |
28
- |----------|------|-------|---------|
29
- | Hooks | `hooks/*.js` | 8 | PreToolUse/PostToolUse/Session lifecycle guards |
30
- | Scripts | `scripts/*.js` | 3 | Sync-detect, sync-registry, statusline |
31
- | Commands | `commands/mustard/*/SKILL.md` | 14 | Slash command definitions |
32
- | Skills | `skills/*/SKILL.md` | 6 | Foundation skills (design-craft, react-best-practices, etc.) |
33
- | Config | `settings.json` | 1 | Hook wiring, permissions, statusline |
34
- | Config | `pipeline-config.md` | 1 | Agent dispatch rules, wave system, model selection |
35
- | Template | `CLAUDE.md` | 1 | Orchestrator rules template |
36
-
37
- ## Commands
38
-
39
- ```bash
40
- # Run hook tests
41
- node --test hooks/__tests__/hooks.test.js
42
-
43
- # Run sync-detect (outputs JSON)
44
- node scripts/sync-detect.js
45
- node scripts/sync-detect.js --no-cache
46
-
47
- # Run sync-registry
48
- node scripts/sync-registry.js
49
- node scripts/sync-registry.js --force
50
- ```
51
-
52
- ## Structure
53
-
54
- ```
55
- templates/
56
- ├── CLAUDE.md # Orchestrator rules (copied to .claude/CLAUDE.md)
57
- ├── settings.json # Hook wiring + permissions
58
- ├── pipeline-config.md # Agent/wave/model config
59
- ├── commands/mustard/ # 14 slash commands
60
- │ ├── feature/SKILL.md
61
- │ ├── bugfix/SKILL.md
62
- │ ├── scan/SKILL.md
63
- │ ├── git/SKILL.md
64
- │ └── ... (approve, complete, resume, status, task, etc.)
65
- ├── hooks/ # 8 lifecycle hooks
66
- │ ├── bash-safety.js # PreToolUse — block dangerous commands
67
- │ ├── file-guard.js # PreToolUse — block sensitive files
68
- │ ├── enforce-registry.js # PreToolUse — require entity-registry
69
- │ ├── auto-format.js # PostToolUse — prettier/dotnet format
70
- │ ├── guard-verify.js # PostToolUse — architectural rules
71
- │ ├── subagent-tracker.js # Pre/SubagentStart/Stop — agent state
72
- │ ├── pre-compact.js # PreCompact — snapshot before compaction
73
- │ ├── session-cleanup.js # SessionEnd — prune stale state
74
- │ └── __tests__/hooks.test.js # Tests (node:test + node:assert)
75
- ├── scripts/
76
- │ ├── sync-detect.js # Subproject discovery + role detection
77
- │ ├── sync-registry.js # Entity registry generation
78
- │ └── statusline.js # ANSI statusline renderer
79
- └── skills/ # Foundation skills
80
- ├── commit-workflow/
81
- ├── design-craft/
82
- ├── pipeline-execution/
83
- ├── react-best-practices/
84
- ├── senior-architect/
85
- └── skill-creator/
86
- ```
1
+ <!-- mustard:generated at:2026-03-25T00:00:00.000Z role:general -->
2
+ # Stack: Templates
3
+
4
+ > Technology stack and tooling for the Mustard templates subproject.
5
+
6
+ ## Runtime
7
+
8
+ | Component | Version | Notes |
9
+ |-----------|---------|-------|
10
+ | Node.js | >=18 | All hooks/scripts use CommonJS (`require`) |
11
+ | JavaScript | ES2020+ | Optional chaining, nullish coalescing, `Set`, `Map` |
12
+
13
+ ## Dependencies
14
+
15
+ None. All template files are dependency-free — they use only Node.js built-in modules:
16
+
17
+ | Module | Used In |
18
+ |--------|---------|
19
+ | `fs` | All hooks, all scripts |
20
+ | `path` | All hooks, all scripts |
21
+ | `child_process` | `auto-format.js`, `pre-compact.js`, `statusline.js`, `sync-detect.js`, `sync-registry.js` |
22
+ | `crypto` | `sync-detect.js` (SHA-256 hashing) |
23
+ | `os` | `statusline.js`, `session-cleanup.js` |
24
+
25
+ ## File Categories
26
+
27
+ | Category | Path | Count | Purpose |
28
+ |----------|------|-------|---------|
29
+ | Hooks | `hooks/*.js` | 8 | PreToolUse/PostToolUse/Session lifecycle guards |
30
+ | Scripts | `scripts/*.js` | 3 | Sync-detect, sync-registry, statusline |
31
+ | Commands | `commands/mustard/*/SKILL.md` | 14 | Slash command definitions |
32
+ | Skills | `skills/*/SKILL.md` | 6 | Foundation skills (design-craft, react-best-practices, etc.) |
33
+ | Config | `settings.json` | 1 | Hook wiring, permissions, statusline |
34
+ | Config | `.claude/pipeline-config.md` | 1 | Agent dispatch rules, wave system, model selection |
35
+ | Template | `CLAUDE.md` | 1 | Orchestrator rules template |
36
+
37
+ ## Commands
38
+
39
+ ```bash
40
+ # Run hook tests
41
+ node --test hooks/__tests__/hooks.test.js
42
+
43
+ # Run sync-detect (outputs JSON)
44
+ node scripts/sync-detect.js
45
+ node scripts/sync-detect.js --no-cache
46
+
47
+ # Run sync-registry
48
+ node scripts/sync-registry.js
49
+ node scripts/sync-registry.js --force
50
+ ```
51
+
52
+ ## Structure
53
+
54
+ ```
55
+ templates/
56
+ ├── CLAUDE.md # Orchestrator rules (copied to .claude/CLAUDE.md)
57
+ ├── settings.json # Hook wiring + permissions
58
+ ├── pipeline-config.md # Agent/wave/model config
59
+ ├── commands/mustard/ # 14 slash commands
60
+ │ ├── feature/SKILL.md
61
+ │ ├── bugfix/SKILL.md
62
+ │ ├── scan/SKILL.md
63
+ │ ├── git/SKILL.md
64
+ │ └── ... (approve, complete, resume, status, task, etc.)
65
+ ├── hooks/ # 8 lifecycle hooks
66
+ │ ├── bash-safety.js # PreToolUse — block dangerous commands
67
+ │ ├── file-guard.js # PreToolUse — block sensitive files
68
+ │ ├── enforce-registry.js # PreToolUse — require entity-registry
69
+ │ ├── auto-format.js # PostToolUse — prettier/dotnet format
70
+ │ ├── guard-verify.js # PostToolUse — architectural rules
71
+ │ ├── subagent-tracker.js # Pre/SubagentStart/Stop — agent state
72
+ │ ├── pre-compact.js # PreCompact — snapshot before compaction
73
+ │ ├── session-cleanup.js # SessionEnd — prune stale state
74
+ │ └── __tests__/hooks.test.js # Tests (node:test + node:assert)
75
+ ├── scripts/
76
+ │ ├── sync-detect.js # Subproject discovery + role detection
77
+ │ ├── sync-registry.js # Entity registry generation
78
+ │ └── statusline.js # ANSI statusline renderer
79
+ └── skills/ # Foundation skills
80
+ ├── commit-workflow/
81
+ ├── design-craft/
82
+ ├── pipeline-execution/
83
+ ├── react-best-practices/
84
+ ├── senior-architect/
85
+ └── skill-creator/
86
+ ```
@@ -1,88 +1,88 @@
1
- ---
2
- name: templates-command-authoring
3
- description: "Pattern for writing slash command SKILL.md files with trigger, procedure,
4
- and rules. Use when creating a new mustard command, adding a pipeline command,
5
- writing a /command, or the user says 'new command', 'add slash command',
6
- 'create /feature-like command', 'write command template'."
7
- ---
8
- <!-- mustard:generated at:2026-03-25T00:00:00.000Z role:general -->
9
-
10
- # Command Authoring Pattern
11
-
12
- Slash commands are SKILL.md files in `commands/mustard/{command-name}/SKILL.md` that define orchestrator behavior.
13
-
14
- ## Pattern
15
-
16
- ### File Convention
17
- - Location: `commands/mustard/{command-name}/SKILL.md`
18
- - No YAML frontmatter (commands are not auto-loaded by description)
19
- - End with `ULTRATHINK` keyword **only for `/feature` and `/bugfix` commands** — do NOT add it to other commands
20
-
21
- ### Structure
22
-
23
- ```markdown
24
- # /{command-name} - Title
25
-
26
- > Advisory note (optional)
27
-
28
- ## Trigger
29
- `/{command-name} <args>`
30
-
31
- ## Description
32
- What the command does and when to use it.
33
-
34
- ## Procedure / ## Action
35
- Step-by-step process. Use:
36
- - Tables for signal → action mappings
37
- - Numbered steps for sequential flow
38
- - Code blocks for bash commands
39
- - `### Phase` headers for multi-phase pipelines
40
-
41
- ## Rules
42
- - Explicit constraints (NEVER, ALWAYS, MUST)
43
- - Budget limits (max reads, max API calls)
44
- - Delegation requirements
45
- ```
46
-
47
- > Note: Add `ULTRATHINK` at the end only for `/feature` and `/bugfix` commands. All other commands end after the last rule/section.
48
-
49
- ### Key Rules
50
- - Commands NEVER implement code directly — they orchestrate via Task tool
51
- - Pipeline commands create spec files and pipeline state JSON
52
- - Git commands read `mustard.json` for branch flow configuration
53
- - Zero-confirmation: most commands execute without asking user
54
-
55
- ### Command Categories
56
-
57
- | Category | Examples | Characteristic |
58
- |----------|----------|---------------|
59
- | Pipeline | `/feature`, `/bugfix`, `/approve`, `/complete`, `/resume` | Multi-phase, creates spec, state tracking |
60
- | Task | `/task-analyze`, `/task-review`, `/task-refactor` | Single delegation, no spec |
61
- | Git | `/git sync`, `/git commit`, `/git push`, `/git merge` | Reads `mustard.json`, submodule-aware |
62
- | Scan | `/scan`, `/scan-format` | Discovery + analysis + generation |
63
- | Status | `/status`, `/validate` | Read-only, reporting |
64
-
65
- ## Example
66
-
67
- ```markdown
68
- # /my-command - Do Something
69
-
70
- ## Trigger
71
- `/my-command <name>`
72
-
73
- ## Procedure
74
- 1. Read `pipeline-config.md` for agent config
75
- 2. Dispatch Task agent with context
76
- 3. Collect results and report
77
-
78
- ## Rules
79
- - NEVER implement code directly
80
- - ALWAYS delegate via Task tool
81
- - Budget: max 5 API calls
82
- ```
83
- Ref: `commands/mustard/feature/SKILL.md`, `commands/mustard/status/SKILL.md`
84
-
85
- ## References
86
-
87
- For full code examples with variants:
88
- > Read `references/examples.md`
1
+ ---
2
+ name: templates-command-authoring
3
+ description: "Pattern for writing slash command SKILL.md files with trigger, procedure,
4
+ and rules. Use when creating a new mustard command, adding a pipeline command,
5
+ writing a /command, or the user says 'new command', 'add slash command',
6
+ 'create /feature-like command', 'write command template'."
7
+ ---
8
+ <!-- mustard:generated at:2026-03-25T00:00:00.000Z role:general -->
9
+
10
+ # Command Authoring Pattern
11
+
12
+ Slash commands are SKILL.md files in `commands/mustard/{command-name}/SKILL.md` that define orchestrator behavior.
13
+
14
+ ## Pattern
15
+
16
+ ### File Convention
17
+ - Location: `commands/mustard/{command-name}/SKILL.md`
18
+ - No YAML frontmatter (commands are not auto-loaded by description)
19
+ - End with `ULTRATHINK` keyword **only for `/feature` and `/bugfix` commands** — do NOT add it to other commands
20
+
21
+ ### Structure
22
+
23
+ ```markdown
24
+ # /{command-name} - Title
25
+
26
+ > Advisory note (optional)
27
+
28
+ ## Trigger
29
+ `/{command-name} <args>`
30
+
31
+ ## Description
32
+ What the command does and when to use it.
33
+
34
+ ## Procedure / ## Action
35
+ Step-by-step process. Use:
36
+ - Tables for signal → action mappings
37
+ - Numbered steps for sequential flow
38
+ - Code blocks for bash commands
39
+ - `### Phase` headers for multi-phase pipelines
40
+
41
+ ## Rules
42
+ - Explicit constraints (NEVER, ALWAYS, MUST)
43
+ - Budget limits (max reads, max API calls)
44
+ - Delegation requirements
45
+ ```
46
+
47
+ > Note: Add `ULTRATHINK` at the end only for `/feature` and `/bugfix` commands. All other commands end after the last rule/section.
48
+
49
+ ### Key Rules
50
+ - Commands NEVER implement code directly — they orchestrate via Task tool
51
+ - Pipeline commands create spec files and pipeline state JSON
52
+ - Git commands read `mustard.json` for branch flow configuration
53
+ - Zero-confirmation: most commands execute without asking user
54
+
55
+ ### Command Categories
56
+
57
+ | Category | Examples | Characteristic |
58
+ |----------|----------|---------------|
59
+ | Pipeline | `/feature`, `/bugfix`, `/approve`, `/complete`, `/resume` | Multi-phase, creates spec, state tracking |
60
+ | Task | `/task-analyze`, `/task-review`, `/task-refactor` | Single delegation, no spec |
61
+ | Git | `/git sync`, `/git commit`, `/git push`, `/git merge` | Reads `mustard.json`, submodule-aware |
62
+ | Scan | `/scan`, `/scan-format` | Discovery + analysis + generation |
63
+ | Status | `/status`, `/validate` | Read-only, reporting |
64
+
65
+ ## Example
66
+
67
+ ```markdown
68
+ # /my-command - Do Something
69
+
70
+ ## Trigger
71
+ `/my-command <name>`
72
+
73
+ ## Procedure
74
+ 1. Read `.claude/pipeline-config.md` for agent config
75
+ 2. Dispatch Task agent with context
76
+ 3. Collect results and report
77
+
78
+ ## Rules
79
+ - NEVER implement code directly
80
+ - ALWAYS delegate via Task tool
81
+ - Budget: max 5 API calls
82
+ ```
83
+ Ref: `commands/mustard/feature/SKILL.md`, `commands/mustard/status/SKILL.md`
84
+
85
+ ## References
86
+
87
+ For full code examples with variants:
88
+ > Read `references/examples.md`
@@ -1,83 +1,83 @@
1
- <!-- mustard:generated at:2026-03-25T00:00:00.000Z role:general -->
2
- # Command Authoring Examples
3
-
4
- ## Example 1: Simple Status Command
5
-
6
- ```markdown
7
- # /status - Consolidated Status
8
-
9
- ## Trigger
10
- `/status`
11
-
12
- ## Description
13
- Shows consolidated project status.
14
-
15
- ## Information
16
- 1. **Git Status** — branch, modified files, pending push
17
- 2. **Pipeline** — active pipeline, current phase
18
- 3. **Build** — last validation result
19
- 4. **Entity Registry** — entity count, last update
20
-
21
- ULTRATHINK
22
- ```
23
- Ref: `commands/mustard/status/SKILL.md`
24
-
25
- ## Example 2: Pipeline Command (Feature)
26
-
27
- Key sections from the feature command:
28
-
29
- ```markdown
30
- # /feature - Feature Pipeline
31
-
32
- ## Trigger
33
- `/feature <feature-name>`
34
-
35
- ### ANALYZE Phase
36
- 1. Read `pipeline-config.md`
37
- 2. Read `entity-registry.json` via Grep
38
- 3. Determine layers from signals
39
-
40
- #### Scope Detection
41
- | Signal | Scope |
42
- |--------|-------|
43
- | 1-2 layers, ≤5 files | Light |
44
- | 3+ layers, 5+ files | Full |
45
-
46
- ### PLAN Phase
47
- Create `.claude/spec/active/{date}-{name}/spec.md`
48
-
49
- ## Rules
50
- - NEVER implement code in Full scope
51
- - ALWAYS create pipeline state at PLAN phase
52
- - Light scope + user chose "implement now" → EXECUTE inline
53
-
54
- ULTRATHINK
55
- ```
56
- Ref: `commands/mustard/feature/SKILL.md`
57
-
58
- ## Example 3: Git Command with Action Dispatch
59
-
60
- ```markdown
61
- # /git - Git Operations
62
-
63
- ## Trigger
64
- `/git <action>`
65
-
66
- ## Actions
67
- | Action | Description |
68
- |--------|-------------|
69
- | `sync` | Pull parent into current |
70
- | `commit` | Create commit (no push) |
71
- | `push` | Sync + commit + push |
72
-
73
- ## Step 0 — Resolve Parent
74
- cat mustard.json → match branch against flow patterns
75
-
76
- ## Behavior
77
- - ZERO confirmations
78
- - Minimize Bash calls — chain with &&
79
- - Submodules BEFORE parent
80
-
81
- ULTRATHINK
82
- ```
83
- Ref: `commands/mustard/git/SKILL.md`
1
+ <!-- mustard:generated at:2026-03-25T00:00:00.000Z role:general -->
2
+ # Command Authoring Examples
3
+
4
+ ## Example 1: Simple Status Command
5
+
6
+ ```markdown
7
+ # /status - Consolidated Status
8
+
9
+ ## Trigger
10
+ `/status`
11
+
12
+ ## Description
13
+ Shows consolidated project status.
14
+
15
+ ## Information
16
+ 1. **Git Status** — branch, modified files, pending push
17
+ 2. **Pipeline** — active pipeline, current phase
18
+ 3. **Build** — last validation result
19
+ 4. **Entity Registry** — entity count, last update
20
+
21
+ ULTRATHINK
22
+ ```
23
+ Ref: `commands/mustard/status/SKILL.md`
24
+
25
+ ## Example 2: Pipeline Command (Feature)
26
+
27
+ Key sections from the feature command:
28
+
29
+ ```markdown
30
+ # /feature - Feature Pipeline
31
+
32
+ ## Trigger
33
+ `/feature <feature-name>`
34
+
35
+ ### ANALYZE Phase
36
+ 1. Read `.claude/pipeline-config.md`
37
+ 2. Read `entity-registry.json` via Grep
38
+ 3. Determine layers from signals
39
+
40
+ #### Scope Detection
41
+ | Signal | Scope |
42
+ |--------|-------|
43
+ | 1-2 layers, ≤5 files | Light |
44
+ | 3+ layers, 5+ files | Full |
45
+
46
+ ### PLAN Phase
47
+ Create `.claude/spec/active/{date}-{name}/spec.md`
48
+
49
+ ## Rules
50
+ - NEVER implement code in Full scope
51
+ - ALWAYS create pipeline state at PLAN phase
52
+ - Light scope + user chose "implement now" → EXECUTE inline
53
+
54
+ ULTRATHINK
55
+ ```
56
+ Ref: `commands/mustard/feature/SKILL.md`
57
+
58
+ ## Example 3: Git Command with Action Dispatch
59
+
60
+ ```markdown
61
+ # /git - Git Operations
62
+
63
+ ## Trigger
64
+ `/git <action>`
65
+
66
+ ## Actions
67
+ | Action | Description |
68
+ |--------|-------------|
69
+ | `sync` | Pull parent into current |
70
+ | `commit` | Create commit (no push) |
71
+ | `push` | Sync + commit + push |
72
+
73
+ ## Step 0 — Resolve Parent
74
+ cat mustard.json → match branch against flow patterns
75
+
76
+ ## Behavior
77
+ - ZERO confirmations
78
+ - Minimize Bash calls — chain with &&
79
+ - Submodules BEFORE parent
80
+
81
+ ULTRATHINK
82
+ ```
83
+ Ref: `commands/mustard/git/SKILL.md`
@@ -87,4 +87,4 @@ RTK (Rust Token Killer) is integrated as core infrastructure. A PreToolUse hook
87
87
  - If RTK is not installed, the hook silently passes through (zero impact)
88
88
 
89
89
  ## Full Reference
90
- Rules, pipeline, naming: `pipeline-config.md`
90
+ Rules, pipeline, naming: `.claude/pipeline-config.md`
@@ -18,7 +18,7 @@ Approves the active spec and prepares the implementation phase. Does NOT execute
18
18
  1. **Step 0: AUTO-SYNC (MANDATORY)** — Run via Bash tool BEFORE any other action:
19
19
  - `node .claude/scripts/sync-registry.js`
20
20
  - Do NOT proceed to step 2 without running this command
21
- 2. **Read** `pipeline-config.md` — agents, model selection
21
+ 2. **Read** `.claude/pipeline-config.md` — agents, model selection
22
22
  3. Locate active spec in `.claude/spec/active/`
23
23
  4. **Spec Checkpoint — update spec header:**
24
24
  - `### Status: approved`
@@ -29,7 +29,7 @@ Approves the active spec and prepares the implementation phase. Does NOT execute
29
29
  - Parse Tasks from spec to extract tasks per agent (DB, Backend, Frontend, etc.)
30
30
  - Create `.claude/.pipeline-states/` directory if it doesn't exist
31
31
  - Write state file with `specName`, `status: "approved"`, `phaseName: "PLAN"`, `tasks` with names and agents, `model`, `updatedAt`
32
- 6. **Model selection** — read `Model Selection` from `pipeline-config.md` and record `"model"` field in state:
32
+ 6. **Model selection** — read `Model Selection` from `.claude/pipeline-config.md` and record `"model"` field in state:
33
33
  - Count total estimated files in spec
34
34
  - Apply rule: ≤5 files/known patterns → `"model": "sonnet"`, 5+ files/new patterns → `"model": "opus"`
35
35
  7. **Task Tracking — create TaskCreate for each agent:**
@@ -87,7 +87,7 @@ Rules:
87
87
  ### EXECUTE (fix + validate)
88
88
 
89
89
  Every agent prompt dispatched in Fast Path MUST include:
90
- `Return format cap: ≤50 lines. Apply compact Return Format from pipeline-config.md strictly.`
90
+ `Return format cap: ≤50 lines. Apply compact Return Format from .claude/pipeline-config.md strictly.`
91
91
 
92
92
  Dispatch bugfix agent with:
93
93
  - Root cause from ANALYZE
@@ -110,7 +110,7 @@ After the bugfix agent returns, check for an escalation status before closing:
110
110
  - `PARTIAL` — agent fixed some but not all reported issues; resume from the last incomplete fix step (max 2 retries)
111
111
  - `DEFERRED` — agent intentionally left a related issue unfixed with justification; confirm with user before closing
112
112
 
113
- See `pipeline-config.md` Escalation Statuses for the full status table.
113
+ See `.claude/pipeline-config.md` Escalation Statuses for the full status table.
114
114
 
115
115
  #### Retry Compact Advisory
116
116
  If an agent fails and requires >2 retry attempts during EXECUTE:
@@ -11,7 +11,7 @@ Finalizes the current pipeline, either completing or canceling.
11
11
  ## Verification Gate (MANDATORY)
12
12
 
13
13
  1. **Review completed**: Check pipeline state — review agent MUST have run and returned APPROVED. If not → dispatch review first (see resume.md step 19)
14
- 2. **Build passes**: run build command for each affected subproject (from pipeline-config.md)
14
+ 2. **Build passes**: run build command for each affected subproject (from .claude/pipeline-config.md)
15
15
  3. **Changes match spec**: each `[x]` corresponds to a real file
16
16
  4. **Zero CRITICAL issues**: review report shows zero CRITICAL violations (SOLID, design system, patterns, i18n, integration)
17
17
  5. **No regressions**: existing features still work
@@ -41,7 +41,7 @@ Before finalizing, scan the active spec for any `## Concerns` section written du
41
41
  - If all concerns are `CONCERN` or `DEFERRED` (non-blocking): note them and proceed
42
42
  - This step is a read-only scan — do NOT alter or dismiss concerns during CLOSE
43
43
 
44
- See `pipeline-config.md` Escalation Statuses for concern classification rules.
44
+ See `.claude/pipeline-config.md` Escalation Statuses for concern classification rules.
45
45
 
46
46
  ## Action
47
47
 
@@ -53,7 +53,7 @@ Prepend the following to EVERY subagent prompt dispatched during the pipeline:
53
53
 
54
54
  If the diff file is empty or missing, skip the Git State header entirely. Never dispatch an agent without attempting interpolation.
55
55
 
56
- 1. Read `pipeline-config.md` — agents, wave transitions, model selection
56
+ 1. Read `.claude/pipeline-config.md` — agents, wave transitions, model selection
57
57
  2. Read `entity-registry.json` via Grep for the specific entity name (e.g. `"Contract":`) — NEVER read the full JSON. Entity found? infer layers. Not found? all layers.
58
58
  3. Determine layers from signals:
59
59
 
@@ -166,13 +166,13 @@ Rules:
166
166
  When user chooses "Approve and implement now":
167
167
  1. Update spec: `Status: implementing`, `Phase: EXECUTE`
168
168
  Every agent prompt dispatched in Light scope MUST include:
169
- `Return format cap: ≤50 lines. Apply compact Return Format from pipeline-config.md strictly.`
169
+ `Return format cap: ≤50 lines. Apply compact Return Format from .claude/pipeline-config.md strictly.`
170
170
  2. Update pipeline state: `status: "implementing"`, `phase: 3`
171
- 3. Read `pipeline-config.md` for agent config. For `entity-registry.json`: Grep for specific entity block only
171
+ 3. Read `.claude/pipeline-config.md` for agent config. For `entity-registry.json`: Grep for specific entity block only
172
172
  4. Match recipes by title via Grep on `{subproject}/.claude/commands/recipes.md` — do NOT read full file. Extract recipe number + pattern refs
173
173
  5. Identify relevant skills for `{recommended_skills}`: list skill names most relevant to the task (e.g., `api-endpoint-wiring, api-dto-validation`). Agents use these as hints — Claude natively decides which to load based on descriptions
174
- 6. Dispatch agents (wave rules: DB+Backend parallel, Frontend after Backend UNLESS spec marks task as `(parallel-safe)` — see `pipeline-config.md` Parallel Rules). Agent prompt includes `{recommended_skills}` as skill hints — agents read SKILL.md of relevant skills before implementing
175
- 7. Wave transitions between waves (from `pipeline-config.md`)
174
+ 6. Dispatch agents (wave rules: DB+Backend parallel, Frontend after Backend UNLESS spec marks task as `(parallel-safe)` — see `.claude/pipeline-config.md` Parallel Rules). Agent prompt includes `{recommended_skills}` as skill hints — agents read SKILL.md of relevant skills before implementing
175
+ 7. Wave transitions between waves (from `.claude/pipeline-config.md`)
176
176
  8. On return: validate (build/type-check), update spec `[ ]` → `[x]` (line-by-line edits, NEVER copy entire spec blocks as old_string)
177
177
  8b. **Agent Memory:** After agents return and spec is updated, write agent memory: `node .claude/scripts/memory-write.js --json '{"agent_type":"{type}","wave":{N},"pipeline":"{spec-name}","summary":"{what agent did}","details":{...}}'` — one per agent. Skip if single-wave pipeline (no downstream agents to benefit).
178
178
 
@@ -186,7 +186,7 @@ After each agent returns, check the return value for an escalation status before
186
186
  - `PARTIAL` — apply Granular Retry Protocol from the last completed step; do NOT restart from step 1
187
187
  - `DEFERRED` — note in spec with agent justification; ask user if the deferred item is load-bearing before closing
188
188
 
189
- If two or more agents in the same wave return `CONCERN`, surface all concerns together before starting the next wave. See `pipeline-config.md` Escalation Statuses and Diagnostic Failure Routing for the full status table.
189
+ If two or more agents in the same wave return `CONCERN`, surface all concerns together before starting the next wave. See `.claude/pipeline-config.md` Escalation Statuses and Diagnostic Failure Routing for the full status table.
190
190
 
191
191
  9. **REVIEW** — dispatch review agent for each affected subproject (reads guards + relevant skills, runs 7-category checklist: SOLID, Design System, Patterns, i18n, Integration, Build, Elegance). REJECTED → fix + re-review (max 2 loops)
192
192
  10. All passed + APPROVED → CLOSE flow inline (sync registry, move spec, cleanup state)
@@ -208,13 +208,13 @@ Progress: `[v] ANALYZE [>] PLAN [ ] EXECUTE [ ] CLOSE`
208
208
  Scope tag: `[LIGHT]` or `[FULL]` after progress line.
209
209
 
210
210
  ## Rules
211
- - This command is self-contained — reads `pipeline-config.md` directly
211
+ - This command is self-contained — reads `.claude/pipeline-config.md` directly
212
212
  - NEVER implement code in Full scope — only PLAN. EXECUTE via `/approve` + `/resume`
213
213
  - NEVER launch Explore agent when entity already exists in registry — read 2-3 files directly
214
214
  - NEVER read additional files after Explore agent returns — its output is final
215
215
  - NEVER exceed 5 file reads in ANALYZE phase (registry + pipeline-config are free)
216
216
  - Light scope + user chose "implement now" → proceed to EXECUTE inline
217
- - ALWAYS read `pipeline-config.md` for agent/wave/model info
217
+ - ALWAYS read `.claude/pipeline-config.md` for agent/wave/model info
218
218
  - ALWAYS create pipeline state at PLAN phase
219
219
  - ALWAYS record `scope` in spec header AND pipeline state
220
220
  - ALWAYS go straight to PLAN once you understand the change — more reads ≠ better spec
@@ -103,7 +103,7 @@ Manages persistent project observations injected into agent context during pipel
103
103
  | (no argument) | — | Lists all notes files |
104
104
  | `{subproject}` | `{subproject}/.claude/commands/notes.md` | Subproject agent context |
105
105
 
106
- **Monorepo**: discover targets from `pipeline-config.md` Agents table or Glob `*/.claude/commands/notes.md`.
106
+ **Monorepo**: discover targets from `.claude/pipeline-config.md` Agents table or Glob `*/.claude/commands/notes.md`.
107
107
  **Single repo**: target is root → `.claude/commands/notes.md`.
108
108
 
109
109
  ### Flow — List (`/knowledge notes`)
@@ -1,68 +1,68 @@
1
- # /maint - Maintenance Utilities
2
-
3
- > Dependencies, build validation, and registry sync.
4
-
5
- ## Trigger
6
-
7
- `/maint <action>`
8
-
9
- ## Actions
10
-
11
- | Action | Description |
12
- |--------|-------------|
13
- | `deps` | Install dependencies for all projects |
14
- | `validate` | Run build and type-check validations |
15
- | `sync` | Update entity-registry.json from code |
16
-
17
- ---
18
-
19
- ## deps
20
-
21
- Installs dependencies. Monorepo: runs in all subprojects. Single repo: runs in root.
22
-
23
- ### Flow
24
-
25
- 1. Read `pipeline-config.md` → extract `Agents` table for subproject paths and install commands
26
- 2. For each subproject (or root if single repo), run the restore/install command from `## Commands` in `{subproject}/CLAUDE.md`
27
- 3. Run all in parallel
28
-
29
- **Single repo**: read root `CLAUDE.md` → `## Commands` → run the install/restore command.
30
-
31
- ---
32
-
33
- ## validate
34
-
35
- Runs build and type-check validations.
36
-
37
- ### Flow
38
-
39
- 1. Read `pipeline-config.md` → extract `Agents` table for validate/build commands
40
- 2. For each subproject (or root if single repo), run the build/type-check command from `{subproject}/CLAUDE.md` → `## Commands`
41
- 3. Run all in parallel
42
-
43
- ### Result
44
-
45
- - **Success** — project compiles and passes type-check
46
- - **Failure** — lists errors found
47
-
48
- **Single repo**: read root `CLAUDE.md` → `## Commands` → run the build command.
49
-
50
- ---
51
-
52
- ## sync
53
-
54
- Scans the project and updates `.claude/entity-registry.json`.
55
-
56
- ### Flow
57
-
58
- 1. `node .claude/scripts/sync-registry.js`
59
- 2. If script not found, scan manually:
60
- - Search database schemas (EF Core `DbSet<T>`, Drizzle `pgTable()`, Prisma `model`, etc.)
61
- - Build entity map with relationships
62
- - Update `.claude/entity-registry.json`
63
-
64
- ### When to Use
65
-
66
- - After creating new entity
67
- - After importing existing code
68
- - To sync after manual changes
1
+ # /maint - Maintenance Utilities
2
+
3
+ > Dependencies, build validation, and registry sync.
4
+
5
+ ## Trigger
6
+
7
+ `/maint <action>`
8
+
9
+ ## Actions
10
+
11
+ | Action | Description |
12
+ |--------|-------------|
13
+ | `deps` | Install dependencies for all projects |
14
+ | `validate` | Run build and type-check validations |
15
+ | `sync` | Update entity-registry.json from code |
16
+
17
+ ---
18
+
19
+ ## deps
20
+
21
+ Installs dependencies. Monorepo: runs in all subprojects. Single repo: runs in root.
22
+
23
+ ### Flow
24
+
25
+ 1. Read `.claude/pipeline-config.md` → extract `Agents` table for subproject paths and install commands
26
+ 2. For each subproject (or root if single repo), run the restore/install command from `## Commands` in `{subproject}/CLAUDE.md`
27
+ 3. Run all in parallel
28
+
29
+ **Single repo**: read root `CLAUDE.md` → `## Commands` → run the install/restore command.
30
+
31
+ ---
32
+
33
+ ## validate
34
+
35
+ Runs build and type-check validations.
36
+
37
+ ### Flow
38
+
39
+ 1. Read `.claude/pipeline-config.md` → extract `Agents` table for validate/build commands
40
+ 2. For each subproject (or root if single repo), run the build/type-check command from `{subproject}/CLAUDE.md` → `## Commands`
41
+ 3. Run all in parallel
42
+
43
+ ### Result
44
+
45
+ - **Success** — project compiles and passes type-check
46
+ - **Failure** — lists errors found
47
+
48
+ **Single repo**: read root `CLAUDE.md` → `## Commands` → run the build command.
49
+
50
+ ---
51
+
52
+ ## sync
53
+
54
+ Scans the project and updates `.claude/entity-registry.json`.
55
+
56
+ ### Flow
57
+
58
+ 1. `node .claude/scripts/sync-registry.js`
59
+ 2. If script not found, scan manually:
60
+ - Search database schemas (EF Core `DbSet<T>`, Drizzle `pgTable()`, Prisma `model`, etc.)
61
+ - Build entity map with relationships
62
+ - Update `.claude/entity-registry.json`
63
+
64
+ ### When to Use
65
+
66
+ - After creating new entity
67
+ - After importing existing code
68
+ - To sync after manual changes
@@ -87,7 +87,7 @@ Before the normal detect-and-confirm flow, scan the newest pipeline state for a
87
87
  ### Diff Context (automatic)
88
88
  Run `node .claude/scripts/diff-context.js` to capture the current git state. Include the output in the agent prompt as `{diff_context}` so agents know what has already changed.
89
89
 
90
- 7. **Read** `pipeline-config.md`. For `entity-registry.json`: use Grep to extract ONLY the relevant entity block (e.g. `"Contract":`), NEVER read the full JSON
90
+ 7. **Read** `.claude/pipeline-config.md`. For `entity-registry.json`: use Grep to extract ONLY the relevant entity block (e.g. `"Contract":`), NEVER read the full JSON
91
91
  9. **Update spec header:** `Status: implementing`, `Phase: EXECUTE`, `Checkpoint: {ISO now}`
92
92
  10. **Update/create pipeline state:** `status: "implementing"`, `phaseName: "EXECUTE"`, `specName`
93
93
  11. **TaskCreate** — 1 per pending agent (skip completed)
@@ -97,9 +97,9 @@ Run `node .claude/scripts/diff-context.js` to capture the current git state. Inc
97
97
  **CRITICAL: Main context IS the Pipeline Runner. NEVER delegate to intermediate Task agent.**
98
98
 
99
99
  12. **Match recipe by name only:** Grep `{subproject}/.claude/commands/recipes.md` for recipe title matching the task type — do NOT read the full recipes file. Extract only: recipe number, pattern refs, reference modules
100
- 13. **Plan waves:** `Depends on: none` → Wave 1; dependencies → later. DB+Backend parallel. Frontend after Backend UNLESS all parallel override conditions met (see `pipeline-config.md` Parallel Rules). Review agents: ALWAYS dispatch in single parallel message. Skip completed tasks.
100
+ 13. **Plan waves:** `Depends on: none` → Wave 1; dependencies → later. DB+Backend parallel. Frontend after Backend UNLESS all parallel override conditions met (see `.claude/pipeline-config.md` Parallel Rules). Review agents: ALWAYS dispatch in single parallel message. Skip completed tasks.
101
101
  14. **Build agent prompts using template** (`.claude/commands/mustard/templates/agent-prompt/SKILL.md`):
102
- - Read template once, then fill placeholders per agent using `pipeline-config.md` data:
102
+ - Read template once, then fill placeholders per agent using `.claude/pipeline-config.md` data:
103
103
  - `{subproject}` → from Agents table (Subproject column)
104
104
  - `{reference_files}` → 2-3 files from matched recipe
105
105
  - `{guards_summary}` → key guards from `{subproject}/CLAUDE.md`
@@ -108,12 +108,12 @@ Run `node .claude/scripts/diff-context.js` to capture the current git state. Inc
108
108
  - `{validate_command}`, `{build_command}` → from Agents table in config
109
109
  - `{retry_context}` → empty on first dispatch (see Step 4 for retries)
110
110
  - `{task_steps}` → checkboxed steps from spec
111
- - `{recommended_skills}` → from Skill Recommendations in `pipeline-config.md`:
111
+ - `{recommended_skills}` → from Skill Recommendations in `.claude/pipeline-config.md`:
112
112
  1. Glob `{subproject}/.claude/skills/` for generated pattern skills
113
113
  2. Add foundation skills matching the role (ui→design-craft+react-best-practices, mobile→design-craft)
114
114
  3. Format as bullet list: `- {skill-name}`
115
115
 
116
- 16. **Wave transitions** — between waves, execute transitions from `pipeline-config.md`:
116
+ 16. **Wave transitions** — between waves, execute transitions from `.claude/pipeline-config.md`:
117
117
  - After Wave 1 (api/database/library) completes, before Wave 2 (ui):
118
118
  - Execute each command listed in the matching `Wave Transitions` section
119
119
  - Wait for transitions to complete before dispatching next wave
@@ -136,7 +136,7 @@ After each agent returns, check the return value for an escalation status before
136
136
  - `PARTIAL` — apply Granular Retry Protocol from the last completed step; do NOT restart from step 1
137
137
  - `DEFERRED` — note in spec with agent justification; ask user if the deferred item is load-bearing before closing
138
138
 
139
- If two or more agents in the same wave return `CONCERN`, surface all concerns together before dispatching the next wave. See `pipeline-config.md` Escalation Statuses and Diagnostic Failure Routing for the full status table.
139
+ If two or more agents in the same wave return `CONCERN`, surface all concerns together before dispatching the next wave. See `.claude/pipeline-config.md` Escalation Statuses and Diagnostic Failure Routing for the full status table.
140
140
 
141
141
  ### Step 4: Validate, Review & Complete
142
142
 
@@ -206,6 +206,6 @@ This eliminates decision fatigue on resume. The user can always override, but th
206
206
  - Wave dispatch: ALL agents in same wave in a SINGLE message
207
207
  - Each sub-agent reads its own `{subproject}/CLAUDE.md` + auto-loads relevant skills (orchestrator does NOT read them)
208
208
  - Update pipeline state + spec checkboxes at each transition
209
- - ALWAYS read `pipeline-config.md` for agent/wave/model config — NEVER hardcode project-specific values
209
+ - ALWAYS read `.claude/pipeline-config.md` for agent/wave/model config — NEVER hardcode project-specific values
210
210
  - ALWAYS use agent-prompt template — NEVER build prompts from scratch
211
211
  - ALWAYS execute wave transitions between waves
@@ -112,10 +112,10 @@ You do NOT implement code — you delegate via Task tool.
112
112
  | Simple | config, docs, small refactor, rename, move | Delegate via Task |
113
113
 
114
114
  Any change that touches production code (schema, API, UI) → Pipeline Feature.
115
- Read `pipeline-config.md` for agent dispatch rules.
115
+ Read `.claude/pipeline-config.md` for agent dispatch rules.
116
116
 
117
117
  ## Full Reference
118
- Rules, pipeline, naming: `pipeline-config.md`
118
+ Rules, pipeline, naming: `.claude/pipeline-config.md`
119
119
  ```
120
120
 
121
121
  **Root `CLAUDE.md`** — project map from detected subprojects:
@@ -98,7 +98,7 @@ After generating command files, update the subproject's `CLAUDE.md`:
98
98
  - If `## Guards` section exists, update with key guards from analysis
99
99
  - If `## Stack` is empty, fill from detected stack
100
100
  - **`## Commands` section MUST include ALL detected tooling commands** — not just build/run. Include migration commands, code generation, seeding, testing, linting. Every command an agent might need to execute. If tooling detection (step 3) found commands, they MUST appear here.
101
- - **`## Recommended Skills`** — list generated pattern skills (`{subproject}-patterns-*`) + matching foundation skills from `pipeline-config.md` Skill Recommendations table. This section informs agents which skills to consult before implementation.
101
+ - **`## Recommended Skills`** — list generated pattern skills (`{subproject}-patterns-*`) + matching foundation skills from `.claude/pipeline-config.md` Skill Recommendations table. This section informs agents which skills to consult before implementation.
102
102
 
103
103
  ## 8. Implementation Recipes
104
104
 
@@ -111,7 +111,7 @@ Steps: update spec → summarize failure → Explore → rewrite tasks → re-ap
111
111
 
112
112
  ## Role Rules
113
113
 
114
- > See `pipeline-config.md § Role Rules` for role boundaries and validation rules.
114
+ > See `.claude/pipeline-config.md § Role Rules` for role boundaries and validation rules.
115
115
 
116
116
  ## Pipeline Bugfix
117
117