konductor 0.13.0 → 0.14.0

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.
@@ -0,0 +1,41 @@
1
+ {
2
+ "name": "konductor-designer",
3
+ "description": "Creates phase-level architecture designs with component interactions, key decisions, interfaces, and trade-offs.",
4
+ "tools": [
5
+ "read",
6
+ "write",
7
+ "shell",
8
+ "code"
9
+ ],
10
+ "allowedTools": [
11
+ "read",
12
+ "write",
13
+ "shell",
14
+ "code"
15
+ ],
16
+ "resources": [
17
+ "file://.konductor/project.md",
18
+ "file://.konductor/requirements.md",
19
+ "file://.konductor/roadmap.md",
20
+ "file://.konductor/phases/*/research.md",
21
+ "file://.kiro/steering/**/*.md",
22
+ "file://~/.kiro/steering/**/*.md"
23
+ ],
24
+ "hooks": {
25
+ "preToolUse": [
26
+ {
27
+ "matcher": "*",
28
+ "command": "konductor hook",
29
+ "timeout_ms": 1000
30
+ }
31
+ ],
32
+ "postToolUse": [
33
+ {
34
+ "matcher": "*",
35
+ "command": "konductor hook",
36
+ "timeout_ms": 2000
37
+ }
38
+ ]
39
+ },
40
+ "prompt": "You are a software architect. Create a phase-level design document (design.md) covering: overall architecture, component interactions, key technical decisions, interfaces between components, and trade-offs. Focus on the 'what' and 'why', not the 'how' — task-level details belong in execution plans."
41
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "konductor",
3
- "description": "Spec-driven development orchestrator. Manages project initialization, phase planning, execution, verification, and shipping. Use @k-plan, @k-exec, @k-verify, @k-next, @k-status, or other prompts to trigger commands.",
3
+ "description": "Spec-driven development orchestrator. Manages project spec, phase design, planning, execution, verification, and shipping. Use @k-spec, @k-design, @k-plan, @k-exec, @k-verify, @k-next, @k-status, or other prompts to trigger commands.",
4
4
  "model": "claude-opus-4.6-1m",
5
5
  "tools": [
6
6
  "@builtin",
@@ -52,5 +52,5 @@
52
52
  }
53
53
  ]
54
54
  },
