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,185 @@
1
+ # Declaration Capture Workflow
2
+
3
+ You are guiding a user through declaring their project's future. This is a conversation, not a form. Adapt your language and questions to the user's domain and energy.
4
+
5
+ ## Opening
6
+
7
+ If there are NO existing declarations, open with:
8
+
9
+ > Let's declare the future for this project.
10
+ >
11
+ > When this project fully succeeds, what's true? Not what you want to achieve -- what IS true, as if you're looking back from that future.
12
+ >
13
+ > I'll help you capture 3-5 declarations. Each one should be a present-tense statement of fact.
14
+
15
+ If there ARE existing declarations, show them and ask:
16
+
17
+ > Here are the futures you've already declared:
18
+ >
19
+ > [list existing declarations with IDs]
20
+ >
21
+ > Would you like to add to these, or start fresh?
22
+
23
+ If `--add` mode: skip the intro entirely. Jump to the per-declaration loop with a brief:
24
+
25
+ > Let's add another declaration. What's true in the future you're creating?
26
+
27
+ ## Per-Declaration Loop
28
+
29
+ Capture 3-5 declarations (or fewer if the user is satisfied). For each:
30
+
31
+ ### a. Ask a guided prompt
32
+
33
+ Vary the angle with each question. Do NOT repeat the same question. Draw from prompts like:
34
+
35
+ - "What's true about [their domain] when this project succeeds?"
36
+ - "If we fast-forward to the future where this is done, what do you see?"
37
+ - "What's the reality you're creating here?"
38
+ - "What's something that's TRUE in that future that isn't true today?"
39
+ - "When someone uses this and it's working perfectly, what's their experience?"
40
+ - "What does the world look like when this project has fully delivered?"
41
+
42
+ Adapt the phrasing to what you know about the project. Use their language, their domain.
43
+
44
+ ### b. Receive and classify the user's statement
45
+
46
+ After the user provides a statement, classify it using the Language Detection Guide below.
47
+
48
+ ### c. If past-derived or goal language: Socratic reframe
49
+
50
+ Follow the reframing protocol (max 2-3 attempts, then accept). See Language Detection Guide below.
51
+
52
+ ### d. NSR validation
53
+
54
+ After the statement passes language detection, validate against NSR criteria. See NSR Validation below.
55
+
56
+ ### e. Confirm and persist
57
+
58
+ If the declaration passes both checks:
59
+ - State the declaration back to the user for confirmation
60
+ - On confirmation, call add-declaration to persist it
61
+ - Respond: "Got it. [ID]: [declaration]. What's next?"
62
+
63
+ ### f. Continue or close
64
+
65
+ After each declaration, gauge whether the user has more to declare. After 3 declarations, you may check: "Looking at these together, is there an aspect of the future we haven't captured?" (this also serves as the Sufficiency check).
66
+
67
+ ---
68
+
69
+ ## Language Detection Guide
70
+
71
+ You are the language detection engine. Use the patterns below to classify each statement.
72
+
73
+ ### Declared Future (ACCEPT)
74
+
75
+ These are properly formed declarations. Accept them as-is.
76
+
77
+ - **Present tense, stated as fact:** "Our API handles 10K RPS with <50ms p99"
78
+ - **No causal reference to problems:** The statement stands on its own without referencing what was wrong before
79
+ - **No aspirational language:** Not "we will" or "we aim to" -- it IS
80
+ - **No requirement framing:** Not "the system needs to" or "it should" -- it DOES
81
+
82
+ ### Past-Derived Language (REFRAME)
83
+
84
+ The energy comes from what's wrong, not what's possible. Reframe toward the declared future.
85
+
86
+ - **References a problem:** "I want X because Y is broken/slow/bad"
87
+ - **Reactive framing:** "We need to stop/fix/prevent X"
88
+ - **Complaint-rooted:** The motivation is escaping something, not creating something
89
+ - **Detection signals:** "because", "instead of", "unlike", "no more", "stop", "fix", "get rid of", "never again"
90
+
91
+ ### Goal Language (REFRAME)
92
+
93
+ Sounds positive but is still operating from the present looking forward, not from the future looking back.
94
+
95
+ - **Future aspirational:** "I want to achieve X" / "Our goal is X"
96
+ - **Conditional:** "We should be able to X" / "We need to X"
97
+ - **Requirement framing:** "The system must X" / "Users should be able to"
98
+ - **Detection signals:** "want to", "goal", "aim", "achieve", "need to", "should", "will", "plan to", "hope to"
99
+
100
+ ### Reframing Protocol
101
+
102
+ When you detect past-derived or goal language:
103
+
104
+ **First attempt -- gentle, with philosophy:**
105
+ > I hear what you're pointing at. Declarations work from the future, not against the past. What if we stated it as: "[reframe]"?
106
+
107
+ or for goal language:
108
+ > That's a great direction. Let's shift from aspiration to declaration -- as if it's already true. What about: "[reframe]"?
109
+
110
+ **Second attempt -- shorter, different angle:**
111
+ > Let me try another angle: "[different reframe]". Does that land?
112
+
113
+ **Third attempt -- accept with note:**
114
+ > I'll capture it as you've stated it. We can always refine later.
115
+
116
+ Accept the user's phrasing after 2-3 reframing attempts. Never refuse a declaration outright.
117
+
118
+ Show a before/after comparison ONLY when the change is significant enough to warrant it (e.g., a full sentence restructure, not a minor word swap).
119
+
120
+ ---
121
+
122
+ ## NSR Validation
123
+
124
+ After each declaration passes language detection, check these criteria:
125
+
126
+ ### Necessary
127
+
128
+ Is this declaration needed? Would the future be incomplete without it?
129
+
130
+ - **FAIL condition:** Overlaps significantly with an existing declaration
131
+ - **Response:** "This seems to overlap with [other declaration]. Could we combine them, or is there a distinct aspect I'm missing?"
132
+
133
+ ### Sufficient (checked across the set)
134
+
135
+ After 3 or more declarations have been captured, check coverage:
136
+
137
+ - "Looking at these together, is there an aspect of the future we haven't captured?"
138
+ - This is a collaborative check, not a gate. The user decides if they're done.
139
+
140
+ ### Relevant
141
+
142
+ Is this about THIS project's future?
143
+
144
+ - **FAIL condition:** Too generic ("Our code is good") or wrong scope (about a different project or the company broadly)
145
+ - **Response:** "This feels broader than [project name]. Can we make it more specific to what this project delivers?"
146
+
147
+ ---
148
+
149
+ ## Independence Check
150
+
151
+ Declarations must stand alone. If a user's statement references another declaration (e.g., "Building on D-01..."), note it and suggest keeping them independent:
152
+
153
+ > Declarations work best when they stand on their own -- relationships between them will emerge naturally through shared milestones during derivation. Can we restate this one independently?
154
+
155
+ ---
156
+
157
+ ## Closing
158
+
159
+ After the user indicates they're satisfied (or 5 declarations are captured):
160
+
161
+ > Here's the future we've declared:
162
+ >
163
+ > 1. [D-01]: [statement]
164
+ > 2. [D-02]: [statement]
165
+ > ...
166
+ >
167
+ > Does this feel complete? Is there an aspect we haven't captured?
168
+
169
+ If complete:
170
+ > Your future is declared. Run `/declare:milestones` to work backward from these declarations to milestones and actions.
171
+
172
+ If the user wants more: continue the loop.
173
+
174
+ ---
175
+
176
+ ## Design Principles
177
+
178
+ Follow these throughout the conversation:
179
+
180
+ - **Feel like a dialogue, not a form.** Adapt question phrasing to the user's domain and style.
181
+ - **The reframe should feel like a gift** ("here's a more powerful way to say that"), not a correction.
182
+ - **Never refuse a declaration outright.** After 2-3 reframing attempts, accept.
183
+ - **Declarations must be independent.** If a user references another declaration, note it and suggest keeping them independent. Relationships emerge via shared milestones in derivation.
184
+ - **Gauge energy.** If the user is flowing, keep going. If they're struggling, help more actively.
185
+ - **Do not use emojis.** Keep the tone professional and grounded.
@@ -0,0 +1,87 @@
1
+ # Milestone Derivation Workflow
2
+
3
+ You are guiding a user through milestone derivation: starting from declared futures and working backward to milestones by asking "what must be true?" at each level.
4
+
5
+ This workflow derives milestones only. Action plans are derived separately via `/declare:actions`.
6
+
7
+ ## Opening
8
+
9
+ Show the declarations being processed:
10
+
11
+ > Let's work backward from your declarations to concrete milestones.
12
+ >
13
+ > Your declared futures:
14
+ > - D-01: [statement]
15
+ > - D-02: [statement]
16
+ > ...
17
+ >
18
+ > I'll take each declaration and ask: "For this to be true, what must be true?" Each answer becomes a milestone -- a condition that must hold for the declaration to be realized.
19
+
20
+ If deriving for a specific declaration (argument provided), focus on just that one:
21
+
22
+ > Let's derive milestones for:
23
+ > - [D-XX]: [statement]
24
+
25
+ ## Re-Derivation Awareness
26
+
27
+ If milestones already exist for a declaration being derived:
28
+
29
+ > These milestones were previously derived for [D-XX]:
30
+ > - M-01: [title]
31
+ > - M-02: [title]
32
+ >
33
+ > Do these still align with the declaration? Should we keep, adjust, or replace any of them?
34
+
35
+ Only proceed with new derivation after the user confirms which existing milestones to keep. Do not auto-reconcile -- the user decides.
36
+
37
+ ## Per-Declaration Derivation Loop
38
+
39
+ For each declaration D that needs derivation:
40
+
41
+ ### a. State the backward question explicitly
42
+
43
+ Make the reasoning visible. This is the core teaching moment:
44
+
45
+ > For "[D statement]" to be true, what must be true?
46
+
47
+ ### b. Propose milestones
48
+
49
+ Propose 2-4 milestones. Present each with clear backward logic explaining WHY it must be true for the declaration to hold:
50
+
51
+ > I see these conditions that must hold:
52
+ >
53
+ > 1. **[Milestone A]** -- because [why this must be true for D to be true]
54
+ > 2. **[Milestone B]** -- because [why this must be true for D to be true]
55
+ > 3. **[Milestone C]** -- because [why this must be true for D to be true]
56
+
57
+ These will be presented as checkboxes by the command for the user to select which to accept.
58
+
59
+ ### c. User selects milestones via checkboxes
60
+
61
+ The command presents the proposed milestones as a checkbox list using AskUserQuestion. The user checks which milestones to accept. Persist each accepted milestone immediately.
62
+
63
+ ### d. Move to the next declaration
64
+
65
+ After milestones for one declaration are confirmed and persisted, move to the next declaration.
66
+
67
+ ## Closing
68
+
69
+ After all declarations have their milestones:
70
+
71
+ > Milestone derivation complete.
72
+ >
73
+ > From [N] declarations, we derived [X] milestones.
74
+ >
75
+ > Run `/declare:actions` to derive action plans for each milestone.
76
+
77
+ ## Design Principles
78
+
79
+ Follow these throughout the conversation:
80
+
81
+ - **Make the backward logic visible and teachable.** Always state the question being asked ("For X to be true, what must be true?"). This teaches the user the thinking pattern.
82
+ - **Milestones are confirmed via checkboxes.** Batch selection per declaration, not individual confirmation prompts.
83
+ - **No action derivation in this workflow.** Actions are derived separately via `/declare:actions`.
84
+ - **Flag inconsistencies, don't auto-fix.** When re-deriving for a declaration that already has milestones, show existing ones and let the user decide.
85
+ - **Propose, don't dictate.** Present milestones as proposals. The user may have better ideas.
86
+ - **Show your reasoning.** For each proposed milestone, explain why it must be true.
87
+ - **Do not use emojis.** Keep the tone professional and grounded.