aiwcli 0.12.3 → 0.12.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.
Files changed (125) hide show
  1. package/bin/dev.cmd +3 -3
  2. package/bin/dev.js +16 -16
  3. package/bin/run.cmd +3 -3
  4. package/bin/run.js +21 -21
  5. package/dist/commands/branch.js +7 -2
  6. package/dist/lib/bmad-installer.js +37 -37
  7. package/dist/lib/terminal.d.ts +2 -0
  8. package/dist/lib/terminal.js +57 -7
  9. package/dist/templates/CLAUDE.md +205 -205
  10. package/dist/templates/_shared/.claude/commands/handoff-resume.md +12 -64
  11. package/dist/templates/_shared/.claude/commands/handoff.md +12 -198
  12. package/dist/templates/_shared/.claude/settings.json +65 -65
  13. package/dist/templates/_shared/.codex/workflows/handoff.md +226 -226
  14. package/dist/templates/_shared/.windsurf/workflows/handoff.md +226 -226
  15. package/dist/templates/_shared/handoff-system/CLAUDE.md +421 -0
  16. package/dist/templates/_shared/{lib-ts/handoff → handoff-system/lib}/document-generator.ts +215 -216
  17. package/dist/templates/_shared/{lib-ts/handoff → handoff-system/lib}/handoff-reader.ts +157 -158
  18. package/dist/templates/_shared/{scripts → handoff-system/scripts}/resume_handoff.ts +373 -373
  19. package/dist/templates/_shared/{scripts → handoff-system/scripts}/save_handoff.ts +469 -358
  20. package/dist/templates/_shared/handoff-system/workflows/handoff-resume.md +66 -0
  21. package/dist/templates/_shared/{workflows → handoff-system/workflows}/handoff.md +254 -254
  22. package/dist/templates/_shared/hooks-ts/_utils/git-state.ts +2 -2
  23. package/dist/templates/_shared/hooks-ts/archive_plan.ts +159 -159
  24. package/dist/templates/_shared/hooks-ts/context_monitor.ts +147 -147
  25. package/dist/templates/_shared/hooks-ts/file-suggestion.ts +128 -128
  26. package/dist/templates/_shared/hooks-ts/pre_compact.ts +49 -49
  27. package/dist/templates/_shared/hooks-ts/session_end.ts +196 -183
  28. package/dist/templates/_shared/hooks-ts/session_start.ts +163 -151
  29. package/dist/templates/_shared/hooks-ts/task_create_capture.ts +48 -48
  30. package/dist/templates/_shared/hooks-ts/task_update_capture.ts +74 -74
  31. package/dist/templates/_shared/hooks-ts/user_prompt_submit.ts +93 -93
  32. package/dist/templates/_shared/lib-ts/CLAUDE.md +367 -367
  33. package/dist/templates/_shared/lib-ts/base/atomic-write.ts +138 -138
  34. package/dist/templates/_shared/lib-ts/base/constants.ts +303 -303
  35. package/dist/templates/_shared/lib-ts/base/git-state.ts +58 -58
  36. package/dist/templates/_shared/lib-ts/base/hook-utils.ts +582 -582
  37. package/dist/templates/_shared/lib-ts/base/inference.ts +301 -301
  38. package/dist/templates/_shared/lib-ts/base/logger.ts +247 -247
  39. package/dist/templates/_shared/lib-ts/base/state-io.ts +202 -130
  40. package/dist/templates/_shared/lib-ts/base/stop-words.ts +184 -184
  41. package/dist/templates/_shared/lib-ts/base/subprocess-utils.ts +56 -0
  42. package/dist/templates/_shared/lib-ts/base/utils.ts +184 -184
  43. package/dist/templates/_shared/lib-ts/context/context-formatter.ts +566 -560
  44. package/dist/templates/_shared/lib-ts/context/context-selector.ts +524 -515
  45. package/dist/templates/_shared/lib-ts/context/context-store.ts +712 -668
  46. package/dist/templates/_shared/lib-ts/context/plan-manager.ts +312 -312
  47. package/dist/templates/_shared/lib-ts/context/task-tracker.ts +185 -185
  48. package/dist/templates/_shared/lib-ts/package.json +20 -20
  49. package/dist/templates/_shared/lib-ts/templates/formatters.ts +102 -102
  50. package/dist/templates/_shared/lib-ts/templates/plan-context.ts +58 -58
  51. package/dist/templates/_shared/lib-ts/tsconfig.json +13 -13
  52. package/dist/templates/_shared/lib-ts/types.ts +186 -180
  53. package/dist/templates/_shared/scripts/resolve_context.ts +33 -33
  54. package/dist/templates/_shared/scripts/status_line.ts +690 -690
  55. package/dist/templates/cc-native/.claude/commands/{rlm → cc-native/rlm}/ask.md +136 -136
  56. package/dist/templates/cc-native/.claude/commands/{rlm → cc-native/rlm}/index.md +21 -21
  57. package/dist/templates/cc-native/.claude/commands/{rlm → cc-native/rlm}/overview.md +56 -56
  58. package/dist/templates/cc-native/.claude/commands/cc-native/specdev.md +10 -10
  59. package/dist/templates/cc-native/.windsurf/workflows/cc-native/fix.md +8 -8
  60. package/dist/templates/cc-native/.windsurf/workflows/cc-native/implement.md +8 -8
  61. package/dist/templates/cc-native/.windsurf/workflows/cc-native/research.md +8 -8
  62. package/dist/templates/cc-native/CC-NATIVE-README.md +189 -189
  63. package/dist/templates/cc-native/TEMPLATE-SCHEMA.md +304 -304
  64. package/dist/templates/cc-native/_cc-native/agents/CLAUDE.md +143 -143
  65. package/dist/templates/cc-native/_cc-native/agents/PLAN-ORCHESTRATOR.md +213 -213
  66. package/dist/templates/cc-native/_cc-native/agents/plan-questions/PLAN-QUESTIONER.md +70 -70
  67. package/dist/templates/cc-native/_cc-native/cc-native.config.json +96 -96
  68. package/dist/templates/cc-native/_cc-native/hooks/CLAUDE.md +247 -247
  69. package/dist/templates/cc-native/_cc-native/hooks/cc-native-plan-review.ts +76 -76
  70. package/dist/templates/cc-native/_cc-native/hooks/enhance_plan_post_subagent.ts +54 -54
  71. package/dist/templates/cc-native/_cc-native/hooks/enhance_plan_post_write.ts +51 -51
  72. package/dist/templates/cc-native/_cc-native/hooks/mark_questions_asked.ts +53 -53
  73. package/dist/templates/cc-native/_cc-native/hooks/plan_questions_early.ts +61 -61
  74. package/dist/templates/cc-native/_cc-native/lib-ts/agent-selection.ts +163 -163
  75. package/dist/templates/cc-native/_cc-native/lib-ts/aggregate-agents.ts +156 -156
  76. package/dist/templates/cc-native/_cc-native/lib-ts/artifacts/format.ts +597 -597
  77. package/dist/templates/cc-native/_cc-native/lib-ts/artifacts/index.ts +26 -26
  78. package/dist/templates/cc-native/_cc-native/lib-ts/artifacts/tracker.ts +107 -107
  79. package/dist/templates/cc-native/_cc-native/lib-ts/artifacts/write.ts +119 -119
  80. package/dist/templates/cc-native/_cc-native/lib-ts/artifacts.ts +21 -21
  81. package/dist/templates/cc-native/_cc-native/lib-ts/cc-native-state.ts +319 -319
  82. package/dist/templates/cc-native/_cc-native/lib-ts/cli-output-parser.ts +144 -144
  83. package/dist/templates/cc-native/_cc-native/lib-ts/config.ts +57 -57
  84. package/dist/templates/cc-native/_cc-native/lib-ts/constants.ts +83 -83
  85. package/dist/templates/cc-native/_cc-native/lib-ts/corroboration.ts +119 -119
  86. package/dist/templates/cc-native/_cc-native/lib-ts/debug.ts +79 -79
  87. package/dist/templates/cc-native/_cc-native/lib-ts/graduation.ts +132 -132
  88. package/dist/templates/cc-native/_cc-native/lib-ts/index.ts +116 -116
  89. package/dist/templates/cc-native/_cc-native/lib-ts/json-parser.ts +168 -168
  90. package/dist/templates/cc-native/_cc-native/lib-ts/orchestrator.ts +70 -70
  91. package/dist/templates/cc-native/_cc-native/lib-ts/output-builder.ts +130 -130
  92. package/dist/templates/cc-native/_cc-native/lib-ts/plan-discovery.ts +80 -80
  93. package/dist/templates/cc-native/_cc-native/lib-ts/plan-enhancement.ts +41 -41
  94. package/dist/templates/cc-native/_cc-native/lib-ts/plan-questions.ts +101 -101
  95. package/dist/templates/cc-native/_cc-native/lib-ts/review-pipeline.ts +511 -511
  96. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/agent.ts +71 -71
  97. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/base/base-agent.ts +217 -217
  98. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/index.ts +12 -12
  99. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/providers/claude-agent.ts +66 -65
  100. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/providers/codex-agent.ts +184 -184
  101. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/providers/gemini-agent.ts +39 -39
  102. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/providers/orchestrator-claude-agent.ts +196 -195
  103. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/schemas.ts +201 -201
  104. package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/types.ts +21 -21
  105. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/CLAUDE.md +480 -480
  106. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/embedding-indexer.ts +287 -287
  107. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/hyde.ts +148 -148
  108. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/index.ts +54 -54
  109. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/logger.ts +58 -58
  110. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/ollama-client.ts +208 -208
  111. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/retrieval-pipeline.ts +460 -460
  112. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/transcript-indexer.ts +446 -447
  113. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/transcript-loader.ts +280 -280
  114. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/transcript-searcher.ts +274 -274
  115. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/types.ts +201 -201
  116. package/dist/templates/cc-native/_cc-native/lib-ts/rlm/vector-store.ts +278 -278
  117. package/dist/templates/cc-native/_cc-native/lib-ts/settings.ts +184 -184
  118. package/dist/templates/cc-native/_cc-native/lib-ts/state.ts +275 -275
  119. package/dist/templates/cc-native/_cc-native/lib-ts/tsconfig.json +18 -18
  120. package/dist/templates/cc-native/_cc-native/lib-ts/types.ts +329 -329
  121. package/dist/templates/cc-native/_cc-native/lib-ts/verdict.ts +72 -72
  122. package/dist/templates/cc-native/_cc-native/workflows/specdev.md +9 -9
  123. package/oclif.manifest.json +1 -1
  124. package/package.json +108 -108
  125. package/dist/templates/cc-native/_cc-native/lib-ts/nul +0 -3