55
- "prompt": "You are the Konductor orchestrator — a spec-driven development pipeline manager. You coordinate work by loading skills and delegating to konductor-* subagents. You never write application code directly.\n\nCore workflow: init → discuss → plan → exec → verify → ship (per phase).\n\nRules:\n1. Always call state_get before acting to determine the current pipeline step.\n2. Use konductor MCP tools for all state and config management: state_init, state_get, state_transition, state_add_blocker, state_resolve_blocker, state_advance_phase, plans_list, status, config_get, config_init. Never read or write state.toml or config.toml directly.\n3. When a user request matches a skill, load and follow it step by step.\n4. Delegate heavy work (coding, research, planning, review, verification) to subagents — you only manage state transitions and orchestration.\n5. If no konductor project exists (.konductor/ missing), suggest initialization first."
55
+ "prompt": "You are the Konductor orchestrator — a spec-driven development pipeline manager. You coordinate work by loading skills and delegating to konductor-* subagents. You never write application code directly.\n\nCore workflow: spec → discuss → design → plan → review → exec → verify → ship (per phase).\n\nRules:\n1. Always call state_get before acting to determine the current pipeline step.\n2. Use konductor MCP tools for all state and config management: state_init, state_get, state_transition, state_add_blocker, state_resolve_blocker, state_advance_phase, plans_list, status, config_get, config_init. Never read or write state.toml or config.toml directly.\n3. When a user request matches a skill, load and follow it step by step.\n4. Delegate heavy work (coding, research, planning, review, verification) to konductor-* subagents — you only manage state transitions and orchestration.\n5. If no konductor project exists (.konductor/ missing), suggest running spec first."
56
56
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "konductor",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "description": "Spec-driven development orchestrator for Kiro CLI — MCP server and hook processor",
5
5
  "bin": {
6
6
  "konductor": "bin/konductor"
@@ -0,0 +1,78 @@
1
+ ---
2
+ name: konductor-design
3
+ description: Create architecture and design for a phase. Use when the user says design, architect, design phase, or create design.
4
+ ---
5
+
6
+ # Konductor Design — Phase Architecture
7
+
8
+ You are the Konductor orchestrator. Create the architecture and design for a phase.
9
+
10
+ ## Critical Rules
11
+
12
+ 1. **Only YOU manage state transitions** — use the MCP tools (`state_get`, `state_transition`, `state_add_blocker`) instead of writing `state.toml` directly.
13
+ 2. **Read config via MCP** — call `config_get` to get feature flags (research).
14
+ 3. **Report errors, don't retry crashes** — if a subagent fails, set status to "blocked".
15
+ 4. **Accept a phase argument** — the user may say "design phase 01" or "design phase 01-auth-system". Resolve short form by scanning `.konductor/phases/` directories.
16
+
17
+ ## Step 1: Validate State
18
+
19
+ Call the `state_get` MCP tool to read current state, and call the `config_get` MCP tool to read configuration.
20
+
21
+ Validate that `current.step` is `"specced"` or `"discussed"`. If not, tell the user:
22
+ > "Phase {phase} is not ready for design. Current step: {step}. Run 'spec' or 'discuss' first."
23
+ Then stop.
24
+
25
+ Validate that the specified phase exists in `.konductor/roadmap.md`.
26
+ Create the phase directory if it doesn't exist:
27
+ ```bash
28
+ mkdir -p .konductor/phases/{phase}/plans
29
+ ```
30
+
31
+ ## Step 2: Discover (if enabled)
32
+
33
+ If `config.toml` `features.research = true`:
34
+
35
+ Read `.konductor/phases/{phase}/context.md` if it exists (user decisions from `konductor-discuss`).
36
+
37
+ Use the **konductor-researcher** agent to discover the ecosystem for this phase. Provide it with:
38
+ - The phase name, description, and success criteria from roadmap.md
39
+ - User decisions from context.md (if exists)
40
+ - Relevant requirements from `.konductor/requirements.md`
41
+ - Instructions: investigate the ecosystem, identify libraries, patterns, risks, and best practices. Write findings to `.konductor/phases/{phase}/research.md`.
42
+
43
+ Wait for the researcher to complete. Verify `research.md` was created.
44
+
45
+ ## Step 3: Create Design
46
+
47
+ Use the **konductor-designer** agent to create the phase-level architecture. Provide it with:
48
+ - `.konductor/phases/{phase}/research.md` (if discover was run)
49
+ - `.konductor/requirements.md`
50
+ - `.konductor/roadmap.md` (phase goal and success criteria)
51
+ - `.konductor/project.md` (tech stack and constraints)
52
+ - Instructions: write `.konductor/phases/{phase}/design.md` covering overall architecture, component interactions, key decisions, interfaces, and trade-offs. Do NOT create plan files yet.
53
+
54
+ Wait for the planner to complete. Verify `design.md` was created.
55
+
56
+ ## Step 4: Update State
57
+
58
+ Write `.konductor/.results/design-{phase}.toml`:
59
+ ```toml
60
+ step = "design"
61
+ phase = "{phase}"
62
+ status = "ok"
63
+ timestamp = {current ISO timestamp}
64
+ ```
65
+
66
+ Call `state_transition` with `step = "designed"` to advance the pipeline.
67
+
68
+ Tell the user:
69
+ - Design document created at `.konductor/phases/{phase}/design.md`
70
+ - Suggest: "Say 'next' to create execution plans, or review the design first."
71
+
72
+ ## Error Handling
73
+
74
+ If any subagent fails:
75
+ 1. Write `.konductor/.results/design-{phase}.toml` with `status = "error"`
76
+ 2. Call `state_add_blocker` MCP tool with the phase and reason for the failure
77
+ 3. Report failure to user with actionable context
78
+ 4. Do NOT retry crashed subagents
@@ -153,7 +153,7 @@ Recorded {decisions_count} decisions for Phase {number}: {name}.
153
153
 
154
154
  Context saved to: `.konductor/phases/{phase}/context.md`
155
155
 
156
- These decisions will guide the planning process. Say 'next' to begin planning this phase.
156
+ These decisions will guide the design process. Say 'next' to begin designing this phase.
157
157
  ```
158
158
 
159
159
  ## Error Handling
@@ -163,7 +163,7 @@ If the phase doesn't exist in the roadmap, report it and stop.
163
163
 
164
164
  **State file missing:**
165
165
  If calling `state_get` returns a `STATE_NOT_FOUND` error:
166
- 1. Tell the user: "No Konductor project found. Run 'init' first."
166
+ 1. Tell the user: "No Konductor project found. Run 'spec' first."
167
167
  2. Stop
168
168
 
169
169
  **User provides insufficient input:**
@@ -21,69 +21,98 @@ Call the `state_get` MCP tool to read current state. Also read:
21
21
  - `.konductor/roadmap.md` — phase list and status
22
22
 
23
23
  If `.konductor/` does not exist, tell the user:
24
- > "No Konductor project found. Say 'initialize my project' to get started."
24
+ > "No Konductor project found. Say 'spec' to get started."
25
25
  Then stop.
26
26
 
27
27
  ## Step 2: Determine Next Action
28
28
 
29
29
  Based on the `current.step` field from `state_get`:
30
30
 
31
- ### Case: `step = "initialized"` or `step = "discussed"`
31
+ ### Case: `step = "specced"` or `step = "discussed"`
32
32
 
33
- The phase needs planning. Mention to the user:
34
- > "Tip: you can say 'discuss phase {phase}' to set preferences before planning. Proceeding to plan."
33
+ The phase needs design. Mention to the user:
34
+ > "Tip: you can say 'discuss phase {phase}' to set preferences before design. Proceeding to design."
35
35
 
36
- Then run the **Planning Pipeline**:
36
+ Then run the **Design Pipeline**:
37
37
 
38
- 1. **Research** (if `config.toml` `features.research = true`):
38
+ 1. **Discover** (if `config.toml` `features.research = true`):
39
39
  Read `.konductor/phases/{phase}/context.md` if it exists.
40
- Use the **konductor-researcher** agent to research phase {phase}. Provide it with:
40
+ Use the **konductor-researcher** agent to discover the ecosystem for phase {phase}. Provide it with:
41
41
  - The phase name and goal from roadmap.md
42
42
  - User decisions from context.md (if exists)
43
43
  - Relevant requirements from requirements.md
44
44
  The researcher will write to `.konductor/phases/{phase}/research.md`.
45
45
  Wait for completion.
46
46
 
47
- 2. **Plan**:
47
+ 2. **Design**:
48
+ Use the **konductor-designer** agent to create the phase-level architecture. Provide it with:
49
+ - research.md (if discover was run)
50
+ - requirements.md
51
+ - roadmap.md (for phase goal and success criteria)
52
+ - project.md (tech stack and constraints)
53
+ The planner will write `.konductor/phases/{phase}/design.md` with overall architecture, component interactions, key decisions, interfaces, and trade-offs.
54
+ Wait for completion.
55
+
56
+ 3. **Update State**:
57
+ Write `.konductor/.results/design-{phase}.toml`:
58
+ ```toml
59
+ step = "design"
60
+ phase = "{phase}"
61
+ status = "ok"
62
+ timestamp = {current ISO timestamp}
63
+ ```
64
+ Call `state_transition` with `step = "designed"`.
65
+ Tell the user: "Phase {phase} design complete. Say 'next' to create execution plans."
66
+
67
+ ### Case: `step = "designed"`
68
+
69
+ The phase needs task planning. Run the **Planning Pipeline**:
70
+
71
+ 1. **Plan**:
48
72
  Use the **konductor-planner** agent to create execution plans. Provide it with:
49
- - research.md (if research was run)
73
+ - `.konductor/phases/{phase}/design.md`
74
+ - research.md (if exists)
50
75
  - requirements.md
51
76
  - roadmap.md (for phase goal and success criteria)
52
77
  - Reference: see `references/planning-guide.md` in the konductor-plan skill
53
- The planner will first write `.konductor/phases/{phase}/design.md` with the phase-level architecture, then write plan files with `## Design` sections to `.konductor/phases/{phase}/plans/`.
78
+ The planner will write plan files to `.konductor/phases/{phase}/plans/`.
54
79
  Wait for completion.
55
80
 
56
- 3. **Check Plans** (if `config.toml` `features.plan_checker = true`):
81
+ 2. **Check Plans** (if `config.toml` `features.plan_checker = true`):
57
82
  Use the **konductor-plan-checker** agent to validate the plans. Provide it with:
58
83
  - All plan files in `.konductor/phases/{phase}/plans/`
59
84
  - requirements.md
60
85
  If the checker reports issues, use a new **konductor-planner** agent with the issues as context to revise. Then re-check. Maximum 3 iterations.
61
86
 
62
- 4. **Design Review** (if `config.toml` `features.design_review = true`):
63
- Use the **konductor-design-reviewer** agent to review the design. Provide it with:
64
- - `.konductor/phases/{phase}/design.md`
65
- - All plan files in `.konductor/phases/{phase}/plans/`
66
- - requirements.md, roadmap.md, project.md
67
- The reviewer writes `.konductor/phases/{phase}/review.md` with a verdict (pass/revise/reject) and issues.
68
- If verdict is "revise": spawn a new **konductor-planner** with the review feedback to revise design.md and affected plans, then re-run the reviewer. Maximum 2 iterations.
69
- Present the review summary to the user. Ask: "Approve plans for execution? (approve / reject)".
70
- On approve: proceed to step 5.
71
- On reject: stop. Do not advance state.
72
-
73
- 5. **Update State**:
87
+ 3. **Update State**:
74
88
  Write `.konductor/.results/plan-{phase}.toml`:
75
89
  ```toml
76
90
  step = "plan"
77
91
  phase = "{phase}"
78
92
  status = "ok"
79
93
  timestamp = {current ISO timestamp}
94
+ plan_count = {number of plan files created}
80
95
  ```
81
- Update state: call `state_transition` with `step = "planned"`.
82
- Tell the user: "Phase {phase} planned with N plans in M waves. Say 'next' to execute."
96
+ Call `state_transition` with `step = "planned"`.
97
+ Tell the user: "Phase {phase} planned with N plans in M waves. Say 'next' to review."
83
98
 
84
99
  ### Case: `step = "planned"`
85
100
 
86
- The phase is ready for execution. Run the **Execution Pipeline**:
101
+ The phase is ready for review then execution. Run the **Review + Execution Pipeline**:
102
+
103
+ **Review** (if `config.toml` `features.design_review = true`):
104
+ Use the **konductor-design-reviewer** agent to review the design. Provide it with:
105
+ - `.konductor/phases/{phase}/design.md`
106
+ - All plan files in `.konductor/phases/{phase}/plans/`
107
+ - requirements.md, roadmap.md, project.md
108
+ The reviewer writes `.konductor/phases/{phase}/review.md` with a verdict (pass/revise/reject) and issues.
109
+ If verdict is "revise": spawn a new **konductor-planner** with the review feedback to revise design.md and affected plans, then re-run the reviewer. Maximum 2 iterations.
110
+ If verdict is "reject": stop. Tell the user to fix issues and re-run design.
111
+ Present the review summary to the user. Ask: "Approve plans for execution? (approve / reject)".
112
+ On approve: proceed to execution.
113
+ On reject: stop. Do not advance state.
114
+
115
+ **Execution:**
87
116
 
88
117
  1. Read `config.toml` for `execution.max_wave_parallelism` and `git.auto_commit`.
89
118
  2. Read all plan files from `.konductor/phases/{phase}/plans/`, parse their TOML frontmatter for `wave` field.
@@ -108,90 +137,65 @@ The phase is ready for execution. Run the **Execution Pipeline**:
108
137
  **5b. Handle implementer status:**
109
138
  Read the `## Status` field from the task summary:
110
139
  - **DONE** → proceed to 5c (two-stage review).
111
- - **DONE_WITH_CONCERNS** → read `## Concerns`. If concerns mention correctness issues, security risks, or spec deviations: dispatch a fresh **konductor-executor** to address them, then proceed to 5c. If concerns are informational (style preferences, alternative approaches considered): proceed to 5c.
112
- - **NEEDS_CONTEXT** → read `## Missing Context`, provide the requested information, re-dispatch a fresh executor for the same task. Maximum 2 retries. If still NEEDS_CONTEXT after retries, treat as BLOCKED.
113
- - **BLOCKED** → read `## Blocker`. Assess: context problem → provide context and re-dispatch; task too complex → split into smaller tasks. If assessment fails or the task remains blocked after re-dispatch, call `state_add_blocker` with the blocker description. If 3 or more tasks in this phase have been BLOCKED, trigger circuit breaker: stop execution entirely and report all blockers to the user. Otherwise continue with the next task.
140
+ - **DONE_WITH_CONCERNS** → read `## Concerns`. If actionable (correctness, security, spec deviations): dispatch a fresh executor to address them, then proceed to 5c. If informational: proceed to 5c.
141
+ - **NEEDS_CONTEXT** → provide the requested information, re-dispatch. Maximum 2 retries. If still NEEDS_CONTEXT, treat as BLOCKED.
142
+ - **BLOCKED** → assess and attempt resolution. If 3+ tasks BLOCKED, trigger circuit breaker: stop and report all blockers.
114
143
 
115
- **5c. Two-stage review** (if `config.toml` `features.code_review = true`; skip both stages if disabled, and append `## Review Status: passed` to the task summary so resume logic works correctly):
144
+ **5c. Two-stage review** (if `features.code_review = true`; skip if disabled, append `## Review Status: passed` to summary):
116
145
 
117
- **Stage 1 — Spec Compliance:**
118
- Spawn **konductor-spec-reviewer** with the task spec (from the plan file), the task summary, and modified files. The reviewer writes `{plan}-task-{n}-spec-review.md`.
119
- If issues found: spawn a fresh **konductor-executor** with the issues to fix, then re-run the spec reviewer. Maximum 2 iterations.
146
+ **Stage 1 — Spec Compliance:** Spawn **konductor-spec-reviewer**. If issues: fix and re-review (max 2 iterations).
147
+ **Stage 2 — Code Quality:** Spawn **konductor-code-reviewer**. If issues: fix and re-review (max 2 iterations).
148
+ After both pass: append `## Review Status: passed` to task summary.
120
149
 
121
- **Stage 2 Code Quality:**
122
- Spawn **konductor-code-reviewer** with the task summary, modified files, and git diff for the task. The reviewer writes `{plan}-task-{n}-quality-review.md`.
123
- If issues found: spawn a fresh **konductor-executor** with the issues to fix, then re-run the quality reviewer. Maximum 2 iterations.
150
+ **5d. Write result file** after each plan completes.
124
151
 
125
- After both stages pass: append `## Review Status: passed` to the task summary file. Mark task complete.
126
-
127
- **5d. Write result file** after each plan completes (all tasks done):
128
- Write `.konductor/.results/execute-{phase}-plan-{n}.toml` with status and timestamp.
129
-
130
- 6. **Phase-Level Code Review** (optional holistic final pass, if `config.toml` `features.code_review = true`):
131
- Per-task reviews have already been performed. This step checks cross-task consistency (shared interfaces, naming conventions, integration points).
132
- Spawn **konductor-code-reviewer** with `.konductor/.tracking/modified-files.log`, all task summary files, and phase name. The reviewer writes `.konductor/phases/{phase}/code-review.md`.
133
- If significant cross-task issues found: spawn a **konductor-executor** to fix, then re-review. Maximum 3 iterations. If still unresolved, call `state_add_blocker` and report to user.
152
+ 6. **Phase-Level Code Review** (holistic final pass, if `features.code_review = true`):
153
+ Check cross-task consistency. Spawn **konductor-code-reviewer** with modified-files.log and all task summaries. Fix issues (max 3 iterations).
134
154
  7. Call `state_transition` with `step = "executed"`.
135
- 8. Tell the user: "Phase {phase} executed. N plans completed. Say 'next' to verify."
155
+ 8. Tell the user: "Phase {phase} executed. Say 'next' to verify."
136
156
 
137
157
  ### Case: `step = "executing"`
138
158
 
139
159
  Execution was interrupted. Resume at task-level granularity:
140
- 1. Scan `.konductor/phases/{phase}/plans/` for `{plan}-task-{n}-summary.md` files.
141
- 2. A task is complete only when BOTH conditions are met:
142
- - Its summary file exists with `## Status: DONE`
143
- - The summary contains `## Review Status: passed` (added by the orchestrator after both review stages pass)
144
- 3. A plan is complete when ALL its tasks meet the above definition.
145
- 4. Check for any tasks with `## Status: NEEDS_CONTEXT` or `## Status: BLOCKED` — report these to the user before resuming.
146
- 5. Resume from the first incomplete task in the first incomplete plan of the current wave.
147
- 6. Continue the Execution Pipeline from step 5 above.
160
+ 1. Scan for `{plan}-task-{n}-summary.md` files.
161
+ 2. A task is complete when its summary has `## Status: DONE` AND `## Review Status: passed`.
162
+ 3. Check for NEEDS_CONTEXT or BLOCKED tasks report before resuming.
163
+ 4. Resume from the first incomplete task.
164
+ 5. Continue the Execution Pipeline from step 5 above.
148
165
 
149
166
  ### Case: `step = "executed"`
150
167
 
151
168
  The phase needs verification. Run the **Verification Pipeline**:
152
169
 
153
- 1. Check if `config.toml` `features.verifier = false`. If so, skip verification:
154
- Call `state_transition` with `step = "complete"`, advance phase. Stop.
170
+ 1. If `config.toml` `features.verifier = false`: skip verification, call `state_transition` with `step = "complete"`, advance phase. Stop.
155
171
 
156
- 2. Use the **konductor-verifier** agent to verify the phase. Provide it with:
157
- - All summary files from `.konductor/phases/{phase}/plans/`
158
- - requirements.md
159
- - All plan files (for must_haves in frontmatter)
160
- - Reference: see `references/verification-patterns.md` in the konductor-verify skill
161
- The verifier writes `.konductor/phases/{phase}/verification.md`.
162
- Wait for completion.
172
+ 2. Use the **konductor-verifier** agent. The verifier writes `.konductor/phases/{phase}/verification.md`.
163
173
 
164
174
  3. Read `verification.md`. Write `.konductor/.results/verify-{phase}.toml`.
165
- 4. If status = "ok":
166
- Call `state_transition` with `step = "complete"`.
167
- Advance to next phase in roadmap (call `state_transition` with the new phase).
168
- Tell user: "Phase {phase} verified and complete. Advancing to next phase."
169
- 5. If status = "issues-found":
170
- Keep current step as "executed".
171
- Tell user the gaps found and suggest: "Run 'plan phase {phase}' to create gap-closure plans."
175
+ 4. If status = "ok": call `state_transition` with `step = "complete"`. Advance to next phase. Tell user: "Phase {phase} verified and complete."
176
+ 5. If status = "issues-found": keep step as "executed". Tell user the gaps and suggest re-planning.
172
177
 
173
178
  ### Case: `step = "complete"`
174
179
 
175
180
  Current phase is done. Check roadmap for next incomplete phase:
176
- - If found: update phase via `state_transition` with the new phase, set `step = "initialized"`, run Planning Pipeline.
181
+ - If found: update phase via `state_transition`, run Design Pipeline.
177
182
  - If all phases complete: tell user "All phases complete! Say 'ship' to finalize."
178
183
 
179
184
  ### Case: `step = "shipped"`
180
185
 
181
- The project has been shipped. Check `.konductor/roadmap.md` for any phases not yet completed.
182
-
183
- - If a new phase exists in the roadmap that hasn't been executed: call the `state_advance_phase` MCP tool with the new phase identifier and the updated `phases_total` from the roadmap. This preserves project history (phases_complete, initialized date, metrics, blockers) while starting the new phase. Then run the Planning Pipeline for the new phase.
184
- - If no new phases exist: tell the user "All phases complete and shipped! To continue, add new phases to roadmap.md and requirements.md, then say 'next' again."
186
+ Check `.konductor/roadmap.md` for any phases not yet completed.
187
+ - If a new phase exists: call `state_advance_phase` MCP tool. Then run the Design Pipeline.
188
+ - If no new phases: tell the user "All phases complete and shipped! To continue, add new phases to roadmap.md and requirements.md, then say 'next' again."
185
189
 
186
190
  ### Case: `step = "blocked"`
187
191
 
188
- Tell the user about the blocker from the `state_get` response `blockers` list. Suggest:
192
+ Tell the user about the blocker. Suggest:
189
193
  > "To unblock, fix the underlying issue, then call the `state_resolve_blocker` MCP tool with the phase to clear the blocker. After that, say 'next' to continue."
190
194
 
191
195
  ## Step 3: Error Handling
192
196
 
193
- If any subagent fails (no output produced, Kiro reports error):
194
- 1. Write `.konductor/.results/{step}-{phase}.toml` with `status = "error"` and error description.
195
- 2. Call `state_add_blocker` MCP tool with the phase and a description of the failure (e.g., "Subagent {agent-name} failed: {error details}").
196
- 3. Report the failure to the user with actionable context.
197
+ If any subagent fails:
198
+ 1. Write `.konductor/.results/{step}-{phase}.toml` with `status = "error"`.
199
+ 2. Call `state_add_blocker` MCP tool with the phase and failure description.
200
+ 3. Report the failure to the user.
197
201
  4. Do NOT automatically retry a crashed subagent.
@@ -1,59 +1,42 @@
1
1
  ---
2
2
  name: konductor-plan
3
- description: Plan a phase for execution. Research the ecosystem, create execution plans, and validate them. Use when the user says plan phase, plan, research and plan, or prepare phase.
3
+ description: Break a phase design into execution plans with tasks. Use when the user says plan, create tasks, break down, or task planning.
4
4
  ---
5
5
 
6
- # Konductor Plan — Phase Planning Pipeline
6
+ # Konductor Plan — Task Planning
7
7
 
8
- You are the Konductor orchestrator. Plan a phase by researching the ecosystem, creating execution plans, and validating them.
8
+ You are the Konductor orchestrator. Break a phase design into execution plans with tasks, acceptance criteria, and wave ordering.
9
9
 
10
10
  ## Critical Rules
11
11
 
12
- 1. **Only YOU manage state transitions** — use the MCP tools (`state_get`, `state_transition`, `state_add_blocker`) instead of writing `state.toml` directly. Subagents write their own output files.
13
- 2. **Read config via MCP** — call `config_get` to get feature flags (research, plan_checker, design_review).
12
+ 1. **Only YOU manage state transitions** — use the MCP tools (`state_get`, `state_transition`, `state_add_blocker`) instead of writing `state.toml` directly.
13
+ 2. **Read config via MCP** — call `config_get` to get feature flags (plan_checker).
14
14
  3. **Report errors, don't retry crashes** — if a subagent fails, set status to "blocked".
15
- 4. **Accept a phase argument** — the user may say "plan phase 01" or "plan phase 01-auth-system". Resolve short form by scanning `.konductor/phases/` directories.
15
+ 4. **Accept a phase argument** — the user may say "plan phase 01". Resolve short form by scanning `.konductor/phases/` directories.
16
16
 
17
17
  ## Step 1: Validate State
18
18
 
19
19
  Call the `state_get` MCP tool to read current state, and call the `config_get` MCP tool to read configuration.
20
20
 
21
- Validate that `current.step` is `"initialized"` or `"discussed"`. If not, tell the user:
22
- > "Phase {phase} is not ready for planning. Current step: {step}. Run 'discuss' or 'init' first."
21
+ Validate that `current.step` is `"designed"`. If not, tell the user:
22
+ > "Phase {phase} is not ready for task planning. Current step: {step}. Run 'design' first."
23
23
  Then stop.
24
24
 
25
- Validate that the specified phase exists in `.konductor/roadmap.md`.
26
- Create the phase directory if it doesn't exist:
27
- ```bash
28
- mkdir -p .konductor/phases/{phase}/plans
29
- ```
30
-
31
- ## Step 2: Research (if enabled)
32
-
33
- If `config.toml` `features.research = true`:
34
-
35
- Read `.konductor/phases/{phase}/context.md` if it exists (user decisions from `konductor-discuss`).
25
+ Verify `.konductor/phases/{phase}/design.md` exists.
36
26
 
37
- Use the **konductor-researcher** agent to research this phase. Provide it with:
38
- - The phase name, description, and success criteria from roadmap.md
39
- - User decisions from context.md (if exists)
40
- - Relevant requirements from `.konductor/requirements.md`
41
- - Instructions: investigate the ecosystem, identify libraries, patterns, risks, and best practices. Write findings to `.konductor/phases/{phase}/research.md`.
42
-
43
- Wait for the researcher to complete. Verify `research.md` was created.
44
-
45
- ## Step 3: Create Plans
27
+ ## Step 2: Create Plans
46
28
 
47
29
  Use the **konductor-planner** agent to decompose the phase into execution plans. Provide it with:
48
- - `.konductor/phases/{phase}/research.md` (if research was run)
30
+ - `.konductor/phases/{phase}/design.md`
31
+ - `.konductor/phases/{phase}/research.md` (if exists)
49
32
  - `.konductor/requirements.md`
50
33
  - `.konductor/roadmap.md` (phase goal and success criteria)
51
34
  - The planning guide: see `references/planning-guide.md`
52
- - Instructions: first write `.konductor/phases/{phase}/design.md` with the phase-level architecture (see planning guide "Phase-Level Design Document" section), then create plan files in `.konductor/phases/{phase}/plans/` using TOML frontmatter format with `## Design` sections in each plan
35
+ - Instructions: create plan files in `.konductor/phases/{phase}/plans/` using TOML frontmatter format with tasks, acceptance criteria, and wave ordering.
53
36
 
54
- Wait for the planner to complete. Verify `design.md` was created and at least one plan file exists.
37
+ Wait for the planner to complete. Verify at least one plan file exists.
55
38
 
56
- ## Step 4: Validate Plans (if enabled)
39
+ ## Step 3: Validate Plans (if enabled)
57
40
 
58
41
  If `config.toml` `features.plan_checker = true`:
59
42
 
@@ -67,66 +50,7 @@ If the checker reports issues that it could not fix:
67
50
  - Re-run the **konductor-plan-checker**
68
51
  - Maximum 3 iterations. If still unresolved, report to user.
69
52
 
70
- ## Step 5: Design Review (if enabled)
71
-
72
- If `config.toml` `features.design_review = true`:
73
-
74
- Use the **konductor-design-reviewer** agent to review the technical design. Provide it with:
75
- - `.konductor/phases/{phase}/design.md`
76
- - All plan files in `.konductor/phases/{phase}/plans/`
77
- - `.konductor/requirements.md`
78
- - `.konductor/roadmap.md` (phase goal and success criteria)
79
- - `.konductor/project.md` (tech stack and constraints)
80
- - Instructions: analyze the phase design and per-plan Design sections, then write a structured review to `.konductor/phases/{phase}/review.md`
81
-
82
- **Review criteria the agent must evaluate:**
83
- 1. Architectural soundness of design.md — do the components and interactions make sense?
84
- 2. Feasibility of per-plan Design sections — are the proposed interfaces and approaches realistic?
85
- 3. Cross-plan consistency — do shared interfaces match across plans that depend on each other?
86
- 4. Requirement coverage — every REQ-XX for this phase is addressed
87
- 5. Risk identification — missing error handling, security concerns, dependency issues
88
-
89
- **Review output format** (written to `.konductor/phases/{phase}/review.md`):
90
- ```markdown
91
- # Design Review: Phase {phase}
92
-
93
- ## Summary
94
- {one paragraph overall assessment}
95
-
96
- ## Verdict: {pass | revise | reject}
97
-
98
- ## Issues
99
-
100
- ### Issue 1: {title}
101
- - **Severity:** critical | warning | info
102
- - **Affected plan:** {plan number or "design.md"}
103
- - **Description:** {what's wrong}
104
- - **Suggestion:** {how to fix}
105
-
106
- ## Strengths
107
- {what the design does well}
108
- ```
109
-
110
- Wait for the reviewer to complete. Verify `review.md` was created.
111
-
112
- **If verdict is "pass":** Proceed to Step 6.
113
-
114
- **If verdict is "revise"** (has critical or warning issues):
115
- 1. Spawn a new **konductor-planner** agent with the review feedback as additional context
116
- 2. Instruct it to revise `design.md` and the affected plans in-place
117
- 3. Re-run the **konductor-design-reviewer**
118
- 4. Maximum 2 review-revise iterations. If still "revise" after 2 iterations, proceed to user approval with warnings noted.
119
-
120
- **If verdict is "reject":** Stop. Do not advance state. Tell the user:
121
- > "Design rejected by reviewer. See `.konductor/phases/{phase}/review.md` for details. Fix the fundamental issues and re-run planning."
122
-
123
- **Present the review summary to the user.** Ask:
124
- > "Approve plans for execution? (approve / reject)"
125
-
126
- - **On approve:** Proceed to Step 6.
127
- - **On reject:** Stop. Do not advance state. Tell the user: "Plans not approved. Edit the plans in `.konductor/phases/{phase}/plans/` or re-run planning."
128
-
129
- ## Step 6: Update State
53
+ ## Step 4: Update State
130
54
 
131
55
  Write `.konductor/.results/plan-{phase}.toml`:
132
56
  ```toml
@@ -137,14 +61,12 @@ timestamp = {current ISO timestamp}
137
61
  plan_count = {number of plan files created}
138
62
  ```
139
63
 
140
- Update state using MCP tools:
141
- - Call `state_transition` with `step = "planned"` to advance the pipeline
142
- - The tool automatically updates status and timestamps
64
+ Call `state_transition` with `step = "planned"` to advance the pipeline.
143
65
 
144
66
  Tell the user:
145
67
  - How many plans were created
146
68
  - How many waves
147
- - Suggest: "Say 'next' to execute, or review the plans in `.konductor/phases/{phase}/plans/`"
69
+ - Suggest: "Say 'next' to review the design and plans, or inspect them in `.konductor/phases/{phase}/plans/`"
148
70
 
149
71
  ## Error Handling
150
72
 
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: konductor-review
3
+ description: Review design and plans before execution. Use when the user says review, check design, review plans, or approve.
4
+ ---
5
+
6
+ # Konductor Review — Design & Plan Review
7
+
8
+ You are the Konductor orchestrator. Review the design and plans for a phase before execution.
9
+
10
+ ## Critical Rules
11
+
12
+ 1. **Only YOU manage state transitions** — use the MCP tools (`state_get`, `state_add_blocker`) instead of writing `state.toml` directly.
13
+ 2. **Read config via MCP** — call `config_get` to get feature flags (design_review).
14
+ 3. **Accept a phase argument** — the user may say "review phase 01". Resolve short form by scanning `.konductor/phases/` directories.
15
+
16
+ ## Step 1: Validate State
17
+
18
+ Call the `state_get` MCP tool to read current state.
19
+
20
+ Validate that `current.step` is `"planned"`. If not, tell the user:
21
+ > "Phase {phase} is not ready for review. Current step: {step}. Run 'plan' first."
22
+ Then stop.
23
+
24
+ ## Step 2: Design Review (if enabled)
25
+
26
+ If `config.toml` `features.design_review = true`:
27
+
28
+ Use the **konductor-design-reviewer** agent to review the technical design. Provide it with:
29
+ - `.konductor/phases/{phase}/design.md`
30
+ - All plan files in `.konductor/phases/{phase}/plans/`
31
+ - `.konductor/requirements.md`
32
+ - `.konductor/roadmap.md` (phase goal and success criteria)
33
+ - `.konductor/project.md` (tech stack and constraints)
34
+ - Instructions: analyze the phase design and per-plan Design sections, then write a structured review to `.konductor/phases/{phase}/review.md`
35
+
36
+ **Review criteria the agent must evaluate:**
37
+ 1. Architectural soundness of design.md — do the components and interactions make sense?
38
+ 2. Feasibility of per-plan Design sections — are the proposed interfaces and approaches realistic?
39
+ 3. Cross-plan consistency — do shared interfaces match across plans that depend on each other?
40
+ 4. Requirement coverage — every REQ-XX for this phase is addressed
41
+ 5. Risk identification — missing error handling, security concerns, dependency issues
42
+
43
+ **Review output format** (written to `.konductor/phases/{phase}/review.md`):
44
+ ```markdown
45
+ # Design Review: Phase {phase}
46
+
47
+ ## Summary
48
+ {one paragraph overall assessment}
49
+
50
+ ## Verdict: {pass | revise | reject}
51
+
52
+ ## Issues
53
+
54
+ ### Issue 1: {title}
55
+ - **Severity:** critical | warning | info
56
+ - **Affected plan:** {plan number or "design.md"}
57
+ - **Description:** {what's wrong}
58
+ - **Suggestion:** {how to fix}
59
+
60
+ ## Strengths
61
+ {what the design does well}
62
+ ```
63
+
64
+ Wait for the reviewer to complete. Verify `review.md` was created.
65
+
66
+ **If verdict is "pass":** Proceed to Step 3.
67
+
68
+ **If verdict is "revise"** (has critical or warning issues):
69
+ 1. Spawn a new **konductor-planner** agent with the review feedback as additional context
70
+ 2. Instruct it to revise `design.md` and the affected plans in-place
71
+ 3. Re-run the **konductor-design-reviewer**
72
+ 4. Maximum 2 review-revise iterations. If still "revise" after 2 iterations, proceed to user approval with warnings noted.
73
+
74
+ **If verdict is "reject":** Stop. Tell the user:
75
+ > "Design rejected by reviewer. See `.konductor/phases/{phase}/review.md` for details. Fix the fundamental issues and re-run design."
76
+
77
+ ## Step 3: User Approval
78
+
79
+ Present the review summary to the user. Ask:
80
+ > "Approve plans for execution? (approve / reject)"
81
+
82
+ - **On approve:** Tell the user: "Plans approved. Say 'next' to execute, or 'exec' to start execution."
83
+ - **On reject:** Tell the user: "Plans not approved. Edit the plans in `.konductor/phases/{phase}/plans/` or re-run design."
84
+
85
+ If `features.design_review = false`: skip the automated review and go straight to user approval, presenting a summary of the plans instead.
86
+
87
+ ## Error Handling
88
+
89
+ If the reviewer subagent fails:
90
+ 1. Call `state_add_blocker` MCP tool with the phase and reason for the failure
91
+ 2. Report failure to user with actionable context
@@ -1,20 +1,20 @@
1
1
  ---
2
- name: konductor-init
3
- description: Initialize a new Konductor project with spec-driven development. Use when the user says init, initialize, new project, start project, set up konductor, or bootstrap.
2
+ name: konductor-spec
3
+ description: Define project requirements and generate spec documents. Use when the user says spec, define requirements, new project, start project, set up konductor, or bootstrap.
4
4
  ---
5
5
 
6
- # Konductor Init — Project Initialization
6
+ # Konductor Spec — Project Requirements
7
7
 
8
- You are the Konductor orchestrator. Initialize a new spec-driven development project.
8
+ You are the Konductor orchestrator. Define project requirements and generate spec documents.
9
9
 
10
10
  ## Step 1: Check Existing State
11
11
 
12
12
  Check if `.konductor/` directory already exists.
13
13
  - If it exists, call the `state_get` MCP tool. If it returns valid state:
14
- - If `current.step` is `"shipped"`: ask the user: "Project is shipped. Do you want to (a) add a new phase to the existing project, or (b) reinitialize from scratch?"
14
+ - If `current.step` is `"shipped"`: ask the user: "Project is shipped. Do you want to (a) add a new phase to the existing project, or (b) re-spec from scratch?"
15
15
  - If (a): ask for the new phase name. Read `.konductor/roadmap.md` to determine the updated `phases_total`. Call the `state_advance_phase` MCP tool with the new phase identifier and updated phases_total. Skip to Step 8 (report success).
16
- - If (b): proceed with normal reinitialization below.
17
- - Otherwise: warn the user: "A Konductor project already exists here. Reinitializing will overwrite project.md, requirements.md, and roadmap.md. Proceed? (y/n)"
16
+ - If (b): proceed with normal re-spec below.
17
+ - Otherwise: warn the user: "A Konductor project already exists here. Re-speccing will overwrite project.md, requirements.md, and roadmap.md. Proceed? (y/n)"
18
18
  - If user declines, stop.
19
19
 
20
20
  ## Step 2: Create Directory Structure
@@ -64,7 +64,7 @@ Call the `state_init` MCP tool with:
64
64
  - `phase`: the first phase identifier from the roadmap
65
65
  - `phases_total`: the total number of phases from the roadmap
66
66
 
67
- This creates `.konductor/state.toml` with the correct initial structure.
67
+ This creates `.konductor/state.toml` with step `specced`.
68
68
 
69
69
  Call the `config_init` MCP tool to create `.konductor/config.toml` with defaults.
70
70
 
@@ -80,4 +80,4 @@ Create/update `.kiro/steering/` files:
80
80
  Tell the user:
81
81
  - How many phases were identified in the roadmap
82
82
  - List the phase names
83
- - Suggest: "Say 'next' to start planning phase 1, or 'discuss phase 01' to set preferences first."
83
+ - Suggest: "Say 'next' to start designing phase 1, or 'discuss phase 01' to set preferences first."
@@ -19,7 +19,7 @@ Call the `status` MCP tool. This returns a structured JSON report with:
19
19
  - `next_suggestion`
20
20
 
21
21
  If the tool returns a `STATE_NOT_FOUND` error, tell the user:
22
- > "No Konductor project found. Run 'init' to initialize a project."
22
+ > "No Konductor project found. Run 'spec' to initialize a project."
23
23
 
24
24
  Then stop.
25
25
 
@@ -90,13 +90,14 @@ Last activity: {last_activity_relative} ({last_activity_absolute})
90
90
  - · = pending
91
91
 
92
92
  **Next step suggestions by current step:**
93
- - `initialized` → "Say 'next' to start planning, or 'discuss phase {n}' to set preferences first."
94
- - `discussed` → "Say 'next' to begin planning phase {n}."
93
+ - `specced` → "Say 'next' to start design, or 'discuss phase {n}' to set preferences first."
94
+ - `discussed` → "Say 'next' to begin designing phase {n}."
95
+ - `designed` → "Say 'next' to create execution plans."
95
96
  - `planned` → "Say 'exec' to execute the plans."
96
97
  - `executing` → "Execution in progress. Wait for completion or check logs."
97
98
  - `executed` → "Say 'next' to verify the phase."
98
99
  - `complete` → "Phase {n} complete. Say 'next' to move to phase {n+1}."
99
- - `shipped` → "All phases shipped. Add new phases to roadmap.md or say 'init' to start a new project."
100
+ - `shipped` → "All phases shipped. Add new phases to roadmap.md or say 'spec' to start a new project."
100
101
  - `blocked` → "Resolve the blocker with `state_resolve_blocker`, then say 'next'."
101
102
 
102
103
  ## Error Handling
@@ -104,7 +105,7 @@ Last activity: {last_activity_relative} ({last_activity_absolute})
104
105
  **Missing state files:**
105
106
  If the `status` tool returns an error:
106
107
  1. Report the error
107
- 2. Suggest running `init` to reinitialize (warn about overwriting)
108
+ 2. Suggest running `spec` to re-spec (warn about overwriting)
108
109
 
109
110
  **Empty results directory:**
110
111
  If `.konductor/.results/` is empty, that's normal for newly initialized projects — simply report no activity yet.