opencode-goopspec 0.1.2 → 0.1.3

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.
@@ -1,318 +1,40 @@
1
1
  ---
2
2
  name: goop-debug
3
- description: Systematic debugging using scientific method - investigate bugs with hypothesis testing
4
- tools:
5
- read: true
6
- write: true
7
- edit: true
8
- bash: true
9
- grep: true
10
- glob: true
3
+ description: Debug with a systematic workflow
11
4
  ---
12
5
 
13
- <objective>
14
- Systematic debugging using the scientific method.
6
+ # /goop-debug
15
7
 
16
- Investigates bugs through hypothesis testing, manages persistent debug sessions, and handles checkpoints when user input is needed.
8
+ **Systematic debugging.** Solve hard bugs using the scientific method.
17
9
 
18
- **Key principles:**
19
- - User = Reporter (knows symptoms), Claude = Investigator (finds cause)
20
- - Hypothesis testing with falsifiable predictions
21
- - Change one variable at a time
22
- - Document everything in DEBUG.md
23
-
24
- **Creates:**
25
- - `.goopspec/debug/DEBUG-{id}.md` - Debug session record
26
- </objective>
27
-
28
- <execution_context>
29
- <!-- Debug template is embedded in the process section above -->
30
- </execution_context>
31
-
32
- <context>
33
- @.goopspec/PROJECT.md
34
- @.goopspec/STATE.md
35
- </context>
36
-
37
- <process>
38
- ## Phase 1: Gather Evidence
39
-
40
- **Opening questions:**
41
-
42
- "Tell me about the bug. What did you expect to happen, and what actually happened?"
43
-
44
- Listen for:
45
- - Expected behavior
46
- - Actual behavior
47
- - Error messages
48
- - When it started
49
- - Reproduction steps
50
- - Environment details
51
-
52
- **Do NOT ask:**
53
- - "What's causing it?" (User doesn't know)
54
- - "Which file has the bug?" (That's your job)
55
- - "How should we fix it?" (Investigate first)
56
-
57
- **DO ask about:**
58
- - "What were you doing when it happened?"
59
- - "Does it happen every time?"
60
- - "When did you first notice it?"
61
- - "What error messages did you see?"
62
-
63
- ## Phase 2: Initialize Debug Session
64
-
65
- Create debug session file:
10
+ ## Usage
66
11
 
67
12
  ```bash
68
- DEBUG_ID=$(date +%Y%m%d-%H%M%S)
69
- mkdir -p .goopspec/debug
13
+ /goop-debug [symptom description]
70
14
  ```
71
15
 
72
- Create `.goopspec/debug/DEBUG-$DEBUG_ID.md`:
73
-
74
- ```markdown
75
- # Debug Session: $DEBUG_ID
76
-
77
- **Started:** [Timestamp]
78
- **Status:** In Progress
79
- **Severity:** [Critical/Major/Minor]
80
-
81
- ## Problem Statement
82
-
83
- **Expected:** [What should happen]
84
- **Actual:** [What actually happens]
85
- **Impact:** [Who/what is affected]
86
-
87
- ## Evidence Gathered
88
-
89
- ### Error Messages
90
- ```
91
- [Paste error messages]
92
- ```
93
-
94
- ### Reproduction Steps
95
- 1. [Step 1]
96
- 2. [Step 2]
97
- 3. [Step 3]
98
-
99
- ### Environment
100
- - [OS/Version]
101
- - [Runtime version]
102
- - [Relevant env vars]
103
-
104
- ## Investigation Log
105
-
106
- ### Hypothesis 1: [Brief description]
107
- **Prediction:** If true, [observable outcome]
108
- **Test:** [What to do]
109
- **Result:** [Pending/Confirmed/Refuted]
110
- **Conclusion:** [What we learned]
111
-
112
- ---
113
-
114
- ## Current Status
115
-
116
- **Active Hypothesis:** [Which one we're testing]
117
- **Next Step:** [What to do next]
118
-
119
- ## Resolution
120
-
121
- **Root Cause:** [What was actually wrong]
122
- **Fix Applied:** [What was changed]
123
- **Verification:** [How we confirmed it's fixed]
124
- **Committed:** [Commit hash]
125
-
126
- ---
127
- *Debug session following scientific method*
128
- ```
129
-
130
- ## Phase 3: Form Hypotheses
131
-
132
- Based on evidence, generate 3+ independent hypotheses:
133
-
134
- **Good hypotheses (falsifiable):**
135
- - "User state resets because component remounts on route change"
136
- - "API returns 404 because URL construction is wrong"
137
- - "Race condition between async operations"
138
-
139
- **Bad hypotheses (unfalsifiable):**
140
- - "Something is wrong with the state"
141
- - "The timing is off"
142
- - "There's a bug somewhere"
143
-
144
- For each hypothesis, design an experiment:
145
-
146
- ```markdown
147
- ### Hypothesis N: [Description]
148
- **Prediction:** If this hypothesis is true, I will observe [specific outcome]
149
- **Test:** [Exact steps to test]
150
- **Measurement:** [What to measure]
151
- **Success criteria:** [What confirms/refutes]
152
- ```
153
-
154
- ## Phase 4: Test Hypotheses
155
-
156
- **Rule: Change ONE variable at a time**
157
-
158
- For each hypothesis:
159
- 1. Run the test
160
- 2. Record the exact outcome
161
- 3. Compare to prediction
162
- 4. Document in DEBUG.md
163
-
164
- **If hypothesis confirmed:**
165
- - Move to Phase 5 (Action)
166
- - Update DEBUG.md with conclusion
167
-
168
- **If hypothesis refuted:**
169
- - Document what we learned (rules something out)
170
- - Form new hypothesis based on new information
171
- - Continue testing
172
-
173
- ## Phase 5: Take Action
174
-
175
- **Only act when ALL are true:**
176
- 1. Understand the mechanism (not just "what fails" but "why")
177
- 2. Can reproduce reliably
178
- 3. Have evidence, not just theory
179
- 4. Ruled out alternatives
180
-
181
- **Action types:**
182
-
183
- ### Fix the bug
184
- - Make minimal, targeted change
185
- - Update tests to prevent regression
186
- - Verify fix works
187
- - Document in DEBUG.md
188
-
189
- ### Checkpoint (if blocked)
190
- If you need user input:
191
- ```
192
- <task type="checkpoint:decision" gate="blocking">
193
- <decision>[What needs deciding]</decision>
194
- <context>[Why this matters]</context>
195
- <options>[Available options]</options>
196
- </task>
197
- ```
198
-
199
- ## Phase 6: Document Resolution
200
-
201
- Update DEBUG.md:
202
-
203
- ```markdown
204
- ## Resolution
205
-
206
- **Root Cause:** [Clear explanation]
207
- **Fix Applied:** [What was changed]
208
- ```diff
209
- - [Old code]
210
- + [New code]
211
- ```
212
-
213
- **Verification:** [How confirmed]
214
- - [ ] Test passes
215
- - [ ] Manual verification
216
- - [ ] No regressions
217
-
218
- **Committed:** [Hash]
219
- **Duration:** [How long it took]
220
- **Status:** RESOLVED
221
- ```
222
-
223
- ## Phase 7: Offer Next Steps
224
-
225
- ```
226
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
227
- GOOPSPEC > DEBUG COMPLETE
228
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
229
-
230
- **Bug Resolved**
231
-
232
- Root Cause: [Brief description]
233
- Fix: [What was changed]
234
- Commit: [Hash]
235
-
236
- Debug record: .goopspec/debug/DEBUG-{id}.md
237
-
238
- ───────────────────────────────────────────────────────────────
239
-
240
- ## Lessons Learned
241
-
242
- [Key insight from this debug session]
243
-
244
- ───────────────────────────────────────────────────────────────
245
-
246
- **Next steps:**
247
- - Continue with current work
248
- - /goop-status - Check overall progress
249
- - /goop-pause - Save checkpoint
250
-
251
- ───────────────────────────────────────────────────────────────
252
- ```
253
- </process>
254
-
255
- <methodology>
256
- **Scientific Method Steps:**
257
-
258
- 1. **Observe precisely**
259
- - Not "it's broken" but "counter shows 3 when clicking once, should show 1"
260
-
261
- 2. **Form falsifiable hypotheses**
262
- - Must be provable wrong
263
- - Make specific, testable claims
264
-
265
- 3. **Design experiments**
266
- - One variable at a time
267
- - Clear prediction
268
- - Unambiguous outcome
269
-
270
- 4. **Run experiments**
271
- - Document exact results
272
- - No interpretation yet
273
-
274
- 5. **Conclude based on evidence**
275
- - Update mental model
276
- - Form new hypotheses if needed
277
-
278
- **Cognitive Biases to Avoid:**
279
-
280
- | Bias | Trap | Antidote |
281
- |------|------|----------|
282
- | Confirmation | Only look for supporting evidence | Actively seek disproof |
283
- | Anchoring | First explanation becomes anchor | Generate 3+ hypotheses |
284
- | Availability | Recent bugs -> similar cause | Treat each bug as novel |
285
- | Sunk Cost | Keep going despite evidence | "If I started fresh...?" |
286
-
287
- **When to Restart:**
288
- - 2+ hours with no progress
289
- - 3+ "fixes" that didn't work
290
- - Can't explain current behavior
291
- - Debugging the debugger
16
+ ## How It Works
292
17
 
293
- **Restart protocol:**
294
- 1. Close all files
295
- 2. Write what you know for certain
296
- 3. Write what you've ruled out
297
- 4. List new hypotheses
298
- 5. Begin again
299
- </methodology>
18
+ Enters a specialized debugging mode that enforces scientific rigor to prevent "flailing."
300
19
 
301
- <checkpoint_types>
302
- **When to use checkpoints in debugging:**
20
+ ### The Protocol
21
+ 1. **Observation:** "What exactly is happening?" (Gather evidence).
22
+ 2. **Hypothesis:** "Why might this be happening?" (List possible causes).
23
+ 3. **Experiment:** "How can we test that?" (Design falsifiable tests).
24
+ 4. **Deduction:** "What does the result tell us?" (Eliminate possibilities).
303
25
 
304
- **checkpoint:human-verify**
305
- - After implementing fix, need user to test
306
- - Can't reproduce in your environment
307
- - Needs specific hardware/data
26
+ ### Features
27
+ - **Debug Session Log:** Creates `.goopspec/debug/SESSION-<id>.md`.
28
+ - **Constraint:** Forces changing *one variable at a time*.
29
+ - **Memory:** searches for similar past bugs.
308
30
 
309
- **checkpoint:decision**
310
- - Multiple possible fixes, user must choose
311
- - Fix has tradeoffs (performance vs simplicity)
312
- - Requires architectural change
31
+ ### Output
32
+ - A resolution report with Root Cause and Fix.
33
+ - Updates persistent memory with the solution to prevent recurrence.
313
34
 
314
- **checkpoint:human-action**
315
- - Needs user to provide data/credentials
316
- - Requires access to external system
317
- - Needs deployment to test environment
318
- </checkpoint_types>
35
+ ## Example
36
+ > **User:** `/goop-debug Login fails with 500 error only on production`
37
+ > **Agent:** "Starting debug session.
38
+ > Hypothesis 1: Env vars missing.
39
+ > Hypothesis 2: Database connection timeout.
40
+ > Let's test Hypothesis 1 first..."
@@ -1,138 +1,22 @@
1
1
  ---
2
2
  name: goop-discuss
3
- description: Capture user vision before planning - the discovery conversation
3
+ description: Capture user vision before planning
4
4
  ---
5
5
 
6
- # GoopSpec Discuss
6
+ # /goop-discuss
7
7
 
8
- Capture user vision and gather requirements through structured conversation before formal planning.
8
+ **Deprecated.** Use `/goop-plan`.
9
9
 
10
10
  ## Usage
11
11
 
12
+ ```bash
13
+ /goop-discuss [topic]
12
14
  ```
13
- /goop-discuss [brief description]
14
- ```
15
-
16
- ## Workflow Position
17
-
18
- ```
19
- ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
20
- │ DISCUSS │ ──▶ │ PLAN │ ──▶ │ RESEARCH │
21
- │ (Vision) │ │ (Intent) │ │ (Explore) │
22
- └─────────────┘ └─────────────┘ └─────────────┘
23
-
24
- (You are here)
25
- ```
26
-
27
- The Discuss phase answers: **What does the user really want?**
28
-
29
- ## What Happens
30
-
31
- 1. **Vision Capture** - Understand the high-level goal
32
- 2. **Requirements Gathering** - Ask clarifying questions to understand:
33
- - Functional requirements (what it should do)
34
- - Non-functional requirements (performance, security, accessibility)
35
- - Constraints (time, technology, compatibility)
36
- - Success criteria (how to know it's done)
37
- 3. **Scope Definition** - Identify boundaries
38
- 4. **Priority Clarification** - Understand what matters most
39
- 5. **Memory Search** - Check for relevant past context
40
-
41
- ## Discussion Techniques
42
-
43
- **Ask Open-Ended Questions:**
44
- ```
45
- "Can you walk me through how a user would interact with this?"
46
- "What happens if [edge case]?"
47
- "Are there any existing patterns in the codebase we should follow?"
48
- ```
49
-
50
- **Validate Understanding:**
51
- ```
52
- "Let me make sure I understand correctly:
53
- - The feature should [summary]
54
- - It needs to handle [edge cases]
55
- - Success looks like [acceptance criteria]
56
-
57
- Is that accurate?"
58
- ```
59
-
60
- **Challenge Assumptions:**
61
- ```
62
- "I notice you mentioned X. Have you considered Y as an alternative?
63
- It might be simpler because [reason]."
64
- ```
65
-
66
- ## What to Gather
67
15
 
68
- ### Functional Requirements
69
- - What should the feature DO?
70
- - What are the inputs and outputs?
71
- - What are the edge cases?
72
- - What happens on errors?
16
+ ## Description
73
17
 
74
- ### Non-Functional Requirements
75
- - Performance expectations?
76
- - Security considerations?
77
- - Accessibility needs?
78
- - Compatibility requirements?
18
+ This command is an alias for `/goop-plan`.
79
19
 
80
- ### Context & Constraints
81
- - Why is this needed? What problem does it solve?
82
- - What existing code/patterns should be followed?
83
- - Any technical constraints or limitations?
84
- - Timeline or priority considerations?
85
-
86
- ### Acceptance Criteria
87
- - How will we know it's "done"?
88
- - What tests should pass?
89
- - What should the user experience be?
90
-
91
- ## Artifacts Created
92
-
93
- - Understanding of requirements (informal)
94
- - Identified edge cases
95
- - Agreement on acceptance criteria
96
- - Technical research notes (if needed)
97
-
98
- ## Example
99
-
100
- ```
101
- /goop-discuss Add user authentication
102
- ```
103
-
104
- Agent asks:
105
- - "What authentication methods? Email/password? OAuth?"
106
- - "Should sessions persist across browser closes?"
107
- - "Any specific security requirements?"
108
- - "How should errors be displayed?"
109
-
110
- After discussion, agent summarizes understanding and asks for confirmation.
111
-
112
- ## Transition to Plan
113
-
114
- When requirements are clear:
115
- ```
116
- "I have a clear picture of what we need:
117
- [Summary of requirements]
118
-
119
- Ready to move to planning? I'll capture the formal intent
120
- and requirements in the Plan phase."
121
- ```
122
-
123
- ## Next Steps
124
-
125
- After discussion:
126
- - `/goop-plan [description]` - Capture formal intent and requirements
127
-
128
- ## Tips
129
-
130
- - Don't rush to planning - thorough discussion prevents rework
131
- - Ask about edge cases early
132
- - Validate understanding frequently
133
- - Challenge assumptions respectfully
134
- - Search memory for relevant past context
135
-
136
- ---
20
+ In GoopSpec Wave 3, the "discussion" or "interview" phase is an integral part of **Planning**. When you run `/goop-plan`, the agent automatically engages in a discovery conversation to clarify requirements before generating artifacts.
137
21
 
138
- **GoopSpec**: Understand deeply, build correctly.
22
+ See [/goop-plan](./goop-plan.md) for details.
@@ -1,137 +1,71 @@
1
1
  ---
2
2
  name: goop-execute
3
- description: Start the Execute phase - wave-based implementation
3
+ description: Begin wave-based execution
4
+ agent: goop-executor
5
+ spawn: true
6
+ phase: execute
7
+ next-step: "When all waves are complete, verify the work and request acceptance"
8
+ next-command: /goop-accept
9
+ alternatives:
10
+ - command: /goop-status
11
+ when: "To check current progress and wave status"
12
+ - command: /goop-pause
13
+ when: "To save a checkpoint and continue later"
4
14
  ---
5
15
 
6
- # GoopSpec Execute
16
+ # /goop-execute
7
17
 
8
- Implement the specification through wave-based task execution with orchestrated subagents.
18
+ **Start the Execution Phase.** Implement the blueprint using wave-based orchestration.
9
19
 
10
20
  ## Usage
11
21
 
12
- ```
22
+ ```bash
13
23
  /goop-execute
14
24
  ```
15
25
 
16
- ## Workflow Position
17
-
18
- ```
19
- ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
20
- │ PLAN │ ──▶ │ RESEARCH │ ──▶ │ SPECIFY │
21
- │ (Intent) │ │ (Explore) │ │ (Contract) │
22
- └─────────────┘ └─────────────┘ └─────────────┘
23
-
24
- ┌──────────────────────────────────────┘
25
-
26
- ┌─────────────┐ ┌─────────────┐
27
- │ EXECUTE │ ──▶ │ ACCEPT │
28
- │ (Build) │ │ (Verify) │
29
- └─────────────┘ └─────────────┘
30
-
31
- (You are here)
32
- ```
33
-
34
- The Execute phase answers: **Build exactly what the spec says.**
35
-
36
- ## What Happens
26
+ ## How It Works
37
27
 
38
- 1. **Wave-Based Execution** - Tasks grouped into sequential waves:
39
- - **Wave 1: Foundation** - Setup, configuration, base structures
40
- - **Wave 2: Core** - Main feature, business logic, data handling
41
- - **Wave 3: Integration** - Connect components, wire to existing system
42
- - **Wave 4: Polish** - Error handling, edge cases, documentation
28
+ The **Orchestrator** takes control and manages the implementation process. It does not write code directly but delegates to the **Executor** agent.
43
29
 
44
- 2. **Orchestrator Coordination** - Orchestrator acts as CONDUCTOR:
45
- - Delegates tasks to specialized subagents
46
- - Tracks progress in CHRONICLE.md
47
- - Applies deviation rules automatically
48
- - Handles blockers and checkpoints
49
- - **NEVER writes code itself**
30
+ ### 1. Wave-Based Execution
31
+ Tasks are executed in sequential waves (vertical slices):
32
+ - **Wave 1:** Foundation (Core structure)
33
+ - **Wave 2:** Implementation (Main logic)
34
+ - **Wave 3:** Integration (Wiring it up)
35
+ - **Wave 4:** Polish (Refinement & fixes)
50
36
 
51
- 3. **Task Execution** - For each task:
52
- - Read from BLUEPRINT.md
53
- - Check deviation rules
54
- - Delegate to goop-executor agent
55
- - Agent implements with memory protocol
56
- - Atomic commit per task
57
- - Update CHRONICLE.md
58
- - Verify tests pass
37
+ ### 2. Orchestration Loop
38
+ For each task in `BLUEPRINT.md`:
39
+ 1. **Delegate:** Send task to `goop-executor`.
40
+ 2. **Monitor:** Watch for completion or blocks.
41
+ 3. **Verify:** Run tests/checks.
42
+ 4. **Update:** Mark task complete in `CHRONICLE.md`.
59
43
 
60
- 4. **Deviation Handling** - Auto-fix without asking:
61
- - **Rule 1:** Bugs (type errors, logic errors, crashes)
62
- - **Rule 2:** Missing critical functionality (validation, error handling)
63
- - **Rule 3:** Blocking issues (missing deps, broken imports)
64
- - **Rule 4:** STOP for architectural decisions (new tables, framework changes)
44
+ ### 3. Deviation Handling
45
+ The Orchestrator applies rules for issues:
46
+ - **Rule 1-3 (Auto-fix):** Minor bugs, missing imports (fix and continue).
47
+ - **Rule 4 (Architectural):** Major blockers (PAUSE and ask user).
65
48
 
66
- 5. **Checkpoint Handling** - Pause for user input when needed:
67
- - `checkpoint:verify` - User verifies functionality
68
- - `checkpoint:decision` - User makes decision
69
- - `checkpoint:action` - User performs action
49
+ ### 4. Checkpoints
50
+ If user input is needed, the system pauses and creates a checkpoint.
51
+ - **Decision:** User must choose between options (e.g., architecture trade-off).
52
+ - **Verification:** User must verify something (e.g., UI visual check).
53
+ - **Action:** User must perform an action (e.g., add API key).
70
54
 
71
- ## Wave Principles
55
+ ## Output
72
56
 
73
- 1. **Sequential waves** - Wave N completes before Wave N+1 starts
74
- 2. **Vertical slices** - Each wave delivers working functionality
75
- 3. **Atomic commits** - Each task = one commit
76
- 4. **Verification gates** - Tests must pass between waves
77
-
78
- ## Artifacts Created/Updated
79
-
80
- - `CHRONICLE.md` - Real-time progress tracking:
81
- - Current wave and task
82
- - Completed tasks with commit hashes
83
- - Deviations logged
84
- - Blockers noted
85
-
86
- - Git commits - One per task:
87
- ```
88
- feat(wave-task): description
89
-
90
- - Change 1
91
- - Change 2
92
- ```
57
+ - **Code:** Modified source files.
58
+ - **Commits:** Atomic commits per task.
59
+ - **Chronicle:** Updated `.goopspec/CHRONICLE.md`.
93
60
 
94
61
  ## Example
95
62
 
96
- After spec locked for authentication:
97
-
98
- ```
99
- /goop-execute
100
- ```
101
-
102
- Orchestrator executes:
103
- - Wave 1: Setup auth directory, install jose library
104
- - Wave 2: Implement login function, session management
105
- - Wave 3: Wire to API routes, connect to user model
106
- - Wave 4: Add error handling, write tests
107
-
108
- Each task delegated to goop-executor, committed atomically.
109
-
110
- ## Continuation Enforcement
111
-
112
- The agent **CANNOT stop** with incomplete tasks:
113
- - Incomplete todos = forced continuation
114
- - Only checkpoints allow pause
115
- - User must explicitly confirm completion
116
- - Max continuation prompts before escalation
117
-
118
- ## Next Steps
119
-
120
- After execution:
121
- - `/goop-accept` - Verify and accept completion (ACCEPTANCE GATE)
122
-
123
- During execution:
124
- - `/goop-status` - Check progress
125
- - `/goop-pause` - Save checkpoint manually
126
-
127
- ## Quick Mode Execution
128
-
129
- For Quick tasks:
130
- - Abbreviated waves (often just 1-2)
131
- - Faster delegation
132
- - Less formal tracking
133
- - Direct to Accept phase
134
-
135
- ---
63
+ > **User:** `/goop-execute`
64
+ > **Agent:** "Starting Wave 1...
65
+ > [Task 1.1] Setup Auth Context... Done (commit: a1b2c3)
66
+ > [Task 1.2] Create Login Component... Done (commit: d4e5f6)
67
+ > Wave 1 Complete. Verification passed. Starting Wave 2..."
136
68
 
137
- **GoopSpec**: Execute with precision, deliver with confidence.
69
+ ## Interactive Control
70
+ - Use `/goop-status` to check progress.
71
+ - Use `/goop-pause` to stop safely.