opencode-goopspec 0.1.2 → 0.1.4

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 (60) hide show
  1. package/README.md +255 -331
  2. package/agents/goop-debugger.md +175 -172
  3. package/agents/goop-designer.md +232 -160
  4. package/agents/goop-executor.md +197 -127
  5. package/agents/goop-explorer.md +148 -150
  6. package/agents/goop-librarian.md +218 -164
  7. package/agents/goop-orchestrator.md +392 -280
  8. package/agents/goop-planner.md +331 -153
  9. package/agents/goop-researcher.md +198 -126
  10. package/agents/goop-tester.md +277 -202
  11. package/agents/goop-verifier.md +191 -201
  12. package/agents/goop-writer.md +241 -133
  13. package/agents/memory-distiller.md +228 -136
  14. package/commands/goop-accept.md +434 -160
  15. package/commands/goop-amend.md +35 -151
  16. package/commands/goop-complete.md +39 -183
  17. package/commands/goop-debug.md +33 -298
  18. package/commands/goop-discuss.md +381 -85
  19. package/commands/goop-execute.md +391 -108
  20. package/commands/goop-help.md +11 -0
  21. package/commands/goop-map-codebase.md +16 -3
  22. package/commands/goop-memory.md +11 -0
  23. package/commands/goop-milestone.md +29 -192
  24. package/commands/goop-pause.md +31 -40
  25. package/commands/goop-plan.md +458 -46
  26. package/commands/goop-quick.md +38 -142
  27. package/commands/goop-recall.md +11 -0
  28. package/commands/goop-remember.md +12 -0
  29. package/commands/goop-research.md +52 -73
  30. package/commands/goop-resume.md +28 -37
  31. package/commands/goop-setup.md +225 -124
  32. package/commands/goop-specify.md +321 -121
  33. package/commands/goop-status.md +256 -110
  34. package/dist/index.js +6289 -2820
  35. package/package.json +1 -1
  36. package/references/context-injection.md +307 -0
  37. package/references/discovery-interview.md +278 -0
  38. package/references/enforcement-system.md +213 -0
  39. package/references/handoff-protocol.md +290 -0
  40. package/references/interactive-questioning.md +122 -0
  41. package/references/model-profiles.md +1 -1
  42. package/references/phase-gates.md +360 -0
  43. package/references/plugin-architecture.md +212 -0
  44. package/references/response-format.md +41 -9
  45. package/references/subagent-protocol.md +83 -33
  46. package/references/ui-interaction-patterns.md +133 -0
  47. package/references/visual-style.md +199 -0
  48. package/references/workflow-accept.md +60 -273
  49. package/references/workflow-execute.md +63 -274
  50. package/references/workflow-plan.md +86 -133
  51. package/references/workflow-research.md +78 -186
  52. package/references/workflow-specify.md +64 -221
  53. package/references/xml-response-schema.md +236 -0
  54. package/templates/blueprint.md +88 -41
  55. package/templates/chronicle.md +130 -16
  56. package/templates/handoff.md +140 -0
  57. package/templates/project.md +114 -0
  58. package/templates/requirements.md +121 -0
  59. package/templates/spec.md +85 -20
  60. package/templates/state.md +103 -0
