declare-cc 0.1.0 → 0.3.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.
Files changed (77) hide show
  1. package/README.md +126 -27
  2. package/agents/declare-codebase-mapper.md +761 -0
  3. package/agents/declare-debugger.md +1198 -0
  4. package/agents/declare-plan-checker.md +608 -0
  5. package/agents/declare-planner.md +1015 -0
  6. package/agents/declare-research-synthesizer.md +309 -0
  7. package/agents/declare-researcher.md +484 -0
  8. package/commands/declare/actions.md +41 -20
  9. package/commands/declare/add-todo.md +41 -0
  10. package/commands/declare/audit.md +76 -0
  11. package/commands/declare/check-todos.md +125 -0
  12. package/commands/declare/complete-milestone.md +215 -0
  13. package/commands/declare/dashboard.md +76 -0
  14. package/commands/{gsd → declare}/debug.md +11 -11
  15. package/commands/declare/discuss.md +65 -0
  16. package/commands/declare/execute.md +518 -0
  17. package/commands/declare/health.md +92 -0
  18. package/commands/declare/help.md +31 -0
  19. package/commands/declare/init.md +36 -0
  20. package/commands/declare/map-codebase.md +149 -0
  21. package/commands/declare/milestones.md +7 -7
  22. package/commands/declare/new-milestone.md +172 -0
  23. package/commands/declare/new-project.md +565 -0
  24. package/commands/declare/pause.md +138 -0
  25. package/commands/declare/plan.md +236 -0
  26. package/commands/declare/prioritize.md +65 -0
  27. package/commands/declare/progress.md +116 -0
  28. package/commands/declare/quick.md +119 -0
  29. package/commands/declare/reapply-patches.md +178 -0
  30. package/commands/declare/research.md +267 -0
  31. package/commands/declare/resume.md +146 -0
  32. package/commands/declare/set-profile.md +66 -0
  33. package/commands/declare/settings.md +119 -0
  34. package/commands/declare/status.md +14 -11
  35. package/commands/declare/trace.md +81 -0
  36. package/commands/declare/update.md +251 -0
  37. package/commands/declare/verify.md +64 -0
  38. package/commands/declare/visualize.md +74 -0
  39. package/dist/declare-tools.cjs +1234 -3
  40. package/package.json +4 -2
  41. package/templates/future.md +4 -0
  42. package/templates/milestones.md +11 -0
  43. package/workflows/actions.md +89 -0
  44. package/workflows/discuss.md +476 -0
  45. package/workflows/future.md +185 -0
  46. package/workflows/milestones.md +87 -0
  47. package/workflows/verify.md +504 -0
  48. package/commands/gsd/add-phase.md +0 -39
  49. package/commands/gsd/add-todo.md +0 -42
  50. package/commands/gsd/audit-milestone.md +0 -42
  51. package/commands/gsd/check-todos.md +0 -41
  52. package/commands/gsd/cleanup.md +0 -18
  53. package/commands/gsd/complete-milestone.md +0 -136
  54. package/commands/gsd/discuss-phase.md +0 -87
  55. package/commands/gsd/execute-phase.md +0 -42
  56. package/commands/gsd/health.md +0 -22
  57. package/commands/gsd/help.md +0 -22
  58. package/commands/gsd/insert-phase.md +0 -33
  59. package/commands/gsd/join-discord.md +0 -18
  60. package/commands/gsd/list-phase-assumptions.md +0 -50
  61. package/commands/gsd/map-codebase.md +0 -71
  62. package/commands/gsd/new-milestone.md +0 -51
  63. package/commands/gsd/new-project.md +0 -42
  64. package/commands/gsd/new-project.md.bak +0 -1041
  65. package/commands/gsd/pause-work.md +0 -35
  66. package/commands/gsd/plan-milestone-gaps.md +0 -40
  67. package/commands/gsd/plan-phase.md +0 -44
  68. package/commands/gsd/progress.md +0 -24
  69. package/commands/gsd/quick.md +0 -40
  70. package/commands/gsd/reapply-patches.md +0 -110
  71. package/commands/gsd/remove-phase.md +0 -32
  72. package/commands/gsd/research-phase.md +0 -187
  73. package/commands/gsd/resume-work.md +0 -40
  74. package/commands/gsd/set-profile.md +0 -34
  75. package/commands/gsd/settings.md +0 -36
  76. package/commands/gsd/update.md +0 -37
  77. package/commands/gsd/verify-work.md +0 -39