@@ -1,143 +1,143 @@
1
- # CC-Native Plan Review Agents
2
-
3
- Agent persona definitions for single-turn plan review. 31 review agents + 1 question agent.
4
-
5
- ## Directory Structure
6
-
7
- ```
8
- agents/
9
- ├── CLAUDE.md # This file
10
- ├── PLAN-ORCHESTRATOR.md # Complexity/agent selection orchestrator
11
- ├── plan-review/ # Review agents (31 files)
12
- │ ├── HANDOFF-READINESS.md
13
- │ ├── CLARITY-AUDITOR.md
14
- │ ├── SKEPTIC.md
15
- │ ├── ... # All review agent .md files
16
- │ └── TESTDRIVEN-CHARACTERIZATION.md
17
- └── plan-questions/ # Question generation agents
18
- └── PLAN-QUESTIONER.md # Fresh-context question generator
19
- ```
20
-
21
- **Important:** Review agents MUST be in `plan-review/`. The hook loads from `agents/plan-review/` — files in the root `agents/` directory (other than CLAUDE.md and PLAN-ORCHESTRATOR.md) are ignored.
22
-
23
- ## Review Agents (31 total)
24
-
25
- 4 mandatory + 27 selectable (organized into 7 variation families + 7 standalone).
26
-
27
- ## Agent Roster (31 agents)
28
-
29
- ### Mandatory (4) — always run
30
- | Agent | Focus |
31
- |-------|-------|
32
- | `handoff-readiness` | Fresh context execution test |
33
- | `clarity-auditor` | Communication clarity |
34
- | `skeptic` | Problem-solution alignment, first-principles |
35
- | `documentation-philosophy` | Knowledge capture (medium+ only) |
36
-
37
- ### Risk Family (4 variations)
38
- | Agent | Framework | Categories |
39
- |-------|-----------|------------|
40
- | `risk-premortem` | Pre-mortem (Klein 2007) — assumes failure, generates narratives | all |
41
- | `risk-fmea` | FMEA — per-step severity×likelihood×detectability | code, infra, design |
42
- | `risk-dependency` | Blast radius / dependency graph — maps cascading chains | code, infra |
43
- | `risk-reversibility` | One-way doors / optionality — classifies decision reversibility | all |
44
-
45
- ### Completeness Family (3 variations)
46
- | Agent | Framework | Categories |
47
- |-------|-----------|------------|
48
- | `completeness-gaps` | Structural gap analysis — missing steps, error paths, pre/post-conditions | all |
49
- | `completeness-feasibility` | Feasibility — resource gaps, expertise, timeline realism | all |
50
- | `completeness-ordering` | Critical path / topological sort — step ordering, parallelization | code, infra, design |
51
-
52
- ### Architecture Family (3 variations)
53
- | Agent | Framework | Categories |
54
- |-------|-----------|------------|
55
- | `arch-structure` | Coupling/cohesion — boundary placement, dependency direction | code, infra, design |
56
- | `arch-evolution` | Evolutionary architecture — change amplification, extension points | code, infra, design |
57
- | `arch-patterns` | Pattern selection — technology fit, pattern-forcing detection | code, infra |
58
-
59
- ### Verification Family (2 variations)
60
- | Agent | Framework | Categories |
61
- |-------|-----------|------------|
62
- | `verify-coverage` | Coverage mapping — 1:1 implementation-to-verification | all |
63
- | `verify-strength` | Mutation testing — would tests catch subtle bugs? | code, infra |
64
-
65
- ### Trade-off Family (2 variations)
66
- | Agent | Framework | Categories |
67
- |-------|-----------|------------|
68
- | `tradeoff-costs` | Opportunity cost — hidden costs, capability sacrifice | all |
69
- | `tradeoff-stakeholders` | Stakeholder impact — who wins, who loses, asymmetry | all |
70
-
71
- ### Design Family (2 variations)
72
- | Agent | Framework | Categories |
73
- |-------|-----------|------------|
74
- | `design-adr-validator` | ADR structure — Context, Decision, Consequences, alternatives analysis | design, code, infra |
75
- | `design-scale-matcher` | Scale matching — design depth proportional to blast radius | design, code, infra |
76
-
77
- ### TestDriven Family (4 variations)
78
- | Agent | Framework | Categories |
79
- |-------|-----------|------------|
80
- | `testdriven-first-validator` | FIRST principles — Fast, Independent, Repeatable, Self-validating, Thorough | code, infra |
81
- | `testdriven-behavior-auditor` | Behavior contracts — tests verify WHAT not HOW | code, infra |
82
- | `testdriven-pyramid-analyzer` | Test pyramid — balanced distribution, fast feedback at base | code, infra |
83
- | `testdriven-characterization` | Characterization tests — safety nets before code modification | code, infra |
84
-
85
- ### Standalone Agents (7)
86
- | Agent | Focus | Categories |
87
- |-------|-------|------------|
88
- | `scope-boundary` | Scope drift detection | all |
89
- | `hidden-complexity` | Understated difficulty, "just" statements | all |
90
- | `simplicity-guardian` | Over-engineering, YAGNI | all |
91
- | `devils-advocate` | Contrarian, reductio ad absurdum | all |
92
- | `assumption-tracer` | Stacked assumption chains | all |
93
- | `incremental-delivery` | Vertical slicing, smaller increments | all |
94
- | `constraint-validator` | Constraint satisfaction | all |
95
-
96
- ## Design: Variation Families
97
-
98
- Each family covers the same topic area but through different analytical lenses. Same output format, different analytical identity. This follows the RedTeam pattern (32 agents with unique personalities on the same concern). The orchestrator selects the most relevant variation(s) per family based on plan context.
99
-
100
- ## System Prompt vs Agent Flag
101
-
102
- **Decision:** Use `--system-prompt` with markdown body content instead of `--agent <name>`
103
-
104
- **Rationale:**
105
- - Claude Code's `--agent` flag invokes built-in agents designed for multi-turn agentic workflows with tool access
106
- - Plan review needs single-turn text analysis: read plan, output structured JSON
107
- - The `--agent` flag ignores our custom markdown content entirely - it loads Claude Code's built-in agent definitions
108
- - Using `--system-prompt` lets us inject the full persona (expertise, review approach, output requirements) directly
109
- - Result: faster execution, no tool overhead, and our rich agent descriptions actually get used
110
-
111
- **Constraint:** If you switch back to `--agent`, the elaborate persona content in these markdown files will be ignored. The reviews will use Claude Code's generic agent behavior instead of our specialized reviewers.
112
-
113
- ## File Structure
114
-
115
- Each agent file has:
116
- - **Frontmatter (YAML):** name, model, focus, categories
117
- - **Body (Markdown):** Full persona content → becomes `system_prompt` for `--system-prompt` flag
118
-
119
- ## --setting-sources "" Requirement
120
-
121
- **Decision:** Use `--setting-sources ""` to disable user/project settings loading
122
-
123
- **Rationale:**
124
- - Without this flag, Claude Code loads user settings (~43k cached tokens of PAI context)
125
- - The PAI Algorithm instructions override the agent's system prompt behavior
126
- - Model tries to follow PAI format instead of calling StructuredOutput directly
127
- - Result: 6+ turns, 30+ seconds, often no structured output
128
-
129
- **Constraint:** If you remove `--setting-sources ""`, agent reviews will be slow and unreliable due to PAI context interference.
130
-
131
- ## --max-turns 3 Requirement
132
-
133
- **Decision:** Use `--max-turns 3` with agent invocations
134
-
135
- **Rationale:**
136
- - `--max-turns 1` is too restrictive - the model needs turn 1 to call StructuredOutput, turn 2 for the tool result
137
- - `--max-turns 2` works but leaves no buffer for edge cases
138
- - `--max-turns 3` gives safety margin while still preventing runaway multi-turn behavior
139
- - With these settings, reviews complete in ~5-10 seconds
140
-
141
- **Constraint:** The agent markdown files MUST contain clear instructions to "call StructuredOutput IMMEDIATELY" and "do NOT use any other tools". Without these instructions, the model will try to use its turns for file operations instead of outputting the review.
142
-
143
-
1
+ # CC-Native Plan Review Agents
2
+
3
+ Agent persona definitions for single-turn plan review. 31 review agents + 1 question agent.
4
+
5
+ ## Directory Structure
6
+
7
+ ```
8
+ agents/
9
+ ├── CLAUDE.md # This file
10
+ ├── PLAN-ORCHESTRATOR.md # Complexity/agent selection orchestrator
11
+ ├── plan-review/ # Review agents (31 files)
12
+ │ ├── HANDOFF-READINESS.md
13
+ │ ├── CLARITY-AUDITOR.md
14
+ │ ├── SKEPTIC.md
15
+ │ ├── ... # All review agent .md files
16
+ │ └── TESTDRIVEN-CHARACTERIZATION.md
17
+ └── plan-questions/ # Question generation agents
18
+ └── PLAN-QUESTIONER.md # Fresh-context question generator
19
+ ```
20
+
21
+ **Important:** Review agents MUST be in `plan-review/`. The hook loads from `agents/plan-review/` — files in the root `agents/` directory (other than CLAUDE.md and PLAN-ORCHESTRATOR.md) are ignored.
22
+
23
+ ## Review Agents (31 total)
24
+
25
+ 4 mandatory + 27 selectable (organized into 7 variation families + 7 standalone).
26
+
27
+ ## Agent Roster (31 agents)
28
+
29
+ ### Mandatory (4) — always run
30
+ | Agent | Focus |
31
+ |-------|-------|
32
+ | `handoff-readiness` | Fresh context execution test |
33
+ | `clarity-auditor` | Communication clarity |
34
+ | `skeptic` | Problem-solution alignment, first-principles |
35
+ | `documentation-philosophy` | Knowledge capture (medium+ only) |
36
+
37
+ ### Risk Family (4 variations)
38
+ | Agent | Framework | Categories |
39
+ |-------|-----------|------------|
40
+ | `risk-premortem` | Pre-mortem (Klein 2007) — assumes failure, generates narratives | all |
41
+ | `risk-fmea` | FMEA — per-step severity×likelihood×detectability | code, infra, design |
42
+ | `risk-dependency` | Blast radius / dependency graph — maps cascading chains | code, infra |
43
+ | `risk-reversibility` | One-way doors / optionality — classifies decision reversibility | all |
44
+
45
+ ### Completeness Family (3 variations)
46
+ | Agent | Framework | Categories |
47
+ |-------|-----------|------------|
48
+ | `completeness-gaps` | Structural gap analysis — missing steps, error paths, pre/post-conditions | all |
49
+ | `completeness-feasibility` | Feasibility — resource gaps, expertise, timeline realism | all |
50
+ | `completeness-ordering` | Critical path / topological sort — step ordering, parallelization | code, infra, design |
51
+
52
+ ### Architecture Family (3 variations)
53
+ | Agent | Framework | Categories |
54
+ |-------|-----------|------------|
55
+ | `arch-structure` | Coupling/cohesion — boundary placement, dependency direction | code, infra, design |
56
+ | `arch-evolution` | Evolutionary architecture — change amplification, extension points | code, infra, design |
57
+ | `arch-patterns` | Pattern selection — technology fit, pattern-forcing detection | code, infra |
58
+
59
+ ### Verification Family (2 variations)
60
+ | Agent | Framework | Categories |
61
+ |-------|-----------|------------|
62
+ | `verify-coverage` | Coverage mapping — 1:1 implementation-to-verification | all |
63
+ | `verify-strength` | Mutation testing — would tests catch subtle bugs? | code, infra |
64
+
65
+ ### Trade-off Family (2 variations)
66
+ | Agent | Framework | Categories |
67
+ |-------|-----------|------------|
68
+ | `tradeoff-costs` | Opportunity cost — hidden costs, capability sacrifice | all |
69
+ | `tradeoff-stakeholders` | Stakeholder impact — who wins, who loses, asymmetry | all |
70
+
71
+ ### Design Family (2 variations)
72
+ | Agent | Framework | Categories |
73
+ |-------|-----------|------------|
74
+ | `design-adr-validator` | ADR structure — Context, Decision, Consequences, alternatives analysis | design, code, infra |
75
+ | `design-scale-matcher` | Scale matching — design depth proportional to blast radius | design, code, infra |
76
+
77
+ ### TestDriven Family (4 variations)
78
+ | Agent | Framework | Categories |
79
+ |-------|-----------|------------|
80
+ | `testdriven-first-validator` | FIRST principles — Fast, Independent, Repeatable, Self-validating, Thorough | code, infra |
81
+ | `testdriven-behavior-auditor` | Behavior contracts — tests verify WHAT not HOW | code, infra |
82
+ | `testdriven-pyramid-analyzer` | Test pyramid — balanced distribution, fast feedback at base | code, infra |
83
+ | `testdriven-characterization` | Characterization tests — safety nets before code modification | code, infra |
84
+
85
+ ### Standalone Agents (7)
86
+ | Agent | Focus | Categories |
87
+ |-------|-------|------------|
88
+ | `scope-boundary` | Scope drift detection | all |
89
+ | `hidden-complexity` | Understated difficulty, "just" statements | all |
90
+ | `simplicity-guardian` | Over-engineering, YAGNI | all |
91
+ | `devils-advocate` | Contrarian, reductio ad absurdum | all |
92
+ | `assumption-tracer` | Stacked assumption chains | all |
93
+ | `incremental-delivery` | Vertical slicing, smaller increments | all |
94
+ | `constraint-validator` | Constraint satisfaction | all |
95
+
96
+ ## Design: Variation Families
97
+
98
+ Each family covers the same topic area but through different analytical lenses. Same output format, different analytical identity. This follows the RedTeam pattern (32 agents with unique personalities on the same concern). The orchestrator selects the most relevant variation(s) per family based on plan context.
99
+
100
+ ## System Prompt vs Agent Flag
101
+
102
+ **Decision:** Use `--system-prompt` with markdown body content instead of `--agent <name>`
103
+
104
+ **Rationale:**
105
+ - Claude Code's `--agent` flag invokes built-in agents designed for multi-turn agentic workflows with tool access
106
+ - Plan review needs single-turn text analysis: read plan, output structured JSON
107
+ - The `--agent` flag ignores our custom markdown content entirely - it loads Claude Code's built-in agent definitions
108
+ - Using `--system-prompt` lets us inject the full persona (expertise, review approach, output requirements) directly
109
+ - Result: faster execution, no tool overhead, and our rich agent descriptions actually get used
110
+
111
+ **Constraint:** If you switch back to `--agent`, the elaborate persona content in these markdown files will be ignored. The reviews will use Claude Code's generic agent behavior instead of our specialized reviewers.
112
+
113
+ ## File Structure
114
+
115
+ Each agent file has:
116
+ - **Frontmatter (YAML):** name, model, focus, categories
117
+ - **Body (Markdown):** Full persona content → becomes `system_prompt` for `--system-prompt` flag
118
+
119
+ ## --setting-sources "" Requirement
120
+
121
+ **Decision:** Use `--setting-sources ""` to disable user/project settings loading
122
+
123
+ **Rationale:**
124
+ - Without this flag, Claude Code loads user settings (~43k cached tokens of PAI context)
125
+ - The PAI Algorithm instructions override the agent's system prompt behavior
126
+ - Model tries to follow PAI format instead of calling StructuredOutput directly
127
+ - Result: 6+ turns, 30+ seconds, often no structured output
128
+
129
+ **Constraint:** If you remove `--setting-sources ""`, agent reviews will be slow and unreliable due to PAI context interference.
130
+
131
+ ## --max-turns 3 Requirement
132
+
133
+ **Decision:** Use `--max-turns 3` with agent invocations
134
+
135
+ **Rationale:**
136
+ - `--max-turns 1` is too restrictive - the model needs turn 1 to call StructuredOutput, turn 2 for the tool result
137
+ - `--max-turns 2` works but leaves no buffer for edge cases
138
+ - `--max-turns 3` gives safety margin while still preventing runaway multi-turn behavior
139
+ - With these settings, reviews complete in ~5-10 seconds
140
+
141
+ **Constraint:** The agent markdown files MUST contain clear instructions to "call StructuredOutput IMMEDIATELY" and "do NOT use any other tools". Without these instructions, the model will try to use its turns for file operations instead of outputting the review.
142
+
143
+