@undeemed/get-shit-done-codex 1.6.12 → 1.20.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.
- package/README.md +40 -7
- package/agents/gsd-codebase-mapper.md +761 -0
- package/agents/gsd-debugger.md +1198 -0
- package/agents/gsd-executor.md +419 -0
- package/agents/gsd-integration-checker.md +423 -0
- package/agents/gsd-phase-researcher.md +469 -0
- package/agents/gsd-plan-checker.md +622 -0
- package/agents/gsd-planner.md +1159 -0
- package/agents/gsd-project-researcher.md +618 -0
- package/agents/gsd-research-synthesizer.md +236 -0
- package/agents/gsd-roadmapper.md +639 -0
- package/agents/gsd-verifier.md +541 -0
- package/bin/install.js +108 -102
- package/commands/gsd/add-phase.md +17 -185
- package/commands/gsd/add-todo.md +23 -163
- package/commands/gsd/audit-milestone.md +3 -219
- package/commands/gsd/check-todos.md +20 -196
- package/commands/gsd/cleanup.md +18 -0
- package/commands/gsd/complete-milestone.md +2 -2
- package/commands/gsd/debug.md +13 -0
- package/commands/gsd/discuss-phase.md +13 -6
- package/commands/gsd/execute-phase.md +4 -266
- package/commands/gsd/health.md +22 -0
- package/commands/gsd/help.md +8 -369
- package/commands/gsd/insert-phase.md +9 -203
- package/commands/gsd/join-discord.md +18 -0
- package/commands/gsd/list-phase-assumptions.md +4 -4
- package/commands/gsd/map-codebase.md +1 -1
- package/commands/gsd/new-milestone.md +16 -682
- package/commands/gsd/new-project.md +12 -866
- package/commands/gsd/new-project.md.bak +1041 -0
- package/commands/gsd/pause-work.md +17 -105
- package/commands/gsd/plan-milestone-gaps.md +3 -247
- package/commands/gsd/plan-phase.md +13 -444
- package/commands/gsd/progress.md +5 -337
- package/commands/gsd/quick.md +40 -0
- package/commands/gsd/reapply-patches.md +110 -0
- package/commands/gsd/remove-phase.md +9 -315
- package/commands/gsd/research-phase.md +27 -20
- package/commands/gsd/resume-work.md +2 -2
- package/commands/gsd/set-profile.md +34 -0
- package/commands/gsd/settings.md +36 -0
- package/commands/gsd/update.md +25 -160
- package/commands/gsd/verify-work.md +6 -186
- package/get-shit-done/bin/gsd-tools.cjs +5243 -0
- package/get-shit-done/bin/gsd-tools.test.cjs +2273 -0
- package/get-shit-done/references/checkpoints.md +270 -283
- package/get-shit-done/references/decimal-phase-calculation.md +65 -0
- package/get-shit-done/references/git-integration.md +7 -13
- package/get-shit-done/references/git-planning-commit.md +38 -0
- package/get-shit-done/references/model-profile-resolution.md +34 -0
- package/get-shit-done/references/model-profiles.md +92 -0
- package/get-shit-done/references/phase-argument-parsing.md +61 -0
- package/get-shit-done/references/planning-config.md +196 -0
- package/get-shit-done/references/questioning.md +5 -1
- package/get-shit-done/references/verification-patterns.md +17 -0
- package/get-shit-done/templates/DEBUG.md +4 -4
- package/get-shit-done/templates/UAT.md +1 -1
- package/get-shit-done/templates/codebase/architecture.md +1 -1
- package/get-shit-done/templates/codebase/concerns.md +1 -1
- package/get-shit-done/templates/codebase/conventions.md +1 -1
- package/get-shit-done/templates/codebase/structure.md +9 -9
- package/get-shit-done/templates/config.json +10 -0
- package/get-shit-done/templates/context.md +7 -15
- package/get-shit-done/templates/continue-here.md +1 -1
- package/get-shit-done/templates/phase-prompt.md +32 -41
- package/get-shit-done/templates/planner-subagent-prompt.md +4 -4
- package/get-shit-done/templates/project.md +1 -1
- package/get-shit-done/templates/research-project/ARCHITECTURE.md +1 -1
- package/get-shit-done/templates/research.md +27 -4
- package/get-shit-done/templates/state.md +1 -31
- package/get-shit-done/templates/summary-complex.md +59 -0
- package/get-shit-done/templates/summary-minimal.md +41 -0
- package/get-shit-done/templates/summary-standard.md +48 -0
- package/get-shit-done/templates/summary.md +5 -28
- package/get-shit-done/templates/user-setup.md +8 -20
- package/get-shit-done/templates/verification-report.md +3 -3
- package/get-shit-done/workflows/add-phase.md +111 -0
- package/get-shit-done/workflows/add-todo.md +157 -0
- package/get-shit-done/workflows/audit-milestone.md +242 -0
- package/get-shit-done/workflows/check-todos.md +176 -0
- package/get-shit-done/workflows/cleanup.md +152 -0
- package/get-shit-done/workflows/complete-milestone.md +225 -301
- package/get-shit-done/workflows/diagnose-issues.md +3 -17
- package/get-shit-done/workflows/discovery-phase.md +11 -15
- package/get-shit-done/workflows/discuss-phase.md +105 -42
- package/get-shit-done/workflows/execute-phase.md +205 -349
- package/get-shit-done/workflows/execute-plan.md +179 -1569
- package/get-shit-done/workflows/health.md +156 -0
- package/get-shit-done/workflows/help.md +486 -0
- package/get-shit-done/workflows/insert-phase.md +129 -0
- package/get-shit-done/workflows/list-phase-assumptions.md +9 -9
- package/get-shit-done/workflows/map-codebase.md +56 -18
- package/get-shit-done/workflows/new-milestone.md +373 -0
- package/get-shit-done/workflows/new-project.md +1113 -0
- package/get-shit-done/workflows/pause-work.md +122 -0
- package/get-shit-done/workflows/plan-milestone-gaps.md +256 -0
- package/get-shit-done/workflows/plan-phase.md +448 -0
- package/get-shit-done/workflows/progress.md +393 -0
- package/get-shit-done/workflows/quick.md +444 -0
- package/get-shit-done/workflows/remove-phase.md +154 -0
- package/get-shit-done/workflows/research-phase.md +74 -0
- package/get-shit-done/workflows/resume-project.md +18 -23
- package/get-shit-done/workflows/set-profile.md +80 -0
- package/get-shit-done/workflows/settings.md +200 -0
- package/get-shit-done/workflows/transition.md +78 -103
- package/get-shit-done/workflows/update.md +214 -0
- package/get-shit-done/workflows/verify-phase.md +109 -496
- package/get-shit-done/workflows/verify-work.md +22 -15
- package/hooks/dist/gsd-check-update.js +66 -0
- package/hooks/dist/gsd-statusline.js +91 -0
- package/package.json +19 -3
- package/scripts/build-hooks.js +42 -0
- package/commands/gsd/whats-new.md +0 -124
|
@@ -15,7 +15,7 @@ Template for `.planning/codebase/STRUCTURE.md` - captures physical file organiza
|
|
|
15
15
|
|
|
16
16
|
## Directory Layout
|
|
17
17
|
|
|
18
|
-
[ASCII tree of top-level directories with purpose]
|
|
18
|
+
[ASCII box-drawing tree of top-level directories with purpose - use ├── └── │ characters for tree structure only]
|
|
19
19
|
|
|
20
20
|
```
|
|
21
21
|
[project-root]/
|
|
@@ -146,7 +146,7 @@ get-shit-done/
|
|
|
146
146
|
- Subdirectories: None
|
|
147
147
|
|
|
148
148
|
**commands/gsd/**
|
|
149
|
-
- Purpose: Slash command definitions for
|
|
149
|
+
- Purpose: Slash command definitions for Codex CLI
|
|
150
150
|
- Contains: *.md files (one per command)
|
|
151
151
|
- Key files: new-project.md, plan-phase.md, execute-plan.md
|
|
152
152
|
- Subdirectories: None (flat structure)
|
|
@@ -186,14 +186,14 @@ get-shit-done/
|
|
|
186
186
|
|
|
187
187
|
**Documentation:**
|
|
188
188
|
- `README.md` - User-facing installation and usage guide
|
|
189
|
-
- `
|
|
189
|
+
- `CODEX.md` - Instructions for Codex CLI when working in this repo
|
|
190
190
|
|
|
191
191
|
## Naming Conventions
|
|
192
192
|
|
|
193
193
|
**Files:**
|
|
194
194
|
- kebab-case.md: Markdown documents
|
|
195
195
|
- kebab-case.js: JavaScript source files
|
|
196
|
-
- UPPERCASE.md: Important project files (README,
|
|
196
|
+
- UPPERCASE.md: Important project files (README, CODEX, CHANGELOG)
|
|
197
197
|
|
|
198
198
|
**Directories:**
|
|
199
199
|
- kebab-case: All directories
|
|
@@ -216,7 +216,7 @@ get-shit-done/
|
|
|
216
216
|
|
|
217
217
|
**New Workflow:**
|
|
218
218
|
- Implementation: `get-shit-done/workflows/{name}.md`
|
|
219
|
-
- Usage: Reference from command with `@~/.
|
|
219
|
+
- Usage: Reference from command with `@~/.codex/get-shit-done/workflows/{name}.md`
|
|
220
220
|
|
|
221
221
|
**New Reference Document:**
|
|
222
222
|
- Implementation: `get-shit-done/references/{name}.md`
|
|
@@ -229,12 +229,12 @@ get-shit-done/
|
|
|
229
229
|
## Special Directories
|
|
230
230
|
|
|
231
231
|
**get-shit-done/**
|
|
232
|
-
- Purpose: Resources installed to ~/.
|
|
232
|
+
- Purpose: Resources installed to ~/.codex/
|
|
233
233
|
- Source: Copied by bin/install.js during installation
|
|
234
234
|
- Committed: Yes (source of truth)
|
|
235
235
|
|
|
236
236
|
**commands/**
|
|
237
|
-
- Purpose: Slash commands installed to ~/.
|
|
237
|
+
- Purpose: Slash commands installed to ~/.codex/commands/
|
|
238
238
|
- Source: Copied by bin/install.js during installation
|
|
239
239
|
- Committed: Yes (source of truth)
|
|
240
240
|
|
|
@@ -247,7 +247,7 @@ get-shit-done/
|
|
|
247
247
|
|
|
248
248
|
<guidelines>
|
|
249
249
|
**What belongs in STRUCTURE.md:**
|
|
250
|
-
- Directory layout (ASCII tree)
|
|
250
|
+
- Directory layout (ASCII box-drawing tree for structure visualization)
|
|
251
251
|
- Purpose of each directory
|
|
252
252
|
- Key file locations (entry points, configs, core logic)
|
|
253
253
|
- Naming conventions
|
|
@@ -267,7 +267,7 @@ get-shit-done/
|
|
|
267
267
|
- Locate entry points, configs, and main logic areas
|
|
268
268
|
- Keep directory tree concise (max 2-3 levels)
|
|
269
269
|
|
|
270
|
-
**ASCII
|
|
270
|
+
**Tree format (ASCII box-drawing characters for structure only):**
|
|
271
271
|
```
|
|
272
272
|
root/
|
|
273
273
|
├── dir1/ # Purpose
|
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"mode": "interactive",
|
|
3
3
|
"depth": "standard",
|
|
4
|
+
"workflow": {
|
|
5
|
+
"research": true,
|
|
6
|
+
"plan_check": true,
|
|
7
|
+
"verifier": true,
|
|
8
|
+
"auto_advance": false
|
|
9
|
+
},
|
|
10
|
+
"planning": {
|
|
11
|
+
"commit_docs": true,
|
|
12
|
+
"search_gitignored": false
|
|
13
|
+
},
|
|
4
14
|
"parallelization": {
|
|
5
15
|
"enabled": true,
|
|
6
16
|
"plan_level": true,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Phase Context Template
|
|
2
2
|
|
|
3
|
-
Template for `.planning/phases/XX-name/{
|
|
3
|
+
Template for `.planning/phases/XX-name/{phase_num}-CONTEXT.md` - captures implementation decisions for a phase.
|
|
4
4
|
|
|
5
5
|
**Purpose:** Document decisions that downstream agents need. Researcher uses this to know WHAT to investigate. Planner uses this to know WHAT choices are locked vs flexible.
|
|
6
6
|
|
|
@@ -40,8 +40,8 @@ Template for `.planning/phases/XX-name/{phase}-CONTEXT.md` - captures implementa
|
|
|
40
40
|
### [Area 3 that was discussed]
|
|
41
41
|
- [Specific decision made]
|
|
42
42
|
|
|
43
|
-
###
|
|
44
|
-
[Areas where user explicitly said "you decide" —
|
|
43
|
+
### Codex's Discretion
|
|
44
|
+
[Areas where user explicitly said "you decide" — Codex has flexibility here during planning/implementation]
|
|
45
45
|
|
|
46
46
|
</decisions>
|
|
47
47
|
|
|
@@ -103,7 +103,7 @@ Display posts from followed users in a scrollable feed. Users can view posts and
|
|
|
103
103
|
- Friendly illustration + "Follow people to see posts here"
|
|
104
104
|
- Suggest 3-5 accounts to follow based on interests
|
|
105
105
|
|
|
106
|
-
###
|
|
106
|
+
### Codex's Discretion
|
|
107
107
|
- Loading skeleton design
|
|
108
108
|
- Exact spacing and typography
|
|
109
109
|
- Error state handling
|
|
@@ -165,7 +165,7 @@ CLI command to backup database to local file or S3. Supports full and incrementa
|
|
|
165
165
|
- --no-retry flag to fail fast
|
|
166
166
|
- Partial backups are deleted on failure (no corrupt files)
|
|
167
167
|
|
|
168
|
-
###
|
|
168
|
+
### Codex's Discretion
|
|
169
169
|
- Exact progress bar implementation
|
|
170
170
|
- Compression algorithm choice
|
|
171
171
|
- Temp file handling
|
|
@@ -227,7 +227,7 @@ Organize existing photo library into structured folders. Handle duplicates and a
|
|
|
227
227
|
- Preserve original filename as suffix for searchability
|
|
228
228
|
- Handle name collisions with incrementing suffix
|
|
229
229
|
|
|
230
|
-
###
|
|
230
|
+
### Codex's Discretion
|
|
231
231
|
- Exact clustering algorithm
|
|
232
232
|
- How to handle photos with no EXIF data
|
|
233
233
|
- Folder emoji usage
|
|
@@ -275,16 +275,8 @@ The output should answer: "What does the researcher need to investigate? What ch
|
|
|
275
275
|
- "Fast and responsive"
|
|
276
276
|
- "Easy to use"
|
|
277
277
|
|
|
278
|
-
**Sections explained:**
|
|
279
|
-
|
|
280
|
-
- **Domain** — The scope anchor. Copied/derived from ROADMAP.md. Fixed boundary.
|
|
281
|
-
- **Decisions** — Organized by areas discussed (NOT predefined categories). Section headers come from the actual discussion — "Layout style", "Flag design", "Grouping criteria", etc.
|
|
282
|
-
- **Claude's Discretion** — Explicit acknowledgment of what Claude can decide during implementation.
|
|
283
|
-
- **Specifics** — Product references, examples, "like X but..." statements.
|
|
284
|
-
- **Deferred** — Ideas captured but explicitly out of scope. Prevents scope creep while preserving good ideas.
|
|
285
|
-
|
|
286
278
|
**After creation:**
|
|
287
|
-
- File lives in phase directory: `.planning/phases/XX-name/{
|
|
279
|
+
- File lives in phase directory: `.planning/phases/XX-name/{phase_num}-CONTEXT.md`
|
|
288
280
|
- `gsd-phase-researcher` uses decisions to focus investigation
|
|
289
281
|
- `gsd-planner` uses decisions + research to create executable tasks
|
|
290
282
|
- Downstream agents should NOT need to ask the user again about captured decisions
|
|
@@ -71,7 +71,7 @@ Required YAML frontmatter:
|
|
|
71
71
|
</yaml_fields>
|
|
72
72
|
|
|
73
73
|
<guidelines>
|
|
74
|
-
- Be specific enough that a fresh
|
|
74
|
+
- Be specific enough that a fresh Codex instance understands immediately
|
|
75
75
|
- Include WHY decisions were made, not just what
|
|
76
76
|
- The `<next_action>` should be actionable without reading anything else
|
|
77
77
|
- This file gets DELETED after resume - it's not permanent storage
|
|
@@ -20,7 +20,7 @@ wave: N # Execution wave (1, 2, 3...). Pre-computed at plan
|
|
|
20
20
|
depends_on: [] # Plan IDs this plan requires (e.g., ["01-01"]).
|
|
21
21
|
files_modified: [] # Files this plan modifies.
|
|
22
22
|
autonomous: true # false if plan has checkpoints requiring user interaction
|
|
23
|
-
user_setup: [] # Human-required setup
|
|
23
|
+
user_setup: [] # Human-required setup Codex cannot automate (see below)
|
|
24
24
|
|
|
25
25
|
# Goal-backward verification (derived during planning, verified after execution)
|
|
26
26
|
must_haves:
|
|
@@ -37,10 +37,10 @@ Output: [What artifacts will be created]
|
|
|
37
37
|
</objective>
|
|
38
38
|
|
|
39
39
|
<execution_context>
|
|
40
|
-
@~/.
|
|
41
|
-
@~/.
|
|
40
|
+
@~/.codex/get-shit-done/workflows/execute-plan.md
|
|
41
|
+
@~/.codex/get-shit-done/templates/summary.md
|
|
42
42
|
[If plan contains checkpoint tasks (type="checkpoint:*"), add:]
|
|
43
|
-
@~/.
|
|
43
|
+
@~/.codex/get-shit-done/references/checkpoints.md
|
|
44
44
|
</execution_context>
|
|
45
45
|
|
|
46
46
|
<context>
|
|
@@ -75,33 +75,23 @@ Output: [What artifacts will be created]
|
|
|
75
75
|
<done>[Acceptance criteria]</done>
|
|
76
76
|
</task>
|
|
77
77
|
|
|
78
|
+
<!-- For checkpoint task examples and patterns, see @~/.codex/get-shit-done/references/checkpoints.md -->
|
|
79
|
+
<!-- Key rule: Codex starts dev server BEFORE human-verify checkpoints. User only visits URLs. -->
|
|
80
|
+
|
|
78
81
|
<task type="checkpoint:decision" gate="blocking">
|
|
79
82
|
<decision>[What needs deciding]</decision>
|
|
80
83
|
<context>[Why this decision matters]</context>
|
|
81
84
|
<options>
|
|
82
|
-
<option id="option-a">
|
|
83
|
-
|
|
84
|
-
<pros>[Benefits and advantages]</pros>
|
|
85
|
-
<cons>[Tradeoffs and limitations]</cons>
|
|
86
|
-
</option>
|
|
87
|
-
<option id="option-b">
|
|
88
|
-
<name>[Option name]</name>
|
|
89
|
-
<pros>[Benefits and advantages]</pros>
|
|
90
|
-
<cons>[Tradeoffs and limitations]</cons>
|
|
91
|
-
</option>
|
|
85
|
+
<option id="option-a"><name>[Name]</name><pros>[Benefits]</pros><cons>[Tradeoffs]</cons></option>
|
|
86
|
+
<option id="option-b"><name>[Name]</name><pros>[Benefits]</pros><cons>[Tradeoffs]</cons></option>
|
|
92
87
|
</options>
|
|
93
|
-
<resume-signal>
|
|
88
|
+
<resume-signal>Select: option-a or option-b</resume-signal>
|
|
94
89
|
</task>
|
|
95
90
|
|
|
96
91
|
<task type="checkpoint:human-verify" gate="blocking">
|
|
97
|
-
<what-built>[What
|
|
98
|
-
<how-to-verify>
|
|
99
|
-
|
|
100
|
-
2. Visit: [URL to check]
|
|
101
|
-
3. Test: [Specific interactions]
|
|
102
|
-
4. Confirm: [Expected behaviors]
|
|
103
|
-
</how-to-verify>
|
|
104
|
-
<resume-signal>Type "approved" to continue, or describe issues to fix</resume-signal>
|
|
92
|
+
<what-built>[What Codex built] - server running at [URL]</what-built>
|
|
93
|
+
<how-to-verify>Visit [URL] and verify: [visual checks only, NO CLI commands]</how-to-verify>
|
|
94
|
+
<resume-signal>Type "approved" or describe issues</resume-signal>
|
|
105
95
|
</task>
|
|
106
96
|
|
|
107
97
|
</tasks>
|
|
@@ -278,7 +268,7 @@ TDD features get dedicated plans with `type: tdd`.
|
|
|
278
268
|
→ Yes: Create a TDD plan
|
|
279
269
|
→ No: Standard task in standard plan
|
|
280
270
|
|
|
281
|
-
See `~/.
|
|
271
|
+
See `~/.codex/get-shit-done/references/tdd.md` for TDD plan structure.
|
|
282
272
|
|
|
283
273
|
---
|
|
284
274
|
|
|
@@ -286,7 +276,7 @@ See `~/.claude/get-shit-done/references/tdd.md` for TDD plan structure.
|
|
|
286
276
|
|
|
287
277
|
| Type | Use For | Autonomy |
|
|
288
278
|
|------|---------|----------|
|
|
289
|
-
| `auto` | Everything
|
|
279
|
+
| `auto` | Everything Codex can do independently | Fully autonomous |
|
|
290
280
|
| `checkpoint:human-verify` | Visual/functional verification | Pauses, returns to orchestrator |
|
|
291
281
|
| `checkpoint:decision` | Implementation choices | Pauses, returns to orchestrator |
|
|
292
282
|
| `checkpoint:human-action` | Truly unavoidable manual steps (rare) | Pauses, returns to orchestrator |
|
|
@@ -382,9 +372,9 @@ Output: Working dashboard component.
|
|
|
382
372
|
</objective>
|
|
383
373
|
|
|
384
374
|
<execution_context>
|
|
385
|
-
@~/.
|
|
386
|
-
@~/.
|
|
387
|
-
@~/.
|
|
375
|
+
@~/.codex/get-shit-done/workflows/execute-plan.md
|
|
376
|
+
@~/.codex/get-shit-done/templates/summary.md
|
|
377
|
+
@~/.codex/get-shit-done/references/checkpoints.md
|
|
388
378
|
</execution_context>
|
|
389
379
|
|
|
390
380
|
<context>
|
|
@@ -403,15 +393,16 @@ Output: Working dashboard component.
|
|
|
403
393
|
<done>Dashboard renders without errors</done>
|
|
404
394
|
</task>
|
|
405
395
|
|
|
396
|
+
<!-- Checkpoint pattern: Codex starts server, user visits URL. See checkpoints.md for full patterns. -->
|
|
397
|
+
<task type="auto">
|
|
398
|
+
<name>Start dev server</name>
|
|
399
|
+
<action>Run `npm run dev` in background, wait for ready</action>
|
|
400
|
+
<verify>curl localhost:3000 returns 200</verify>
|
|
401
|
+
</task>
|
|
402
|
+
|
|
406
403
|
<task type="checkpoint:human-verify" gate="blocking">
|
|
407
|
-
<what-built>
|
|
408
|
-
<how-to-verify>
|
|
409
|
-
1. Run: npm run dev
|
|
410
|
-
2. Visit: http://localhost:3000/dashboard
|
|
411
|
-
3. Desktop: Verify two-column grid
|
|
412
|
-
4. Mobile: Verify stacked layout
|
|
413
|
-
5. Check: No layout shift, no scroll issues
|
|
414
|
-
</how-to-verify>
|
|
404
|
+
<what-built>Dashboard - server at http://localhost:3000</what-built>
|
|
405
|
+
<how-to-verify>Visit localhost:3000/dashboard. Check: desktop grid, mobile stack, no scroll issues.</how-to-verify>
|
|
415
406
|
<resume-signal>Type "approved" or describe issues</resume-signal>
|
|
416
407
|
</task>
|
|
417
408
|
</tasks>
|
|
@@ -467,7 +458,7 @@ files_modified: [...]
|
|
|
467
458
|
|
|
468
459
|
## Guidelines
|
|
469
460
|
|
|
470
|
-
- Always use XML structure for
|
|
461
|
+
- Always use XML structure for Codex parsing
|
|
471
462
|
- Include `wave`, `depends_on`, `files_modified`, `autonomous` in every plan
|
|
472
463
|
- Prefer vertical slices over horizontal layers
|
|
473
464
|
- Only reference prior SUMMARYs when genuinely needed
|
|
@@ -497,16 +488,16 @@ user_setup:
|
|
|
497
488
|
- "stripe listen --forward-to localhost:3000/api/webhooks/stripe"
|
|
498
489
|
```
|
|
499
490
|
|
|
500
|
-
**The automation-first rule:** `user_setup` contains ONLY what
|
|
491
|
+
**The automation-first rule:** `user_setup` contains ONLY what Codex literally cannot do:
|
|
501
492
|
- Account creation (requires human signup)
|
|
502
493
|
- Secret retrieval (requires dashboard access)
|
|
503
494
|
- Dashboard configuration (requires human in browser)
|
|
504
495
|
|
|
505
|
-
**NOT included:** Package installs, code changes, file creation, CLI commands
|
|
496
|
+
**NOT included:** Package installs, code changes, file creation, CLI commands Codex can run.
|
|
506
497
|
|
|
507
498
|
**Result:** Execute-plan generates `{phase}-USER-SETUP.md` with checklist for the user.
|
|
508
499
|
|
|
509
|
-
See `~/.
|
|
500
|
+
See `~/.codex/get-shit-done/templates/user-setup.md` for full schema and examples
|
|
510
501
|
|
|
511
502
|
---
|
|
512
503
|
|
|
@@ -573,4 +564,4 @@ Task completion ≠ Goal achievement. A task "create chat component" can complet
|
|
|
573
564
|
5. Gaps found → fix plans created → execute → re-verify
|
|
574
565
|
6. All must_haves pass → phase complete
|
|
575
566
|
|
|
576
|
-
See `~/.
|
|
567
|
+
See `~/.codex/get-shit-done/workflows/verify-phase.md` for verification logic.
|
|
@@ -22,14 +22,14 @@ Template for spawning gsd-planner agent. The agent contains all planning experti
|
|
|
22
22
|
@.planning/REQUIREMENTS.md
|
|
23
23
|
|
|
24
24
|
**Phase Context (if exists):**
|
|
25
|
-
@.planning/phases/{phase_dir}/{
|
|
25
|
+
@.planning/phases/{phase_dir}/{phase_num}-CONTEXT.md
|
|
26
26
|
|
|
27
27
|
**Research (if exists):**
|
|
28
|
-
@.planning/phases/{phase_dir}/{
|
|
28
|
+
@.planning/phases/{phase_dir}/{phase_num}-RESEARCH.md
|
|
29
29
|
|
|
30
30
|
**Gap Closure (if --gaps mode):**
|
|
31
|
-
@.planning/phases/{phase_dir}/{
|
|
32
|
-
@.planning/phases/{phase_dir}/{
|
|
31
|
+
@.planning/phases/{phase_dir}/{phase_num}-VERIFICATION.md
|
|
32
|
+
@.planning/phases/{phase_dir}/{phase_num}-UAT.md
|
|
33
33
|
|
|
34
34
|
</planning_context>
|
|
35
35
|
|
|
@@ -177,7 +177,7 @@ src/
|
|
|
177
177
|
<guidelines>
|
|
178
178
|
|
|
179
179
|
**System Overview:**
|
|
180
|
-
- Use ASCII diagrams for clarity
|
|
180
|
+
- Use ASCII box-drawing diagrams for clarity (├── └── │ ─ for structure visualization only)
|
|
181
181
|
- Show major components and their relationships
|
|
182
182
|
- Don't over-detail — this is conceptual, not implementation
|
|
183
183
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Research Template
|
|
2
2
|
|
|
3
|
-
Template for `.planning/phases/XX-name/{
|
|
3
|
+
Template for `.planning/phases/XX-name/{phase_num}-RESEARCH.md` - comprehensive ecosystem research before planning.
|
|
4
4
|
|
|
5
|
-
**Purpose:** Document what
|
|
5
|
+
**Purpose:** Document what Codex needs to know to implement a phase well - not just "which library" but "how do experts build this."
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -15,6 +15,29 @@ Template for `.planning/phases/XX-name/{phase}-RESEARCH.md` - comprehensive ecos
|
|
|
15
15
|
**Domain:** [primary technology/problem domain]
|
|
16
16
|
**Confidence:** [HIGH/MEDIUM/LOW]
|
|
17
17
|
|
|
18
|
+
<user_constraints>
|
|
19
|
+
## User Constraints (from CONTEXT.md)
|
|
20
|
+
|
|
21
|
+
**CRITICAL:** If CONTEXT.md exists from /gsd:discuss-phase, copy locked decisions here verbatim. These MUST be honored by the planner.
|
|
22
|
+
|
|
23
|
+
### Locked Decisions
|
|
24
|
+
[Copy from CONTEXT.md `## Decisions` section - these are NON-NEGOTIABLE]
|
|
25
|
+
- [Decision 1]
|
|
26
|
+
- [Decision 2]
|
|
27
|
+
|
|
28
|
+
### Codex's Discretion
|
|
29
|
+
[Copy from CONTEXT.md - areas where researcher/planner can choose]
|
|
30
|
+
- [Area 1]
|
|
31
|
+
- [Area 2]
|
|
32
|
+
|
|
33
|
+
### Deferred Ideas (OUT OF SCOPE)
|
|
34
|
+
[Copy from CONTEXT.md - do NOT research or plan these]
|
|
35
|
+
- [Deferred 1]
|
|
36
|
+
- [Deferred 2]
|
|
37
|
+
|
|
38
|
+
**If no CONTEXT.md exists:** Write "No user constraints - all decisions at Codex's discretion"
|
|
39
|
+
</user_constraints>
|
|
40
|
+
|
|
18
41
|
<research_summary>
|
|
19
42
|
## Summary
|
|
20
43
|
|
|
@@ -501,7 +524,7 @@ function useVehicleControls(rigidBodyRef) {
|
|
|
501
524
|
|
|
502
525
|
**When to create:**
|
|
503
526
|
- Before planning phases in niche/complex domains
|
|
504
|
-
- When
|
|
527
|
+
- When Codex's training data is likely stale or sparse
|
|
505
528
|
- When "how do experts do this" matters more than "which library"
|
|
506
529
|
|
|
507
530
|
**Structure:**
|
|
@@ -524,6 +547,6 @@ function useVehicleControls(rigidBodyRef) {
|
|
|
524
547
|
- Code examples can be referenced in task actions
|
|
525
548
|
|
|
526
549
|
**After creation:**
|
|
527
|
-
- File lives in phase directory: `.planning/phases/XX-name/{
|
|
550
|
+
- File lives in phase directory: `.planning/phases/XX-name/{phase_num}-RESEARCH.md`
|
|
528
551
|
- Referenced during planning workflow
|
|
529
552
|
- plan-phase loads it automatically when present
|
|
@@ -120,7 +120,7 @@ Points to PROJECT.md for full context. Includes:
|
|
|
120
120
|
- Current focus (which phase)
|
|
121
121
|
- Last update date (triggers re-read if stale)
|
|
122
122
|
|
|
123
|
-
|
|
123
|
+
Codex reads PROJECT.md directly for requirements, constraints, and decisions.
|
|
124
124
|
|
|
125
125
|
### Current Position
|
|
126
126
|
Where we are right now:
|
|
@@ -174,33 +174,3 @@ It's a DIGEST, not an archive. If accumulated context grows too large:
|
|
|
174
174
|
The goal is "read once, know where we are" — if it's too long, that fails.
|
|
175
175
|
|
|
176
176
|
</size_constraint>
|
|
177
|
-
|
|
178
|
-
<guidelines>
|
|
179
|
-
|
|
180
|
-
**When created:**
|
|
181
|
-
- During project initialization (after ROADMAP.md)
|
|
182
|
-
- Reference PROJECT.md (extract core value and current focus)
|
|
183
|
-
- Initialize empty sections
|
|
184
|
-
|
|
185
|
-
**When read:**
|
|
186
|
-
- Every workflow starts by reading STATE.md
|
|
187
|
-
- Then read PROJECT.md for full context
|
|
188
|
-
- Provides instant context restoration
|
|
189
|
-
|
|
190
|
-
**When updated:**
|
|
191
|
-
- After each plan execution (update position, note decisions, update issues/blockers)
|
|
192
|
-
- After phase transitions (update progress bar, clear resolved blockers, refresh project reference)
|
|
193
|
-
|
|
194
|
-
**Size management:**
|
|
195
|
-
- Keep under 100 lines total
|
|
196
|
-
- Recent decisions only in STATE.md (full log in PROJECT.md)
|
|
197
|
-
- Keep only active blockers
|
|
198
|
-
|
|
199
|
-
**Sections:**
|
|
200
|
-
- Project Reference: Pointer to PROJECT.md with core value
|
|
201
|
-
- Current Position: Where we are now (phase, plan, status)
|
|
202
|
-
- Performance Metrics: Velocity tracking
|
|
203
|
-
- Accumulated Context: Recent decisions, pending todos, blockers
|
|
204
|
-
- Session Continuity: Resume information
|
|
205
|
-
|
|
206
|
-
</guidelines>
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
---
|
|
2
|
+
phase: XX-name
|
|
3
|
+
plan: YY
|
|
4
|
+
subsystem: [primary category]
|
|
5
|
+
tags: [searchable tech]
|
|
6
|
+
requires:
|
|
7
|
+
- phase: [prior phase]
|
|
8
|
+
provides: [what that phase built]
|
|
9
|
+
provides:
|
|
10
|
+
- [bullet list of what was built/delivered]
|
|
11
|
+
affects: [list of phase names or keywords]
|
|
12
|
+
tech-stack:
|
|
13
|
+
added: [libraries/tools]
|
|
14
|
+
patterns: [architectural/code patterns]
|
|
15
|
+
key-files:
|
|
16
|
+
created: [important files created]
|
|
17
|
+
modified: [important files modified]
|
|
18
|
+
key-decisions:
|
|
19
|
+
- "Decision 1"
|
|
20
|
+
patterns-established:
|
|
21
|
+
- "Pattern 1: description"
|
|
22
|
+
duration: Xmin
|
|
23
|
+
completed: YYYY-MM-DD
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
# Phase [X]: [Name] Summary (Complex)
|
|
27
|
+
|
|
28
|
+
**[Substantive one-liner describing outcome]**
|
|
29
|
+
|
|
30
|
+
## Performance
|
|
31
|
+
- **Duration:** [time]
|
|
32
|
+
- **Tasks:** [count completed]
|
|
33
|
+
- **Files modified:** [count]
|
|
34
|
+
|
|
35
|
+
## Accomplishments
|
|
36
|
+
- [Key outcome 1]
|
|
37
|
+
- [Key outcome 2]
|
|
38
|
+
|
|
39
|
+
## Task Commits
|
|
40
|
+
1. **Task 1: [task name]** - `hash`
|
|
41
|
+
2. **Task 2: [task name]** - `hash`
|
|
42
|
+
3. **Task 3: [task name]** - `hash`
|
|
43
|
+
|
|
44
|
+
## Files Created/Modified
|
|
45
|
+
- `path/to/file.ts` - What it does
|
|
46
|
+
- `path/to/another.ts` - What it does
|
|
47
|
+
|
|
48
|
+
## Decisions Made
|
|
49
|
+
[Key decisions with brief rationale]
|
|
50
|
+
|
|
51
|
+
## Deviations from Plan (Auto-fixed)
|
|
52
|
+
[Detailed auto-fix records per GSD deviation rules]
|
|
53
|
+
|
|
54
|
+
## Issues Encountered
|
|
55
|
+
[Problems during planned work and resolutions]
|
|
56
|
+
|
|
57
|
+
## Next Phase Readiness
|
|
58
|
+
[What's ready for next phase]
|
|
59
|
+
[Blockers or concerns]
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
---
|
|
2
|
+
phase: XX-name
|
|
3
|
+
plan: YY
|
|
4
|
+
subsystem: [primary category]
|
|
5
|
+
tags: [searchable tech]
|
|
6
|
+
provides:
|
|
7
|
+
- [bullet list of what was built/delivered]
|
|
8
|
+
affects: [list of phase names or keywords]
|
|
9
|
+
tech-stack:
|
|
10
|
+
added: [libraries/tools]
|
|
11
|
+
patterns: [architectural/code patterns]
|
|
12
|
+
key-files:
|
|
13
|
+
created: [important files created]
|
|
14
|
+
modified: [important files modified]
|
|
15
|
+
key-decisions: []
|
|
16
|
+
duration: Xmin
|
|
17
|
+
completed: YYYY-MM-DD
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# Phase [X]: [Name] Summary (Minimal)
|
|
21
|
+
|
|
22
|
+
**[Substantive one-liner describing outcome]**
|
|
23
|
+
|
|
24
|
+
## Performance
|
|
25
|
+
- **Duration:** [time]
|
|
26
|
+
- **Tasks:** [count]
|
|
27
|
+
- **Files modified:** [count]
|
|
28
|
+
|
|
29
|
+
## Accomplishments
|
|
30
|
+
- [Most important outcome]
|
|
31
|
+
- [Second key accomplishment]
|
|
32
|
+
|
|
33
|
+
## Task Commits
|
|
34
|
+
1. **Task 1: [task name]** - `hash`
|
|
35
|
+
2. **Task 2: [task name]** - `hash`
|
|
36
|
+
|
|
37
|
+
## Files Created/Modified
|
|
38
|
+
- `path/to/file.ts` - What it does
|
|
39
|
+
|
|
40
|
+
## Next Phase Readiness
|
|
41
|
+
[Ready for next phase]
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
phase: XX-name
|
|
3
|
+
plan: YY
|
|
4
|
+
subsystem: [primary category]
|
|
5
|
+
tags: [searchable tech]
|
|
6
|
+
provides:
|
|
7
|
+
- [bullet list of what was built/delivered]
|
|
8
|
+
affects: [list of phase names or keywords]
|
|
9
|
+
tech-stack:
|
|
10
|
+
added: [libraries/tools]
|
|
11
|
+
patterns: [architectural/code patterns]
|
|
12
|
+
key-files:
|
|
13
|
+
created: [important files created]
|
|
14
|
+
modified: [important files modified]
|
|
15
|
+
key-decisions:
|
|
16
|
+
- "Decision 1"
|
|
17
|
+
duration: Xmin
|
|
18
|
+
completed: YYYY-MM-DD
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
# Phase [X]: [Name] Summary
|
|
22
|
+
|
|
23
|
+
**[Substantive one-liner describing outcome]**
|
|
24
|
+
|
|
25
|
+
## Performance
|
|
26
|
+
- **Duration:** [time]
|
|
27
|
+
- **Tasks:** [count completed]
|
|
28
|
+
- **Files modified:** [count]
|
|
29
|
+
|
|
30
|
+
## Accomplishments
|
|
31
|
+
- [Key outcome 1]
|
|
32
|
+
- [Key outcome 2]
|
|
33
|
+
|
|
34
|
+
## Task Commits
|
|
35
|
+
1. **Task 1: [task name]** - `hash`
|
|
36
|
+
2. **Task 2: [task name]** - `hash`
|
|
37
|
+
3. **Task 3: [task name]** - `hash`
|
|
38
|
+
|
|
39
|
+
## Files Created/Modified
|
|
40
|
+
- `path/to/file.ts` - What it does
|
|
41
|
+
- `path/to/another.ts` - What it does
|
|
42
|
+
|
|
43
|
+
## Decisions & Deviations
|
|
44
|
+
[Key decisions or "None - followed plan as specified"]
|
|
45
|
+
[Minor deviations if any, or "None"]
|
|
46
|
+
|
|
47
|
+
## Next Phase Readiness
|
|
48
|
+
[What's ready for next phase]
|
|
@@ -233,37 +233,14 @@ The one-liner should tell someone what actually shipped.
|
|
|
233
233
|
</example>
|
|
234
234
|
|
|
235
235
|
<guidelines>
|
|
236
|
-
**
|
|
237
|
-
|
|
238
|
-
-
|
|
239
|
-
- Documents what actually happened vs what was planned
|
|
240
|
-
|
|
241
|
-
**Frontmatter completion:**
|
|
242
|
-
- MANDATORY: Complete all frontmatter fields during summary creation
|
|
243
|
-
- See <frontmatter_guidance> for field purposes
|
|
244
|
-
- Frontmatter enables automatic context assembly for future planning
|
|
245
|
-
|
|
246
|
-
**One-liner requirements:**
|
|
247
|
-
- Must be substantive (describe what shipped, not "phase complete")
|
|
248
|
-
- Should tell someone what was accomplished
|
|
249
|
-
- Examples: "JWT auth with refresh rotation using jose library" not "Authentication implemented"
|
|
250
|
-
|
|
251
|
-
**Performance tracking:**
|
|
252
|
-
- Include duration, start/end timestamps
|
|
253
|
-
- Used for velocity metrics in STATE.md
|
|
254
|
-
|
|
255
|
-
**Deviations section:**
|
|
256
|
-
- Documents unplanned work handled via deviation rules
|
|
257
|
-
- Separate from "Issues Encountered" (which is planned work problems)
|
|
258
|
-
- Auto-fixed issues: What was wrong, how fixed, verification
|
|
236
|
+
**Frontmatter:** MANDATORY - complete all fields. Enables automatic context assembly for future planning.
|
|
237
|
+
|
|
238
|
+
**One-liner:** Must be substantive. "JWT auth with refresh rotation using jose library" not "Authentication implemented".
|
|
259
239
|
|
|
260
240
|
**Decisions section:**
|
|
261
|
-
- Key decisions made during execution
|
|
262
|
-
- Include rationale (why this choice)
|
|
241
|
+
- Key decisions made during execution with rationale
|
|
263
242
|
- Extracted to STATE.md accumulated context
|
|
264
243
|
- Use "None - followed plan as specified" if no deviations
|
|
265
244
|
|
|
266
|
-
**After creation:**
|
|
267
|
-
- STATE.md updated with position, decisions, issues
|
|
268
|
-
- Next plan can reference decisions made
|
|
245
|
+
**After creation:** STATE.md updated with position, decisions, issues.
|
|
269
246
|
</guidelines>
|