@@ -0,0 +1,267 @@
1
+ ---
2
+ description: Research how to implement a milestone (spawns 4 parallel researchers, then synthesizes)
3
+ allowed-tools:
4
+ - Read
5
+ - Write
6
+ - Bash
7
+ - Glob
8
+ - Grep
9
+ - Task
10
+ argument-hint: "[M-XX]"
11
+ ---
12
+
13
+ Research how to implement a milestone by spawning 4 parallel researcher agents (stack, features, architecture, pitfalls) then synthesizing their findings into a unified RESEARCH.md.
14
+
15
+ **Step 1: Load graph and validate milestone.**
16
+
17
+ ```bash
18
+ node dist/declare-tools.cjs load-graph
19
+ ```
20
+
21
+ Parse the JSON output. If it contains an `error` field, tell the user to run `/declare:init` first and stop.
22
+
23
+ If `$ARGUMENTS` contains a milestone ID (e.g., `M-02`), use it directly. Otherwise, list all pending milestones and ask the user to specify one.
24
+
25
+ Extract from the graph the milestone's `title`, `goal`, and which declaration IDs it `realizes` (e.g., `D-01`). If the milestone is not found, tell the user and stop.
26
+
27
+ Note the milestone slug by converting the milestone title to lowercase with hyphens (e.g., "Milestone research pipeline" → "milestone-research-pipeline"). The milestone folder path is `.planning/milestones/M-XX-slug/`.
28
+
29
+ **Step 2: Check for existing research.**
30
+
31
+ ```bash
32
+ ls .planning/milestones/M-XX-slug/RESEARCH.md 2>/dev/null
33
+ ```
34
+
35
+ If RESEARCH.md already exists:
36
+ - Display: "RESEARCH.md already exists for M-XX. Options: 1) Re-research (overwrite), 2) View existing, 3) Cancel"
37
+ - Wait for user choice before continuing.
38
+
39
+ If it does not exist, continue.
40
+
41
+ **Step 3: Check for existing CONTEXT.md.**
42
+
43
+ ```bash
44
+ ls .planning/milestones/M-XX-slug/CONTEXT.md 2>/dev/null
45
+ ```
46
+
47
+ If CONTEXT.md exists, it contains user decisions that constrain research. Load it and pass it to all researcher agents.
48
+
49
+ **Step 4: Display research banner.**
50
+
51
+ ```
52
+ ## Researching: M-XX — [milestoneTitle]
53
+
54
+ **Declares:** [declaration IDs and statements]
55
+ **Goal:** [milestone goal or title]
56
+ **Mode:** Parallel research (4 agents → synthesizer)
57
+
58
+ Spawning 4 researchers: STACK, FEATURES, ARCHITECTURE, PITFALLS...
59
+ ```
60
+
61
+ **Step 5: Spawn 4 parallel declare-researcher agents.**
62
+
63
+ Spawn all 4 Task agents in the same response so they run in parallel. Each agent researches a specific domain.
64
+
65
+ For each researcher, the prompt follows this pattern (fill in milestone-specific context):
66
+
67
+ **STACK researcher:**
68
+
69
+ ```
70
+ First, read agents/declare-researcher.md for your role and instructions.
71
+
72
+ <research_domain>STACK</research_domain>
73
+
74
+ <objective>
75
+ Research the standard technology stack for implementing milestone M-XX: [milestoneTitle]
76
+
77
+ Investigate: What libraries, frameworks, and tools form the standard stack for this domain? What versions are current? What are the "blessed" combinations experts use?
78
+ </objective>
79
+
80
+ <milestone_context>
81
+ Milestone: M-XX — [milestoneTitle]
82
+ Goal: [milestoneGoal]
83
+ Realizes: [declarationIds and statements]
84
+ [contextMdContent if exists]
85
+ </milestone_context>
86
+
87
+ <output>
88
+ Write your findings to: .planning/milestones/M-XX-slug/STACK.md
89
+ Use the RESEARCH.md structure from your instructions but title it "STACK Research".
90
+ Do NOT commit — the synthesizer will commit everything together.
91
+ </output>
92
+ ```
93
+
94
+ **FEATURES researcher:**
95
+
96
+ ```
97
+ First, read agents/declare-researcher.md for your role and instructions.
98
+
99
+ <research_domain>FEATURES</research_domain>
100
+
101
+ <objective>
102
+ Research the features and capabilities required to implement milestone M-XX: [milestoneTitle]
103
+
104
+ Investigate: What capabilities are table stakes (must-have)? What are differentiators? What should be deferred to later milestones? What do users/implementers actually need?
105
+ </objective>
106
+
107
+ <milestone_context>
108
+ Milestone: M-XX — [milestoneTitle]
109
+ Goal: [milestoneGoal]
110
+ Realizes: [declarationIds and statements]
111
+ [contextMdContent if exists]
112
+ </milestone_context>
113
+
114
+ <output>
115
+ Write your findings to: .planning/milestones/M-XX-slug/FEATURES.md
116
+ Use the RESEARCH.md structure from your instructions but title it "FEATURES Research".
117
+ Do NOT commit — the synthesizer will commit everything together.
118
+ </output>
119
+ ```
120
+
121
+ **ARCHITECTURE researcher:**
122
+
123
+ ```
124
+ First, read agents/declare-researcher.md for your role and instructions.
125
+
126
+ <research_domain>ARCHITECTURE</research_domain>
127
+
128
+ <objective>
129
+ Research the architecture patterns for implementing milestone M-XX: [milestoneTitle]
130
+
131
+ Investigate: What are the standard component structures? What data flows are typical? What design patterns do experts use? What project organization works best?
132
+ </objective>
133
+
134
+ <milestone_context>
135
+ Milestone: M-XX — [milestoneTitle]
136
+ Goal: [milestoneGoal]
137
+ Realizes: [declarationIds and statements]
138
+ [contextMdContent if exists]
139
+ </milestone_context>
140
+
141
+ <output>
142
+ Write your findings to: .planning/milestones/M-XX-slug/ARCHITECTURE.md
143
+ Use the RESEARCH.md structure from your instructions but title it "ARCHITECTURE Research".
144
+ Do NOT commit — the synthesizer will commit everything together.
145
+ </output>
146
+ ```
147
+
148
+ **PITFALLS researcher:**
149
+
150
+ ```
151
+ First, read agents/declare-researcher.md for your role and instructions.
152
+
153
+ <research_domain>PITFALLS</research_domain>
154
+
155
+ <objective>
156
+ Research common pitfalls and failure modes when implementing milestone M-XX: [milestoneTitle]
157
+
158
+ Investigate: What do beginners get wrong? What causes rewrites? What performance, security, or correctness traps exist? What should never be hand-rolled?
159
+ </objective>
160
+
161
+ <milestone_context>
162
+ Milestone: M-XX — [milestoneTitle]
163
+ Goal: [milestoneGoal]
164
+ Realizes: [declarationIds and statements]
165
+ [contextMdContent if exists]
166
+ </milestone_context>
167
+
168
+ <output>
169
+ Write your findings to: .planning/milestones/M-XX-slug/PITFALLS.md
170
+ Use the RESEARCH.md structure from your instructions but title it "PITFALLS Research".
171
+ Do NOT commit — the synthesizer will commit everything together.
172
+ </output>
173
+ ```
174
+
175
+ Use one Task tool call per researcher. Spawn all 4 in the same response.
176
+
177
+ **Step 6: After all 4 researchers complete, display interim summary.**
178
+
179
+ ```
180
+ ### Research Phase Complete
181
+
182
+ | Domain | Status | Key Finding |
183
+ |--------|--------|-------------|
184
+ | STACK | Done | [brief summary from agent return] |
185
+ | FEATURES | Done | [brief summary from agent return] |
186
+ | ARCHITECTURE | Done | [brief summary from agent return] |
187
+ | PITFALLS | Done | [brief summary from agent return] |
188
+
189
+ Spawning synthesizer...
190
+ ```
191
+
192
+ If any researcher returned `## RESEARCH BLOCKED`, surface the blocker to the user before spawning the synthesizer. Ask whether to continue with partial research or abort.
193
+
194
+ **Step 7: Spawn declare-research-synthesizer.**
195
+
196
+ ```
197
+ First, read agents/declare-research-synthesizer.md for your role and instructions.
198
+
199
+ <objective>
200
+ Synthesize the 4 research files for milestone M-XX: [milestoneTitle] into a unified RESEARCH.md.
201
+ </objective>
202
+
203
+ <milestone_context>
204
+ Milestone: M-XX — [milestoneTitle]
205
+ Goal: [milestoneGoal]
206
+ Realizes: [declarationIds and statements]
207
+ Milestone folder: .planning/milestones/M-XX-slug/
208
+ </milestone_context>
209
+
210
+ <research_files>
211
+ - .planning/milestones/M-XX-slug/STACK.md
212
+ - .planning/milestones/M-XX-slug/FEATURES.md
213
+ - .planning/milestones/M-XX-slug/ARCHITECTURE.md
214
+ - .planning/milestones/M-XX-slug/PITFALLS.md
215
+ </research_files>
216
+
217
+ <output>
218
+ Write synthesized output to: .planning/milestones/M-XX-slug/RESEARCH.md
219
+ Commit all research files (the 4 domain files + RESEARCH.md) together:
220
+ node dist/declare-tools.cjs commit "docs(M-XX): complete milestone research" --files .planning/milestones/M-XX-slug/
221
+ </output>
222
+ ```
223
+
224
+ Use one Task tool call for the synthesizer.
225
+
226
+ **Step 8: Present results.**
227
+
228
+ After the synthesizer returns `## SYNTHESIS COMPLETE`:
229
+
230
+ ```
231
+ ## Research Complete: M-XX — [milestoneTitle]
232
+
233
+ **Files created:**
234
+ - .planning/milestones/M-XX-slug/STACK.md
235
+ - .planning/milestones/M-XX-slug/FEATURES.md
236
+ - .planning/milestones/M-XX-slug/ARCHITECTURE.md
237
+ - .planning/milestones/M-XX-slug/PITFALLS.md
238
+ - .planning/milestones/M-XX-slug/RESEARCH.md
239
+
240
+ **Overall confidence:** [from synthesizer]
241
+
242
+ ### Key Findings
243
+ [3-5 bullets from synthesizer executive summary]
244
+
245
+ ### Planning Implications
246
+ [Suggested action groups from synthesizer]
247
+
248
+ **Next step:** Run `/declare:actions M-XX` to derive action plans informed by this research.
249
+ ```
250
+
251
+ **Error handling:**
252
+
253
+ - If `load-graph` returns an error: stop and ask user to run `/declare:init`.
254
+ - If the milestone folder does not exist: run `mkdir -p .planning/milestones/M-XX-slug/` before spawning researchers.
255
+ - If a researcher agent fails: log the failure, continue with the other 3 researchers, then inform the synthesizer about the missing file.
256
+ - If synthesis is blocked: display the synthesizer's `## SYNTHESIS BLOCKED` message and ask the user how to proceed.
257
+ - If RESEARCH.md already exists and user chose to re-research: the synthesizer will overwrite it.
258
+
259
+ **Key patterns:**
260
+
261
+ - 4 parallel researchers run concurrently for speed (stack, features, architecture, pitfalls).
262
+ - Researchers write domain files but do NOT commit.
263
+ - Synthesizer reads all 4 files, writes RESEARCH.md, and commits everything in one shot.
264
+ - Research informs `/declare:actions` planning — always suggest it as next step.
265
+ - CONTEXT.md (from `/declare:discuss`) constrains research when present.
266
+ - Milestone folder path follows `.planning/milestones/M-XX-slug/` convention.
267
+ - Use repo-relative paths in all file references and agent prompts.
@@ -0,0 +1,146 @@
1
+ ---
2
+ name: declare:resume
3
+ description: Restore full project context from a previous session and route to the next action
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ - Glob
8
+ - Grep
9
+ ---
10
+
11
+ Restore project context from a previous session and route to the appropriate next action.
12
+
13
+ **Step 1: Check for handoff file.**
14
+
15
+ Check whether `.continue-here.md` exists at the project root:
16
+
17
+ ```bash
18
+ ls .continue-here.md 2>/dev/null && echo "found" || echo "not found"
19
+ ```
20
+
21
+ **Step 2a: If `.continue-here.md` exists — restore from handoff.**
22
+
23
+ Read `.continue-here.md`.
24
+
25
+ Display its contents in a clean, structured format:
26
+
27
+ ```
28
+ ## Resuming from Saved Context
29
+
30
+ **Paused at:** [Paused timestamp from file]
31
+ **Position:** [Position from file]
32
+
33
+ ### Active Milestone
34
+
35
+ [Active milestone details from file]
36
+
37
+ ### Remaining Actions
38
+
39
+ [Remaining actions list from file]
40
+
41
+ ### Decisions Made Last Session
42
+
43
+ [Decisions from file]
44
+
45
+ ### Blockers
46
+
47
+ [Blockers from file]
48
+ ```
49
+
50
+ Then run `load-graph` to get fresh action statuses (actions may have changed since the pause):
51
+
52
+ ```bash
53
+ node dist/declare-tools.cjs load-graph
54
+ ```
55
+
56
+ If graph loads successfully, cross-reference: if any actions listed as PENDING in `.continue-here.md` are now DONE in the graph, note that:
57
+
58
+ ```
59
+ Note: Since pausing, [A-XX] has been completed.
60
+ ```
61
+
62
+ Proceed to Step 3 (routing).
63
+
64
+ **Step 2b: If `.continue-here.md` does not exist — load from STATE.md.**
65
+
66
+ Run:
67
+
68
+ ```bash
69
+ node dist/declare-tools.cjs get-state
70
+ ```
71
+
72
+ ```bash
73
+ node dist/declare-tools.cjs load-graph
74
+ ```
75
+
76
+ If `get-state` returns an error (STATE.md not found):
77
+
78
+ ```
79
+ No project state found. Run /declare:new-project to initialize.
80
+ ```
81
+
82
+ Then stop.
83
+
84
+ Display the state context:
85
+
86
+ ```
87
+ ## Resuming from STATE.md
88
+
89
+ **Current Position:** [currentPosition]
90
+ **Last Activity:** [most recent session history entry, if any]
91
+
92
+ ### Recent Work
93
+
94
+ [recentWork from STATE.md]
95
+
96
+ ### Decisions
97
+
98
+ [decisions from STATE.md, or "(none recorded)"]
99
+ ```
100
+
101
+ Proceed to Step 3 (routing).
102
+
103
+ **Step 3: Route to next action.**
104
+
105
+ Evaluate the current project state and present the most relevant next step:
106
+
107
+ **Route A — Pending actions on active milestone:**
108
+ - "Ready to continue [M-XX] — [N] actions remaining."
109
+ - Offer: "`/declare:execute [M-XX]` to continue"
110
+
111
+ **Route B — Active milestone fully complete, not yet verified:**
112
+ - "[M-XX] has all actions done but is not yet verified."
113
+ - Offer: "`/declare:verify [M-XX]` to verify milestone truth"
114
+
115
+ **Route C — Blocker recorded:**
116
+ - "A blocker was recorded: [blocker text]"
117
+ - Offer options: "Resolve it manually, then run `/declare:execute [M-XX]`" or "`/declare:status` to review the graph"
118
+
119
+ **Route D — No active milestone:**
120
+ - "No active milestone found."
121
+ - Offer: "`/declare:new-milestone` to plan next milestone" or "`/declare:status` to review graph"
122
+
123
+ **Route E — No project initialized:**
124
+ - "Project not initialized."
125
+ - Offer: "`/declare:new-project` to initialize"
126
+
127
+ Present the route as a clear, single recommendation with an alternative if applicable.
128
+
129
+ **Step 4: Record session resumption.**
130
+
131
+ ```bash
132
+ node dist/declare-tools.cjs record-session --stopped-at "Resumed — [currentPosition]"
133
+ ```
134
+
135
+ Do not display the output of this command.
136
+
137
+ **Step 5: Clean up handoff file (if used).**
138
+
139
+ If `.continue-here.md` was used in Step 2a and routing shows work is continuing normally, offer:
140
+
141
+ ```
142
+ The .continue-here.md handoff file can be removed once you are fully resumed.
143
+ Run: git rm .continue-here.md && git commit -m "chore: resume work — remove handoff file"
144
+ ```
145
+
146
+ Do not remove it automatically — leave that to the user.
@@ -0,0 +1,66 @@
1
+ ---
2
+ description: Switch model profile for Declare agents (quality/balanced/budget)
3
+ argument-hint: <profile>
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ ---
8
+
9
+ Switch the model profile used by Declare agents. Controls which Claude model each agent uses, balancing output quality vs token spend.
10
+
11
+ **Step 1: Validate the profile argument.**
12
+
13
+ Parse `$ARGUMENTS` to extract the profile name. It must be one of: `quality`, `balanced`, `budget`.
14
+
15
+ If the argument is missing or invalid, display the usage error and the profile table below, then stop.
16
+
17
+ ```
18
+ Usage: /declare:set-profile <profile>
19
+
20
+ Profiles:
21
+ quality — claude-opus-4-5 for all agents
22
+ balanced — claude-sonnet-4-5 for execution, claude-opus-4-5 for planning
23
+ budget — claude-haiku-3-5 for execution, claude-sonnet-4-5 for planning
24
+ ```
25
+
26
+ **Step 2: Read current profile.**
27
+
28
+ ```bash
29
+ node dist/declare-tools.cjs config-get model_profile
30
+ ```
31
+
32
+ Extract the current value (default "quality" if key not found).
33
+
34
+ **Step 3: Apply the new profile.**
35
+
36
+ ```bash
37
+ node dist/declare-tools.cjs config-set --key model_profile --value <profile>
38
+ ```
39
+
40
+ If the command fails, display the error and stop.
41
+
42
+ **Step 4: Display confirmation.**
43
+
44
+ Show a confirmation with the model table:
45
+
46
+ ```
47
+ Profile switched: [old] → [new]
48
+
49
+ Model assignments for "[new]" profile:
50
+
51
+ Agent Model
52
+ ───────────────────────────────────────────────
53
+ Planner [planner model]
54
+ Plan-checker [plan-checker model]
55
+ Executor [executor model]
56
+ Verifier [verifier model]
57
+ Researcher [researcher model]
58
+
59
+ Use /declare:settings to configure additional workflow options.
60
+ ```
61
+
62
+ Model assignments by profile:
63
+
64
+ - **quality**: all agents use `claude-opus-4-5`
65
+ - **balanced**: planner=`claude-opus-4-5`, plan-checker=`claude-opus-4-5`, executor=`claude-sonnet-4-5`, verifier=`claude-sonnet-4-5`, researcher=`claude-opus-4-5`
66
+ - **budget**: planner=`claude-sonnet-4-5`, plan-checker=`claude-sonnet-4-5`, executor=`claude-haiku-3-5`, verifier=`claude-haiku-3-5`, researcher=`claude-sonnet-4-5`
@@ -0,0 +1,119 @@
1
+ ---
2
+ description: Configure Declare workflow settings interactively
3
+ allowed-tools:
4
+ - Read
5
+ - Bash
6
+ - AskUserQuestion
7
+ ---
8
+
9
+ Interactive configuration of Declare workflow settings and model profile.
10
+
11
+ **Step 1: Read current config.**
12
+
13
+ ```bash
14
+ node dist/declare-tools.cjs config-get model_profile
15
+ ```
16
+
17
+ ```bash
18
+ node dist/declare-tools.cjs config-get workflow.research
19
+ ```
20
+
21
+ ```bash
22
+ node dist/declare-tools.cjs config-get workflow.plan_check
23
+ ```
24
+
25
+ ```bash
26
+ node dist/declare-tools.cjs config-get workflow.auto_advance
27
+ ```
28
+
29
+ Extract current values (use defaults if key not found: model_profile="quality", research=true, plan_check=true, auto_advance=false).
30
+
31
+ **Step 2: Ask the 5 configuration questions in sequence using AskUserQuestion.**
32
+
33
+ For each question, show the current value so the user knows what's selected now. Accept Enter to keep the current value.
34
+
35
+ **Question 1: Model profile**
36
+
37
+ ```
38
+ Which model profile should Declare agents use?
39
+
40
+ 1. quality — claude-opus-4-5 for all agents (highest quality, most spend)
41
+ 2. balanced — claude-sonnet-4-5 for execution, opus-4-5 for planning (recommended)
42
+ 3. budget — claude-haiku-3-5 for execution, sonnet-4-5 for planning (low spend)
43
+
44
+ Current: [current value]
45
+ Enter 1, 2, or 3 (or press Enter to keep current):
46
+ ```
47
+
48
+ **Question 2: Research phase**
49
+
50
+ ```
51
+ Enable research phase before milestone planning?
52
+ Research gives agents web context but takes extra time.
53
+
54
+ Current: [true/false]
55
+ Enter yes/no (or press Enter to keep current):
56
+ ```
57
+
58
+ **Question 3: Plan check**
59
+
60
+ ```
61
+ Enable plan-checker review loop after planning?
62
+ Plan-checker validates plans before execution starts.
63
+
64
+ Current: [true/false]
65
+ Enter yes/no (or press Enter to keep current):
66
+ ```
67
+
68
+ **Question 4: Auto-advance**
69
+
70
+ ```
71
+ Enable auto-advance mode?
72
+ In auto mode, checkpoints are skipped and agents continue without pausing for human verification.
73
+ Only enable if you trust the agents to proceed without review.
74
+
75
+ Current: [true/false]
76
+ Enter yes/no (or press Enter to keep current):
77
+ ```
78
+
79
+ **Step 3: Parse answers and persist each changed setting.**
80
+
81
+ Map answers to values:
82
+ - Profile "1" → "quality", "2" → "balanced", "3" → "budget". Empty input → keep current.
83
+ - "yes"/"y" → true, "no"/"n" → false. Empty input → keep current.
84
+
85
+ For each setting that changed, run config-set:
86
+
87
+ ```bash
88
+ node dist/declare-tools.cjs config-set --key model_profile --value <profile>
89
+ ```
90
+
91
+ ```bash
92
+ node dist/declare-tools.cjs config-set --key workflow.research --value <true|false>
93
+ ```
94
+
95
+ ```bash
96
+ node dist/declare-tools.cjs config-set --key workflow.plan_check --value <true|false>
97
+ ```
98
+
99
+ ```bash
100
+ node dist/declare-tools.cjs config-set --key workflow.auto_advance --value <true|false>
101
+ ```
102
+
103
+ **Step 4: Display confirmation.**
104
+
105
+ Show a summary table of the final configuration:
106
+
107
+ ```
108
+ Declare settings saved.
109
+
110
+ Model profile : [profile]
111
+ Research : [enabled/disabled]
112
+ Plan check : [enabled/disabled]
113
+ Auto-advance : [enabled/disabled]
114
+
115
+ Quick commands:
116
+ /declare:set-profile quality|balanced|budget — switch profile
117
+ /declare:health — check project health
118
+ /declare:settings — open this menu
119
+ ```
@@ -12,7 +12,7 @@ Show the current state of the Declare project graph.
12
12
  **Step 1: Run the status tool.**
