opencode-goopspec 0.1.5 → 0.1.6
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.
- package/README.md +7 -7
- package/agents/goop-debugger.md +2 -2
- package/agents/goop-designer.md +2 -2
- package/agents/goop-executor.md +17 -7
- package/agents/goop-explorer.md +2 -2
- package/agents/goop-librarian.md +1 -1
- package/agents/goop-orchestrator.md +47 -5
- package/agents/goop-planner.md +3 -3
- package/agents/goop-researcher.md +2 -2
- package/agents/goop-tester.md +1 -1
- package/agents/goop-verifier.md +2 -2
- package/agents/goop-writer.md +1 -1
- package/agents/memory-distiller.md +2 -2
- package/commands/goop-accept.md +27 -401
- package/commands/goop-discuss.md +29 -393
- package/commands/goop-execute.md +22 -356
- package/commands/goop-map-codebase.md +44 -478
- package/commands/goop-plan.md +23 -499
- package/commands/goop-quick.md +58 -31
- package/commands/goop-setup.md +7 -4
- package/commands/goop-specify.md +26 -291
- package/commands/goop-status.md +26 -261
- package/dist/index.js +808 -182
- package/dist/worker/index.js +1 -1
- package/package.json +2 -1
- package/references/accept-process.md +402 -0
- package/references/context-injection.md +1 -1
- package/references/discovery-interview.md +1 -1
- package/references/discuss-process.md +383 -0
- package/references/dispatch-patterns.md +46 -21
- package/references/enforcement-system.md +1 -1
- package/references/execute-process.md +358 -0
- package/references/git-workflow.md +349 -0
- package/references/handoff-protocol.md +1 -1
- package/references/map-codebase-process.md +353 -0
- package/references/model-profiles.md +16 -16
- package/references/orchestrator-philosophy.md +1 -1
- package/references/phase-gates.md +1 -1
- package/references/plan-process.md +397 -0
- package/references/plugin-architecture.md +1 -1
- package/references/quick-process.md +343 -0
- package/references/response-format.md +2 -2
- package/references/specify-process.md +251 -0
- package/references/status-process.md +253 -0
- package/references/subagent-protocol.md +2 -2
- package/references/team-coordination.md +183 -0
- package/references/xml-response-schema.md +5 -5
- package/skills/accessibility/skill.md +1 -1
- package/skills/accessibility-testing/skill.md +1 -1
- package/skills/api-docs/skill.md +1 -1
- package/skills/architecture-design/skill.md +1 -1
- package/skills/atomic-commits/skill.md +92 -15
- package/skills/code-review/skill.md +1 -1
- package/skills/codebase-mapping/skill.md +1 -1
- package/skills/convention-detection/skill.md +1 -1
- package/skills/debugging/skill.md +1 -1
- package/skills/deviation-handling/skill.md +1 -1
- package/skills/documentation/skill.md +1 -1
- package/skills/goop-core/skill.md +48 -11
- package/skills/memory-usage/skill.md +1 -1
- package/skills/parallel-planning/skill.md +1 -1
- package/skills/pattern-extraction/skill.md +1 -1
- package/skills/performance-optimization/skill.md +1 -1
- package/skills/playwright/skill.md +1 -1
- package/skills/playwright-testing/skill.md +1 -1
- package/skills/progress-tracking/skill.md +1 -1
- package/skills/readme-generation/skill.md +1 -1
- package/skills/research/skill.md +1 -1
- package/skills/responsive-design/skill.md +1 -1
- package/skills/scientific-method/skill.md +1 -1
- package/skills/security-audit/skill.md +1 -1
- package/skills/task-decomposition/skill.md +1 -1
- package/skills/task-delegation/skill.md +60 -34
- package/skills/technical-writing/skill.md +1 -1
- package/skills/testing/skill.md +1 -1
- package/skills/ui-design/skill.md +1 -1
- package/skills/ux-patterns/skill.md +1 -1
- package/skills/verification/skill.md +1 -1
- package/skills/visual-regression/skill.md +1 -1
- package/templates/blueprint.md +1 -1
- package/templates/chronicle.md +1 -1
- package/templates/handoff.md +1 -1
- package/templates/milestone.md +1 -1
- package/templates/project.md +1 -1
- package/templates/requirements.md +1 -1
- package/templates/research.md +1 -1
- package/templates/retrospective.md +1 -1
- package/templates/spec.md +1 -1
- package/templates/state.md +1 -1
- package/templates/summary.md +1 -1
|
@@ -14,7 +14,7 @@ All GoopSpec agents use a standardized XML envelope for machine-parseable handof
|
|
|
14
14
|
Every agent response MUST include this XML block at the END of their response:
|
|
15
15
|
|
|
16
16
|
```xml
|
|
17
|
-
<goop_report version="0.1.
|
|
17
|
+
<goop_report version="0.1.6">
|
|
18
18
|
<status>COMPLETE|PARTIAL|BLOCKED|CHECKPOINT</status>
|
|
19
19
|
<agent>goop-[type]</agent>
|
|
20
20
|
<task_id>W[wave].T[task]</task_id>
|
|
@@ -100,7 +100,7 @@ Every agent response MUST include this XML block at the END of their response:
|
|
|
100
100
|
|
|
101
101
|
### Executor Response
|
|
102
102
|
```xml
|
|
103
|
-
<goop_report version="0.1.
|
|
103
|
+
<goop_report version="0.1.6">
|
|
104
104
|
<status>COMPLETE</status>
|
|
105
105
|
<agent>goop-executor</agent>
|
|
106
106
|
<task_id>W2.T3</task_id>
|
|
@@ -149,7 +149,7 @@ Every agent response MUST include this XML block at the END of their response:
|
|
|
149
149
|
|
|
150
150
|
### Planner Response
|
|
151
151
|
```xml
|
|
152
|
-
<goop_report version="0.1.
|
|
152
|
+
<goop_report version="0.1.6">
|
|
153
153
|
<status>COMPLETE</status>
|
|
154
154
|
<agent>goop-planner</agent>
|
|
155
155
|
<task_name>Create execution blueprint</task_name>
|
|
@@ -188,7 +188,7 @@ Every agent response MUST include this XML block at the END of their response:
|
|
|
188
188
|
|
|
189
189
|
### Blocked Response
|
|
190
190
|
```xml
|
|
191
|
-
<goop_report version="0.1.
|
|
191
|
+
<goop_report version="0.1.6">
|
|
192
192
|
<status>BLOCKED</status>
|
|
193
193
|
<agent>goop-executor</agent>
|
|
194
194
|
<task_id>W2.T2</task_id>
|
|
@@ -233,4 +233,4 @@ Every agent response MUST include this XML block at the END of their response:
|
|
|
233
233
|
|
|
234
234
|
---
|
|
235
235
|
|
|
236
|
-
*GoopSpec XML Response Schema v0.1.
|
|
236
|
+
*GoopSpec XML Response Schema v0.1.6*
|
package/skills/api-docs/skill.md
CHANGED
|
@@ -7,47 +7,124 @@ triggers:
|
|
|
7
7
|
- git
|
|
8
8
|
- atomic
|
|
9
9
|
- history
|
|
10
|
-
version: 0.1.
|
|
10
|
+
version: 0.1.6
|
|
11
11
|
---
|
|
12
12
|
|
|
13
13
|
# Atomic Commits Skill
|
|
14
14
|
|
|
15
15
|
## Purpose
|
|
16
|
-
Create small, focused commits that each represent a single logical change.
|
|
17
16
|
|
|
18
|
-
|
|
17
|
+
Create small, focused commits that each represent a single logical change. All commits must be professional and universally understandable.
|
|
18
|
+
|
|
19
|
+
## Core Principles
|
|
19
20
|
|
|
20
21
|
1. **One Change Per Commit** - Each commit should do one thing
|
|
21
22
|
2. **Buildable State** - Every commit should leave the code in a working state
|
|
22
23
|
3. **Meaningful Messages** - Commit messages explain the why, not just the what
|
|
23
24
|
4. **Reviewable Size** - Commits should be easy to review (< 200 lines ideal)
|
|
25
|
+
5. **Universal Language** - No internal jargon, phases, or task references
|
|
26
|
+
|
|
27
|
+
## Critical: Universal Commit Messages
|
|
28
|
+
|
|
29
|
+
**NEVER include in commit messages:**
|
|
30
|
+
- GoopSpec phases, waves, or task IDs (W1.T2, Phase 3, etc.)
|
|
31
|
+
- References to SPEC.md, BLUEPRINT.md, or planning documents
|
|
32
|
+
- Agent names or orchestration terminology
|
|
33
|
+
- Internal must-have IDs (MH-01, etc.)
|
|
34
|
+
|
|
35
|
+
Write commits as if no one on the team knows GoopSpec exists.
|
|
24
36
|
|
|
25
37
|
## Commit Structure
|
|
26
38
|
|
|
27
39
|
```
|
|
28
|
-
type(scope):
|
|
40
|
+
type(scope): concise but descriptive title (max 72 chars)
|
|
29
41
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
the decision.
|
|
42
|
+
[2-4 sentence paragraph explaining context and motivation.
|
|
43
|
+
Why was this change needed? What problem does it solve?]
|
|
33
44
|
|
|
34
|
-
|
|
45
|
+
Changes:
|
|
46
|
+
- Specific change with context
|
|
47
|
+
- Another change with why it matters
|
|
48
|
+
|
|
49
|
+
[Optional: Breaking changes, migration notes]
|
|
35
50
|
```
|
|
36
51
|
|
|
37
52
|
## Types
|
|
38
53
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
54
|
+
| Type | Use For |
|
|
55
|
+
|------|---------|
|
|
56
|
+
| `feat` | New feature or capability |
|
|
57
|
+
| `fix` | Bug fix |
|
|
58
|
+
| `refactor` | Code restructuring (no behavior change) |
|
|
59
|
+
| `docs` | Documentation only |
|
|
60
|
+
| `test` | Adding or updating tests |
|
|
61
|
+
| `chore` | Config, deps, build tooling |
|
|
62
|
+
| `style` | Formatting, whitespace |
|
|
63
|
+
| `perf` | Performance improvements |
|
|
64
|
+
|
|
65
|
+
## Good vs Bad Examples
|
|
66
|
+
|
|
67
|
+
**Good:**
|
|
68
|
+
```
|
|
69
|
+
feat(auth): Add OAuth2 login with Google and GitHub
|
|
70
|
+
|
|
71
|
+
Users can now sign in using their Google or GitHub accounts.
|
|
72
|
+
This reduces friction for new user onboarding and leverages
|
|
73
|
+
existing identity providers for security.
|
|
74
|
+
|
|
75
|
+
Changes:
|
|
76
|
+
- Add OAuth2 client configuration
|
|
77
|
+
- Implement callback handlers for each provider
|
|
78
|
+
- Add provider selection UI to login page
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**Bad:**
|
|
82
|
+
```
|
|
83
|
+
feat(auth): Wave 2 Task 4 - OAuth implementation
|
|
84
|
+
|
|
85
|
+
Completed W2.T4 from BLUEPRINT.md per MH-05 specification.
|
|
86
|
+
goop-executor implemented this feature.
|
|
87
|
+
|
|
88
|
+
Changes:
|
|
89
|
+
- Implemented as specified in SPEC.md
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Single vs Multiple Commits
|
|
93
|
+
|
|
94
|
+
**Single commit when:**
|
|
95
|
+
- All changes serve one purpose
|
|
96
|
+
- Changes are tightly coupled
|
|
97
|
+
- Small scope (<100 lines, <5 files)
|
|
98
|
+
|
|
99
|
+
**Multiple commits when:**
|
|
100
|
+
- Unrelated fixes mixed with features
|
|
101
|
+
- Refactoring separate from new functionality
|
|
102
|
+
- Tests added independently
|
|
103
|
+
- Config changes separate from code
|
|
104
|
+
|
|
105
|
+
## Pre-Commit Checklist
|
|
106
|
+
|
|
107
|
+
- [ ] Tests pass
|
|
108
|
+
- [ ] No TypeScript/linting errors
|
|
109
|
+
- [ ] No console.log or debug code
|
|
110
|
+
- [ ] Message is specific (not generic)
|
|
111
|
+
- [ ] Message explains WHY
|
|
112
|
+
- [ ] No internal references (phases, waves, tasks)
|
|
113
|
+
- [ ] GPG signing preserved
|
|
114
|
+
|
|
115
|
+
## Reference
|
|
116
|
+
|
|
117
|
+
For complete Git workflow guidance, load:
|
|
118
|
+
```
|
|
119
|
+
goop_reference({ name: "git-workflow" })
|
|
120
|
+
```
|
|
46
121
|
|
|
47
122
|
## Anti-Patterns to Avoid
|
|
48
123
|
|
|
49
124
|
- "WIP" commits
|
|
50
125
|
- "Fix typo" without context
|
|
126
|
+
- "Update files" or "Minor changes"
|
|
51
127
|
- Multiple unrelated changes in one commit
|
|
52
128
|
- Breaking commits (code doesn't build)
|
|
53
129
|
- Giant commits that do everything
|
|
130
|
+
- Internal jargon in messages
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: goop-core
|
|
3
|
-
description: Core GoopSpec 0.1.
|
|
3
|
+
description: Core GoopSpec 0.1.6 operations - the 5-phase spec-driven workflow
|
|
4
4
|
category: core
|
|
5
5
|
triggers:
|
|
6
6
|
- goop
|
|
@@ -8,10 +8,10 @@ triggers:
|
|
|
8
8
|
- workflow
|
|
9
9
|
- plan
|
|
10
10
|
- execute
|
|
11
|
-
version: 0.1.
|
|
11
|
+
version: 0.1.6
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
-
# GoopSpec 0.1.
|
|
14
|
+
# GoopSpec 0.1.6 Core Operations
|
|
15
15
|
|
|
16
16
|
## The 5-Phase Workflow
|
|
17
17
|
|
|
@@ -299,25 +299,62 @@ STOP and ask user for:
|
|
|
299
299
|
|
|
300
300
|
---
|
|
301
301
|
|
|
302
|
-
##
|
|
302
|
+
## Git Workflow
|
|
303
|
+
|
|
304
|
+
**CRITICAL:** All commits and PRs must use universal language. Never reference:
|
|
305
|
+
- GoopSpec phases, waves, or task IDs (W1.T2, Phase 3, etc.)
|
|
306
|
+
- Internal documents (SPEC.md, BLUEPRINT.md, must-have IDs)
|
|
307
|
+
- Agent names or orchestration concepts
|
|
308
|
+
|
|
309
|
+
Write as if no one knows GoopSpec exists.
|
|
310
|
+
|
|
311
|
+
### Commit Format
|
|
303
312
|
|
|
304
313
|
```
|
|
305
|
-
type(
|
|
314
|
+
type(scope): concise but descriptive title (max 72 chars)
|
|
315
|
+
|
|
316
|
+
[2-4 sentence paragraph explaining context and motivation.
|
|
317
|
+
Why was this change needed? What problem does it solve?]
|
|
306
318
|
|
|
307
|
-
|
|
308
|
-
-
|
|
319
|
+
Changes:
|
|
320
|
+
- Specific change with context
|
|
321
|
+
- Another change with why it matters
|
|
309
322
|
```
|
|
310
323
|
|
|
311
324
|
Types: `feat`, `fix`, `test`, `refactor`, `docs`, `perf`, `chore`
|
|
312
325
|
|
|
313
|
-
Example
|
|
326
|
+
**Good Example:**
|
|
314
327
|
```
|
|
315
|
-
feat(
|
|
328
|
+
feat(auth): Add OAuth2 login with Google and GitHub
|
|
316
329
|
|
|
330
|
+
Users can now sign in using their Google or GitHub accounts.
|
|
331
|
+
This reduces friction for new user onboarding and improves security.
|
|
332
|
+
|
|
333
|
+
Changes:
|
|
317
334
|
- Add /auth/login and /auth/logout endpoints
|
|
318
|
-
- Integrate JWT token generation
|
|
319
|
-
- Add refresh token rotation
|
|
335
|
+
- Integrate JWT token generation with OAuth providers
|
|
336
|
+
- Add refresh token rotation for session persistence
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
**Bad Example:**
|
|
320
340
|
```
|
|
341
|
+
feat(w1-t2): implement user authentication API (per MH-03)
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
### Branch Naming
|
|
345
|
+
|
|
346
|
+
At session start, agents offer to create a feature branch:
|
|
347
|
+
- Format: `type/short-description`
|
|
348
|
+
- Types: `feat/`, `fix/`, `refactor/`, `chore/`
|
|
349
|
+
|
|
350
|
+
### Pull Requests
|
|
351
|
+
|
|
352
|
+
At end of phases, agents offer to create PRs:
|
|
353
|
+
- Title: `type(scope): Descriptive summary`
|
|
354
|
+
- Body: Summary, Changes, Testing, Notes
|
|
355
|
+
- No internal terminology
|
|
356
|
+
|
|
357
|
+
For complete guidance: `goop_reference({ name: "git-workflow" })`
|
|
321
358
|
|
|
322
359
|
---
|
|
323
360
|
|
package/skills/research/skill.md
CHANGED
|
@@ -7,7 +7,7 @@ triggers:
|
|
|
7
7
|
- spawn
|
|
8
8
|
- subagent
|
|
9
9
|
- task
|
|
10
|
-
version: 0.1.
|
|
10
|
+
version: 0.1.6
|
|
11
11
|
requires:
|
|
12
12
|
- goop-core
|
|
13
13
|
---
|
|
@@ -94,31 +94,49 @@ Don't pass:
|
|
|
94
94
|
- Unrelated file contents
|
|
95
95
|
- Completed task details
|
|
96
96
|
|
|
97
|
-
##
|
|
97
|
+
## Two-Step Delegation (CRITICAL)
|
|
98
98
|
|
|
99
|
-
|
|
99
|
+
Delegation in GoopSpec uses **two distinct tools** with different purposes:
|
|
100
|
+
|
|
101
|
+
### Step 1: `goop_delegate` — Prompt Engineering
|
|
102
|
+
|
|
103
|
+
This tool **prepares** a rich, production-ready prompt by:
|
|
104
|
+
- Loading the agent's definition (skills, references, model)
|
|
105
|
+
- Injecting team awareness context
|
|
106
|
+
- Adding memory protocols
|
|
107
|
+
- Checking for file conflicts with other agents
|
|
108
|
+
|
|
109
|
+
```typescript
|
|
110
|
+
goop_delegate({
|
|
111
|
+
agent: "goop-executor",
|
|
112
|
+
prompt: "Implement user authentication",
|
|
113
|
+
context: "Stack: Next.js + NextAuth"
|
|
114
|
+
})
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
**Output**: A structured prompt package with the exact `task()` call to execute.
|
|
118
|
+
|
|
119
|
+
### Step 2: `task` — Agent Execution
|
|
120
|
+
|
|
121
|
+
This tool **spawns** the subagent with the engineered prompt:
|
|
100
122
|
|
|
101
123
|
```typescript
|
|
102
124
|
task({
|
|
103
|
-
subagent_type: "goop-executor",
|
|
104
|
-
description: "Implement
|
|
105
|
-
prompt: `
|
|
106
|
-
## TASK
|
|
107
|
-
Implement user authentication
|
|
108
|
-
|
|
109
|
-
## CONTEXT
|
|
110
|
-
- SPEC: .goopspec/SPEC.md
|
|
111
|
-
- BLUEPRINT: .goopspec/BLUEPRINT.md
|
|
112
|
-
|
|
113
|
-
## REQUIREMENTS
|
|
114
|
-
[Specific requirements from SPEC.md]
|
|
115
|
-
|
|
116
|
-
## VERIFICATION
|
|
117
|
-
[How to confirm task completion]
|
|
118
|
-
`
|
|
125
|
+
subagent_type: "goop-executor",
|
|
126
|
+
description: "Implement auth",
|
|
127
|
+
prompt: `[Copy composedPrompt from goop_delegate output]`
|
|
119
128
|
})
|
|
120
129
|
```
|
|
121
130
|
|
|
131
|
+
### When to Use Each Pattern
|
|
132
|
+
|
|
133
|
+
| Situation | Recommended Pattern |
|
|
134
|
+
|-----------|---------------------|
|
|
135
|
+
| Complex task needing skills/refs | `goop_delegate` → `task` |
|
|
136
|
+
| Task needing team awareness | `goop_delegate` → `task` |
|
|
137
|
+
| Simple, well-defined task | `task` directly |
|
|
138
|
+
| Quick exploration | `task` directly |
|
|
139
|
+
|
|
122
140
|
### Available subagent_types
|
|
123
141
|
|
|
124
142
|
| subagent_type | Use For |
|
|
@@ -135,28 +153,36 @@ task({
|
|
|
135
153
|
| `goop-librarian` | Code/docs search, information retrieval |
|
|
136
154
|
| `general` | Fallback for any task |
|
|
137
155
|
|
|
138
|
-
###
|
|
156
|
+
### Common Mistakes
|
|
139
157
|
|
|
140
|
-
|
|
|
141
|
-
|
|
142
|
-
| `
|
|
143
|
-
| `
|
|
158
|
+
| Mistake | Problem | Fix |
|
|
159
|
+
|---------|---------|-----|
|
|
160
|
+
| Using `goop_delegate` without `task` | Prompt is prepared but agent never runs | Always follow `goop_delegate` with `task` |
|
|
161
|
+
| Using `delegate` instead | Different system, not GoopSpec agents | Use `task` for GoopSpec agents |
|
|
162
|
+
| Skipping `goop_delegate` for complex tasks | Miss skills/refs/team context | Use full two-step for complex work |
|
|
144
163
|
|
|
145
|
-
###
|
|
146
|
-
|
|
147
|
-
Use `goop_delegate` only when you need skills/references auto-injected:
|
|
164
|
+
### Full Example
|
|
148
165
|
|
|
149
166
|
```typescript
|
|
150
|
-
// Step 1:
|
|
151
|
-
|
|
152
|
-
|
|
167
|
+
// Step 1: Engineer the prompt
|
|
168
|
+
goop_delegate({
|
|
169
|
+
agent: "goop-executor",
|
|
170
|
+
prompt: "Implement password reset flow",
|
|
171
|
+
context: `
|
|
172
|
+
Stack: Next.js 14, Prisma, Resend
|
|
173
|
+
Task from BLUEPRINT.md Wave 2, Task 3
|
|
174
|
+
Must follow existing auth patterns in src/auth/
|
|
175
|
+
`
|
|
176
|
+
})
|
|
153
177
|
|
|
154
|
-
// Step 2: Execute
|
|
155
|
-
task({
|
|
178
|
+
// Step 2: Execute (copy the task call from goop_delegate output)
|
|
179
|
+
task({
|
|
180
|
+
subagent_type: "goop-executor",
|
|
181
|
+
description: "Implement password reset",
|
|
182
|
+
prompt: `[The full composedPrompt from goop_delegate]`
|
|
183
|
+
})
|
|
156
184
|
```
|
|
157
185
|
|
|
158
|
-
**For most cases: Just use `task` directly.**
|
|
159
|
-
|
|
160
186
|
## Error Handling
|
|
161
187
|
|
|
162
188
|
If delegated task fails:
|
package/skills/testing/skill.md
CHANGED