@@ -0,0 +1,140 @@
1
+ # Session Handoff
2
+
3
+ **Generated:** {{generated_timestamp}}
4
+ **Phase:** {{current_phase}}
5
+ **Session:** {{session_id}}
6
+
7
+ ---
8
+
9
+ ## Accomplished This Session
10
+
11
+ ### Completed Tasks
12
+ {{#completed_tasks}}
13
+ - [x] {{task_id}}: {{description}} {{#commit}}(commit: `{{commit}}`){{/commit}}
14
+ {{/completed_tasks}}
15
+
16
+ ### Key Outcomes
17
+ {{#key_outcomes}}
18
+ - {{.}}
19
+ {{/key_outcomes}}
20
+
21
+ ### Decisions Made
22
+ {{#decisions}}
23
+ - **{{title}}**: {{choice}} — {{rationale}}
24
+ {{/decisions}}
25
+
26
+ ---
27
+
28
+ ## Current State
29
+
30
+ ### Workflow Position
31
+ | Attribute | Value |
32
+ |-----------|-------|
33
+ | **Phase** | {{phase}} |
34
+ | **Spec Locked** | {{spec_locked}} |
35
+ | **Wave** | {{current_wave}} of {{total_waves}} |
36
+ | **Task** | {{current_task}} of {{total_tasks}} |
37
+
38
+ ### Files Modified
39
+ {{#files_modified}}
40
+ - `{{path}}` — {{description}}
41
+ {{/files_modified}}
42
+
43
+ ### Commits Made
44
+ {{#commits}}
45
+ - `{{sha}}` — {{message}}
46
+ {{/commits}}
47
+
48
+ ---
49
+
50
+ ## Next Session Instructions
51
+
52
+ ### Command to Run
53
+ ```
54
+ {{next_command}}
55
+ ```
56
+
57
+ ### Files to Read First
58
+ {{#files_to_read}}
59
+ 1. `{{path}}` — {{reason}}
60
+ {{/files_to_read}}
61
+
62
+ ### Context Summary
63
+
64
+ {{context_summary}}
65
+
66
+ ### Immediate Next Task
67
+
68
+ **Task:** {{next_task_id}} — {{next_task_name}}
69
+
70
+ **Files:**
71
+ {{#next_task_files}}
72
+ - `{{.}}`
73
+ {{/next_task_files}}
74
+
75
+ **Action:** {{next_task_action}}
76
+
77
+ **Verify:** `{{next_task_verify}}`
78
+
79
+ ---
80
+
81
+ ## Warnings & Blockers
82
+
83
+ ### Active Blockers
84
+ {{#blockers}}
85
+ - **{{title}}**: {{description}}
86
+ - Type: {{type}}
87
+ - Resolution: {{resolution}}
88
+ {{/blockers}}
89
+
90
+ {{^blockers}}
91
+ None — clear to proceed.
92
+ {{/blockers}}
93
+
94
+ ### Gotchas Discovered
95
+ {{#gotchas}}
96
+ - {{.}}
97
+ {{/gotchas}}
98
+
99
+ {{^gotchas}}
100
+ None discovered this session.
101
+ {{/gotchas}}
102
+
103
+ ### Pending Decisions
104
+ {{#pending_decisions}}
105
+ - **{{title}}**: {{description}}
106
+ - Options: {{options}}
107
+ - Recommendation: {{recommendation}}
108
+ {{/pending_decisions}}
109
+
110
+ {{^pending_decisions}}
111
+ None — no user input needed.
112
+ {{/pending_decisions}}
113
+
114
+ ---
115
+
116
+ ## Memory Saved
117
+
118
+ Key learnings persisted to memory this session:
119
+
120
+ {{#memory_saved}}
121
+ - **{{title}}** ({{type}}, importance: {{importance}})
122
+ {{/memory_saved}}
123
+
124
+ ---
125
+
126
+ ## Resume Checklist
127
+
128
+ For the next session:
129
+
130
+ - [ ] Start new session for fresh context
131
+ - [ ] Run: `{{next_command}}`
132
+ - [ ] Read files listed above
133
+ - [ ] Continue with immediate next task
134
+
135
+ ---
136
+
137
+ *Start a new session for fresh 200k context window.*
138
+ *All state is preserved in GoopSpec files.*
139
+
140
+ *Session Handoff — GoopSpec v0.1.4*
@@ -0,0 +1,114 @@
1
+ # PROJECT: {{project_name}}
2
+
3
+ **Type:** {{project_type}}
4
+ **Created:** {{created_date}}
5
+ **Status:** Active
6
+
7
+ ---
8
+
9
+ ## Vision
10
+
11
+ {{vision_statement}}
12
+
13
+ ### Why This Matters
14
+ {{why_it_matters}}
15
+
16
+ ### Target Users
17
+ {{target_users}}
18
+
19
+ ---
20
+
21
+ ## Success Criteria
22
+
23
+ When complete, we will have:
24
+
25
+ {{#success_criteria}}
26
+ - {{.}}
27
+ {{/success_criteria}}
28
+
29
+ ---
30
+
31
+ ## Technical Foundation
32
+
33
+ ### Stack
34
+ | Layer | Technology | Version |
35
+ |-------|------------|---------|
36
+ | Runtime | {{runtime}} | {{runtime_version}} |
37
+ | Language | {{language}} | {{language_version}} |
38
+ | Framework | {{framework}} | {{framework_version}} |
39
+ | Database | {{database}} | {{database_version}} |
40
+ | Testing | {{testing}} | {{testing_version}} |
41
+
42
+ ### Key Dependencies
43
+ {{#dependencies}}
44
+ - `{{name}}`: {{purpose}}
45
+ {{/dependencies}}
46
+
47
+ ---
48
+
49
+ ## Conventions
50
+
51
+ ### Naming
52
+ - **Files:** {{file_naming}}
53
+ - **Functions:** {{function_naming}}
54
+ - **Components:** {{component_naming}}
55
+ - **Constants:** {{constant_naming}}
56
+
57
+ ### Code Style
58
+ - **Exports:** {{export_style}}
59
+ - **Types:** {{type_style}}
60
+ - **Error Handling:** {{error_handling}}
61
+
62
+ ### Git
63
+ - **Branch Format:** {{branch_format}}
64
+ - **Commit Format:** {{commit_format}}
65
+ - **PR Process:** {{pr_process}}
66
+
67
+ ---
68
+
69
+ ## Architecture Overview
70
+
71
+ {{architecture_description}}
72
+
73
+ ### Directory Structure
74
+ ```
75
+ {{directory_structure}}
76
+ ```
77
+
78
+ ### Key Integration Points
79
+ {{#integration_points}}
80
+ - **{{name}}:** {{description}}
81
+ {{/integration_points}}
82
+
83
+ ---
84
+
85
+ ## Boundaries
86
+
87
+ ### Always Do
88
+ {{#always_do}}
89
+ - {{.}}
90
+ {{/always_do}}
91
+
92
+ ### Ask First
93
+ {{#ask_first}}
94
+ - {{.}}
95
+ {{/ask_first}}
96
+
97
+ ### Never Do
98
+ {{#never_do}}
99
+ - {{.}}
100
+ {{/never_do}}
101
+
102
+ ---
103
+
104
+ ## Milestones
105
+
106
+ | Milestone | Status | Target |
107
+ |-----------|--------|--------|
108
+ {{#milestones}}
109
+ | {{name}} | {{status}} | {{target_date}} |
110
+ {{/milestones}}
111
+
112
+ ---
113
+
114
+ *Project foundation document - GoopSpec v0.1.4*
@@ -0,0 +1,121 @@
1
+ # REQUIREMENTS: {{feature_name}}
2
+
3
+ **Generated:** {{generated_date}}
4
+ **Interview Status:** {{interview_status}}
5
+ **Ready for Planning:** {{ready_for_planning}}
6
+
7
+ ---
8
+
9
+ ## Vision
10
+
11
+ {{vision_statement}}
12
+
13
+ **Problem Solved:** {{problem_solved}}
14
+
15
+ **Why Now:** {{why_now}}
16
+
17
+ ---
18
+
19
+ ## Must-Haves (The Contract)
20
+
21
+ These are non-negotiable. The feature is incomplete without ALL of these:
22
+
23
+ {{#must_haves}}
24
+ - [ ] **{{id}}**: {{title}}
25
+ - {{description}}
26
+ - **Acceptance:** {{acceptance_criteria}}
27
+ {{/must_haves}}
28
+
29
+ ---
30
+
31
+ ## Nice-to-Haves
32
+
33
+ These enhance the deliverable but are not required for acceptance:
34
+
35
+ {{#nice_to_haves}}
36
+ - [ ] **{{id}}**: {{title}}
37
+ - {{description}}
38
+ - **Defer if:** {{defer_condition}}
39
+ {{/nice_to_haves}}
40
+
41
+ ---
42
+
43
+ ## Out of Scope
44
+
45
+ Explicitly excluded from this work:
46
+
47
+ {{#out_of_scope}}
48
+ - **{{item}}**: {{reason}}
49
+ {{/out_of_scope}}
50
+
51
+ ---
52
+
53
+ ## Constraints
54
+
55
+ ### Technical Constraints
56
+ {{#technical_constraints}}
57
+ - {{.}}
58
+ {{/technical_constraints}}
59
+
60
+ ### Practical Constraints
61
+ {{#practical_constraints}}
62
+ - {{.}}
63
+ {{/practical_constraints}}
64
+
65
+ ### Integration Constraints
66
+ {{#integration_constraints}}
67
+ - **{{system}}:** {{constraint}}
68
+ {{/integration_constraints}}
69
+
70
+ ---
71
+
72
+ ## Assumptions
73
+
74
+ We are assuming the following to be true:
75
+
76
+ {{#assumptions}}
77
+ - **{{assumption}}**
78
+ - If false: {{impact}}
79
+ {{/assumptions}}
80
+
81
+ ---
82
+
83
+ ## Risks & Mitigations
84
+
85
+ | Risk | Impact | Likelihood | Mitigation |
86
+ |------|--------|------------|------------|
87
+ {{#risks}}
88
+ | {{risk}} | {{impact}} | {{likelihood}} | {{mitigation}} |
89
+ {{/risks}}
90
+
91
+ ---
92
+
93
+ ## Open Questions
94
+
95
+ Questions that need answers before or during planning:
96
+
97
+ {{#open_questions}}
98
+ - [ ] **Q{{number}}:** {{question}}
99
+ - Status: {{status}}
100
+ - Answer: {{answer}}
101
+ {{/open_questions}}
102
+
103
+ ---
104
+
105
+ ## Interview Checklist
106
+
107
+ | Question | Answered |
108
+ |----------|----------|
109
+ | Vision defined | {{vision_answered}} |
110
+ | Must-haves listed | {{must_haves_answered}} |
111
+ | Constraints documented | {{constraints_answered}} |
112
+ | Out of scope defined | {{out_of_scope_answered}} |
113
+ | Assumptions listed | {{assumptions_answered}} |
114
+ | Risks identified | {{risks_answered}} |
115
+
116
+ **Interview Complete:** {{interview_complete}}
117
+
118
+ ---
119
+
120
+ *Discovery interview output - GoopSpec v0.1.4*
121
+ *Run `/goop-plan` when ready for planning.*
package/templates/spec.md CHANGED
@@ -4,6 +4,8 @@
4
4
  **Created:** {{created_date}}
5
5
  **Last Updated:** {{updated_date}}
6
6
  **Status:** {{status}}
7
+ **Locked:** {{locked}}
8
+ {{#locked_at}}**Locked At:** {{locked_at}}{{/locked_at}}
7
9
 
8
10
  ---
9
11
 
@@ -13,6 +15,8 @@
13
15
 
14
16
  **Why this matters:** {{why}}
15
17
 
18
+ **Target Users:** {{target_users}}
19
+
16
20
  ---
17
21
 
18
22
  ## Must-Haves (The Contract)
@@ -20,17 +24,27 @@
20
24
  These are non-negotiable. The spec is not complete until ALL must-haves are delivered.
21
25
 
22
26
  {{#must_haves}}
23
- - [ ] **{{title}}**: {{description}}
24
- {{/must_haves}}
27
+ ### MH{{number}}: {{title}}
28
+
29
+ {{description}}
30
+
31
+ **Acceptance Criteria:**
32
+ {{#acceptance_criteria}}
33
+ - [ ] {{.}}
34
+ {{/acceptance_criteria}}
35
+
36
+ **Traced To:** {{#traced_to}}Wave {{wave}}, Task {{task}}{{/traced_to}}{{^traced_to}}*Not yet mapped*{{/traced_to}}
25
37
 
26
38
  ---
39
+ {{/must_haves}}
27
40
 
28
41
  ## Nice-to-Haves
29
42
 
30
43
  These enhance the deliverable but are not required for acceptance.
31
44
 
32
45
  {{#nice_to_haves}}
33
- - [ ] **{{title}}**: {{description}}
46
+ - [ ] **NH{{number}}: {{title}}**: {{description}}
47
+ - Defer if: {{defer_condition}}
34
48
  {{/nice_to_haves}}
35
49
 
36
50
  ---
@@ -40,7 +54,7 @@ These enhance the deliverable but are not required for acceptance.
40
54
  Explicitly excluded to prevent scope creep.
41
55
 
42
56
  {{#out_of_scope}}
43
- - {{item}}
57
+ - **{{item}}** — {{reason}}
44
58
  {{/out_of_scope}}
45
59
 
46
60
  ---
@@ -48,17 +62,21 @@ Explicitly excluded to prevent scope creep.
48
62
  ## Technical Constraints
49
63
 
50
64
  ### Stack (Non-Negotiable)
51
- - **Runtime:** {{runtime}}
52
- - **Language:** {{language}}
53
- - **Framework:** {{framework}}
54
- - **Database:** {{database}}
55
- - **Testing:** {{testing}}
65
+ | Component | Technology | Version |
66
+ |-----------|------------|---------|
67
+ | Runtime | {{runtime}} | {{runtime_version}} |
68
+ | Language | {{language}} | {{language_version}} |
69
+ | Framework | {{framework}} | {{framework_version}} |
70
+ | Database | {{database}} | {{database_version}} |
71
+ | Testing | {{testing}} | {{testing_version}} |
56
72
 
57
73
  ### Conventions
58
- - **Files:** {{file_naming}}
59
- - **Components:** {{component_naming}}
60
- - **Functions:** {{function_naming}}
61
- - **Commits:** {{commit_format}}
74
+ | Aspect | Standard |
75
+ |--------|----------|
76
+ | Files | {{file_naming}} |
77
+ | Components | {{component_naming}} |
78
+ | Functions | {{function_naming}} |
79
+ | Commits | {{commit_format}} |
62
80
 
63
81
  ### Boundaries
64
82
 
@@ -79,25 +97,72 @@ Explicitly excluded to prevent scope creep.
79
97
 
80
98
  ---
81
99
 
100
+ ## Assumptions
101
+
102
+ We are assuming:
103
+
104
+ {{#assumptions}}
105
+ - **{{assumption}}**
106
+ - If false: {{impact}}
107
+ {{/assumptions}}
108
+
109
+ ---
110
+
111
+ ## Risks & Mitigations
112
+
113
+ | Risk | Impact | Likelihood | Mitigation |
114
+ |------|--------|------------|------------|
115
+ {{#risks}}
116
+ | {{risk}} | {{impact}} | {{likelihood}} | {{mitigation}} |
117
+ {{/risks}}
118
+
119
+ ---
120
+
121
+ ## Traceability Matrix
122
+
123
+ Every must-have maps to specific blueprint tasks:
124
+
125
+ | Must-Have | Covered By | Status |
126
+ |-----------|------------|--------|
127
+ {{#traceability}}
128
+ | MH{{mh_number}}: {{mh_title}} | Wave {{wave}}, Task {{task}} | {{status}} |
129
+ {{/traceability}}
130
+
131
+ **Coverage:** {{coverage_percentage}}% of must-haves mapped
132
+
133
+ ---
134
+
82
135
  ## Acceptance Criteria
83
136
 
84
137
  The spec is complete when:
85
138
 
86
- {{#acceptance_criteria}}
139
+ {{#final_acceptance}}
87
140
  1. {{.}}
88
- {{/acceptance_criteria}}
141
+ {{/final_acceptance}}
89
142
 
90
143
  ---
91
144
 
92
145
  ## Amendment History
93
146
 
94
- | Version | Date | Change | Approved By |
95
- |---------|------|--------|-------------|
147
+ | Version | Date | Change | Impact | Approved By |
148
+ |---------|------|--------|--------|-------------|
96
149
  {{#amendments}}
97
- | {{version}} | {{date}} | {{change}} | {{approved_by}} |
150
+ | {{version}} | {{date}} | {{change}} | {{impact}} | {{approved_by}} |
98
151
  {{/amendments}}
99
152
 
100
153
  ---
101
154
 
102
- *This specification is a CONTRACT. Changes require explicit amendment.*
103
- *GoopSpec v0.1.0*
155
+ ## Verification Protocol
156
+
157
+ Before acceptance, verify:
158
+
159
+ - [ ] All must-haves pass acceptance criteria
160
+ - [ ] All tests pass
161
+ - [ ] No type errors
162
+ - [ ] Security checklist reviewed
163
+ - [ ] Documentation updated
164
+
165
+ ---
166
+
167
+ *This specification is a CONTRACT. Changes require explicit amendment via `/goop-amend`.*
168
+ *GoopSpec v0.1.4*
@@ -0,0 +1,103 @@
1
+ # Current State
2
+
3
+ **Last Updated:** {{last_updated}}
4
+ **Session:** {{session_id}}
5
+
6
+ ---
7
+
8
+ ## Workflow Position
9
+
10
+ | Attribute | Value |
11
+ |-----------|-------|
12
+ | **Phase** | {{phase}} |
13
+ | **Interview Complete** | {{interview_complete}} |
14
+ | **Spec Locked** | {{spec_locked}} |
15
+ | **Wave** | {{current_wave}} of {{total_waves}} |
16
+ | **Task** | {{current_task}} of {{total_tasks}} |
17
+
18
+ ---
19
+
20
+ ## Quick Resume
21
+
22
+ ### Command to Run
23
+ ```
24
+ {{next_command}}
25
+ ```
26
+
27
+ ### What's Next
28
+ {{next_task_description}}
29
+
30
+ ### Files to Read
31
+ {{#files_to_read}}
32
+ 1. `{{.}}`
33
+ {{/files_to_read}}
34
+
35
+ ---
36
+
37
+ ## Progress Summary
38
+
39
+ ### Completed
40
+ {{#completed_items}}
41
+ - [x] {{.}}
42
+ {{/completed_items}}
43
+
44
+ ### In Progress
45
+ {{#in_progress_items}}
46
+ - [ ] {{.}} ← **Current**
47
+ {{/in_progress_items}}
48
+
49
+ ### Remaining
50
+ {{#remaining_items}}
51
+ - [ ] {{.}}
52
+ {{/remaining_items}}
53
+
54
+ ---
55
+
56
+ ## Active Blockers
57
+
58
+ {{#blockers}}
59
+ ### {{title}}
60
+ - **Type:** {{type}}
61
+ - **Impact:** {{impact}}
62
+ - **Resolution:** {{resolution}}
63
+ {{/blockers}}
64
+
65
+ {{^blockers}}
66
+ No active blockers.
67
+ {{/blockers}}
68
+
69
+ ---
70
+
71
+ ## Pending Decisions
72
+
73
+ {{#pending_decisions}}
74
+ ### {{title}}
75
+ - **Context:** {{context}}
76
+ - **Options:** {{options}}
77
+ - **Recommendation:** {{recommendation}}
78
+ {{/pending_decisions}}
79
+
80
+ {{^pending_decisions}}
81
+ No pending decisions.
82
+ {{/pending_decisions}}
83
+
84
+ ---
85
+
86
+ ## Recent Activity
87
+
88
+ | Time | Action | Agent |
89
+ |------|--------|-------|
90
+ {{#recent_activity}}
91
+ | {{time}} | {{action}} | {{agent}} |
92
+ {{/recent_activity}}
93
+
94
+ ---
95
+
96
+ ## Session Context
97
+
98
+ {{session_context}}
99
+
100
+ ---
101
+
102
+ *Human-readable state mirror - GoopSpec v0.1.4*
103
+ *See also: state.json for machine-readable state*