13
13
 
14
14
  ```bash
15
- node /Users/guilherme/Projects/get-shit-done/dist/declare-tools.cjs status
15
+ node dist/declare-tools.cjs status
16
16
  ```
17
17
 
18
18
  Parse the JSON output.
@@ -45,18 +45,21 @@ For each validation error, provide a brief suggestion:
45
45
  - `cycle`: "Check for circular dependencies in your graph"
46
46
  - `broken_edge`: "The target node may have been removed -- update or remove the edge"
47
47
 
48
- **Coverage:** Show milestone plan coverage from the `coverage` field:
49
- - "Plan coverage: X of Y milestones have plans (Z%)"
50
- - If coverage is less than 100%, list milestones without plans and suggest: "Run `/declare:actions` to derive plans for uncovered milestones."
48
+ **Last Activity:** Show the timestamp and commit message from the last git activity.
51
49
 
52
- **Health Indicators:** If `staleness` indicators exist, render them:
53
- - NO_PLAN: "[M-XX] has no action plan"
54
- - STALE: "[M-XX] plan not updated in N days"
55
- - COMPLETABLE: "[M-XX] all actions done -- consider marking milestone as DONE"
56
- - INCONSISTENT: "[M-XX] marked DONE but has incomplete actions"
50
+ **Performance:** If the status output contains a `performance` field (non-null):
57
51
 
58
- If no staleness indicators: "All milestones healthy."
52
+ Show the project rollup first:
53
+ "Performance: [rollup.performance] (alignment: [rollup.alignment] x integrity: [rollup.integrity])"
59
54
 
60
- **Last Activity:** Show the timestamp and commit message from the last git activity.
55
+ Then show per-declaration breakdown:
56
+
57
+ | Declaration | Alignment | Integrity | Performance |
58
+ |-------------|-----------|-----------|-------------|
59
+ | D-XX: [title] | HIGH | MEDIUM | MEDIUM |
60
+
61
+ If `performance` is null, skip this section entirely (graceful degradation for projects with no declarations).
62
+
63
+ Keep the "Performance: HIGH (alignment: HIGH x integrity: HIGH)" plain text label format -- qualitative labels only, never numeric scores.
61
64
 
62
65
  The overall feel should be like a dashboard -- compact, scannable, with clear health indicators.