gsd-opencode 1.3.31

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 (68) hide show
  1. package/bin/install.js +222 -0
  2. package/command/gsd/add-phase.md +207 -0
  3. package/command/gsd/complete-milestone.md +105 -0
  4. package/command/gsd/consider-issues.md +201 -0
  5. package/command/gsd/create-roadmap.md +115 -0
  6. package/command/gsd/discuss-milestone.md +47 -0
  7. package/command/gsd/discuss-phase.md +60 -0
  8. package/command/gsd/execute-plan.md +128 -0
  9. package/command/gsd/help.md +315 -0
  10. package/command/gsd/insert-phase.md +227 -0
  11. package/command/gsd/list-phase-assumptions.md +50 -0
  12. package/command/gsd/map-codebase.md +84 -0
  13. package/command/gsd/new-milestone.md +59 -0
  14. package/command/gsd/new-project.md +316 -0
  15. package/command/gsd/pause-work.md +122 -0
  16. package/command/gsd/plan-fix.md +205 -0
  17. package/command/gsd/plan-phase.md +67 -0
  18. package/command/gsd/progress.md +316 -0
  19. package/command/gsd/remove-phase.md +338 -0
  20. package/command/gsd/research-phase.md +91 -0
  21. package/command/gsd/resume-work.md +40 -0
  22. package/command/gsd/verify-work.md +71 -0
  23. package/get-shit-done/references/checkpoints.md +287 -0
  24. package/get-shit-done/references/continuation-format.md +255 -0
  25. package/get-shit-done/references/git-integration.md +254 -0
  26. package/get-shit-done/references/plan-format.md +428 -0
  27. package/get-shit-done/references/principles.md +157 -0
  28. package/get-shit-done/references/questioning.md +162 -0
  29. package/get-shit-done/references/research-pitfalls.md +215 -0
  30. package/get-shit-done/references/scope-estimation.md +172 -0
  31. package/get-shit-done/references/tdd.md +263 -0
  32. package/get-shit-done/templates/codebase/architecture.md +255 -0
  33. package/get-shit-done/templates/codebase/concerns.md +310 -0
  34. package/get-shit-done/templates/codebase/conventions.md +307 -0
  35. package/get-shit-done/templates/codebase/integrations.md +280 -0
  36. package/get-shit-done/templates/codebase/stack.md +186 -0
  37. package/get-shit-done/templates/codebase/structure.md +285 -0
  38. package/get-shit-done/templates/codebase/testing.md +480 -0
  39. package/get-shit-done/templates/config.json +18 -0
  40. package/get-shit-done/templates/context.md +161 -0
  41. package/get-shit-done/templates/continue-here.md +78 -0
  42. package/get-shit-done/templates/discovery.md +146 -0
  43. package/get-shit-done/templates/issues.md +32 -0
  44. package/get-shit-done/templates/milestone-archive.md +123 -0
  45. package/get-shit-done/templates/milestone-context.md +93 -0
  46. package/get-shit-done/templates/milestone.md +115 -0
  47. package/get-shit-done/templates/phase-prompt.md +303 -0
  48. package/get-shit-done/templates/project.md +184 -0
  49. package/get-shit-done/templates/research.md +529 -0
  50. package/get-shit-done/templates/roadmap.md +196 -0
  51. package/get-shit-done/templates/state.md +210 -0
  52. package/get-shit-done/templates/summary.md +273 -0
  53. package/get-shit-done/templates/uat-issues.md +143 -0
  54. package/get-shit-done/workflows/complete-milestone.md +643 -0
  55. package/get-shit-done/workflows/create-milestone.md +416 -0
  56. package/get-shit-done/workflows/create-roadmap.md +481 -0
  57. package/get-shit-done/workflows/discovery-phase.md +293 -0
  58. package/get-shit-done/workflows/discuss-milestone.md +236 -0
  59. package/get-shit-done/workflows/discuss-phase.md +247 -0
  60. package/get-shit-done/workflows/execute-phase.md +1625 -0
  61. package/get-shit-done/workflows/list-phase-assumptions.md +178 -0
  62. package/get-shit-done/workflows/map-codebase.md +434 -0
  63. package/get-shit-done/workflows/plan-phase.md +488 -0
  64. package/get-shit-done/workflows/research-phase.md +436 -0
  65. package/get-shit-done/workflows/resume-project.md +287 -0
  66. package/get-shit-done/workflows/transition.md +580 -0
  67. package/get-shit-done/workflows/verify-work.md +202 -0
  68. package/package.json +38 -0
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: gsd:research-phase
3
+ description: Research how to implement a phase before planning
4
+ argument-hint: "[phase]"
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ - Glob
9
+ - Grep
10
+ - Write
11
+ - webfetch
12
+ - WebSearch
13
+ - mcp__context7__*
14
+ ---
15
+
16
+ <objective>
17
+ Comprehensive research on HOW to implement a phase before planning.
18
+
19
+ This is for niche/complex domains where Claude's training data is sparse or outdated. Research discovers:
20
+ - What libraries exist for this problem
21
+ - What architecture patterns experts use
22
+ - What standard stack looks like
23
+ - What problems people commonly hit
24
+ - What NOT to hand-roll (use existing solutions)
25
+
26
+ Output: RESEARCH.md with ecosystem knowledge that informs quality planning.
27
+ </objective>
28
+
29
+ <execution_context>
30
+ @~/.config/opencode/get-shit-done/workflows/research-phase.md
31
+ @~/.config/opencode/get-shit-done/templates/research.md
32
+ @~/.config/opencode/get-shit-done/references/research-pitfalls.md
33
+ </execution_context>
34
+
35
+ <context>
36
+ Phase number: $ARGUMENTS (required)
37
+
38
+ **Load project state:**
39
+ @.planning/STATE.md
40
+
41
+ **Load roadmap:**
42
+ @.planning/ROADMAP.md
43
+
44
+ **Load phase context if exists:**
45
+ Check for `.planning/phases/XX-name/{phase}-CONTEXT.md` - bonus context from discuss-phase.
46
+ </context>
47
+
48
+ <process>
49
+ 1. Validate phase number argument (error if missing or invalid)
50
+ 2. Check if phase exists in roadmap - extract phase description
51
+ 3. Check if RESEARCH.md already exists (offer to update or use existing)
52
+ 4. Load CONTEXT.md if it exists (bonus context for research direction)
53
+ 5. Follow research-phase.md workflow:
54
+ - Analyze phase to identify knowledge gaps
55
+ - Determine research domains (architecture, ecosystem, patterns, pitfalls)
56
+ - Execute comprehensive research via Context7, official docs, WebSearch
57
+ - Cross-verify all findings
58
+ - Create RESEARCH.md with actionable ecosystem knowledge
59
+ 6. Offer next steps (plan phase)
60
+ </process>
61
+
62
+ <when_to_use>
63
+ **Use research-phase for:**
64
+ - 3D graphics (Three.js, WebGL, procedural generation)
65
+ - Game development (physics, collision, AI, procedural content)
66
+ - Audio/music (Web Audio API, DSP, synthesis)
67
+ - Shaders (GLSL, Metal, ISF)
68
+ - ML/AI integration (model serving, inference, pipelines)
69
+ - Real-time systems (WebSockets, WebRTC, sync)
70
+ - Specialized frameworks with active ecosystems
71
+ - Any domain where "how do experts do this" matters
72
+
73
+ **Skip research-phase for:**
74
+ - Standard web dev (auth, CRUD, REST APIs)
75
+ - Well-known patterns (forms, validation, testing)
76
+ - Simple integrations (Stripe, SendGrid with clear docs)
77
+ - Commodity features Claude handles well
78
+ </when_to_use>
79
+
80
+ <success_criteria>
81
+ - [ ] Phase validated against roadmap
82
+ - [ ] Domain/ecosystem identified from phase description
83
+ - [ ] Comprehensive research executed (Context7 + official docs + WebSearch)
84
+ - [ ] All WebSearch findings cross-verified with authoritative sources
85
+ - [ ] RESEARCH.md created with ecosystem knowledge
86
+ - [ ] Standard stack/libraries identified
87
+ - [ ] Architecture patterns documented
88
+ - [ ] Common pitfalls catalogueed
89
+ - [ ] What NOT to hand-roll is clear
90
+ - [ ] User knows next steps (plan phase)
91
+ </success_criteria>
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: gsd:resume-work
3
+ description: Resume work from previous session with full context restoration
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ - Write
8
+ - question
9
+ ---
10
+
11
+ <objective>
12
+ Restore complete project context and resume work seamlessly from previous session.
13
+
14
+ Routes to:
15
+ - resume-project workflow which handles:
16
+
17
+ - STATE.md loading (or reconstruction if missing)
18
+ - Checkpoint detection (.continue-here files)
19
+ - Incomplete work detection (PLAN without SUMMARY)
20
+ - Status presentation
21
+ - Context-aware next action routing
22
+ </objective>
23
+
24
+ <execution_context>
25
+ @~/.config/opencode/get-shit-done/workflows/resume-project.md
26
+ </execution_context>
27
+
28
+ <process>
29
+ **Follow resume-project workflow** from `@~/.config/opencode/get-shit-done/workflows/resume-project.md`.
30
+
31
+ The workflow handles all resumption logic including:
32
+
33
+ 1. Project existence verification
34
+ 2. STATE.md loading or reconstruction
35
+ 3. Checkpoint and incomplete work detection
36
+ 4. Visual status presentation
37
+ 5. Context-aware option offering (checks CONTEXT.md before suggesting plan vs discuss)
38
+ 6. Routing to appropriate next command
39
+ 7. Session continuity updates
40
+ </process>
@@ -0,0 +1,71 @@
1
+ ---
2
+ name: gsd:verify-work
3
+ description: Guide manual user acceptance testing of recently built features
4
+ argument-hint: "[optional: phase or plan number, e.g., '4' or '04-02']"
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ - Glob
9
+ - Grep
10
+ - Edit
11
+ - Write
12
+ - question
13
+ ---
14
+
15
+ <objective>
16
+ Guide user through manual acceptance testing of recently built features.
17
+
18
+ Purpose: Validate that what Claude thinks was built actually works from user's perspective. The USER performs all testing — Claude generates test checklist, guides process, and captures issues.
19
+
20
+ Output: Validation of features, any issues logged to phase-scoped ISSUES.md
21
+ </objective>
22
+
23
+ <execution_context>
24
+ @~/.config/opencode/get-shit-done/workflows/verify-work.md
25
+ @~/.config/opencode/get-shit-done/templates/uat-issues.md
26
+ </execution_context>
27
+
28
+ <context>
29
+ Scope: $ARGUMENTS (optional)
30
+ - If provided: Test specific phase or plan (e.g., "4" or "04-02")
31
+ - If not provided: Test most recently completed plan
32
+
33
+ **Load project state:**
34
+ @.planning/STATE.md
35
+
36
+ **Load roadmap:**
37
+ @.planning/ROADMAP.md
38
+ </context>
39
+
40
+ <process>
41
+ 1. Validate arguments (if provided, parse as phase or plan number)
42
+ 2. Find relevant SUMMARY.md (specified or most recent)
43
+ 3. Follow verify-work.md workflow:
44
+ - Extract testable deliverables
45
+ - Generate test checklist
46
+ - Guide through each test via question
47
+ - Collect and categorize issues
48
+ - Log issues to `.planning/phases/XX-name/{phase}-{plan}-ISSUES.md`
49
+ - Present summary with verdict
50
+ 4. Offer next steps based on results:
51
+ - If all passed: Continue to next phase
52
+ - If issues found: `/gsd:plan-fix {phase} {plan}` to create fix plan
53
+ </process>
54
+
55
+ <anti_patterns>
56
+ - Don't run automated tests (that's for CI/test suites)
57
+ - Don't make assumptions about test results — USER reports outcomes
58
+ - Don't skip guidance — walk through each test
59
+ - Don't dismiss minor issues — log everything user reports
60
+ - Don't fix issues during testing — capture for later
61
+ </anti_patterns>
62
+
63
+ <success_criteria>
64
+ - [ ] Test scope identified from SUMMARY.md
65
+ - [ ] Checklist generated based on deliverables
66
+ - [ ] User guided through each test
67
+ - [ ] All test results captured (pass/fail/partial/skip)
68
+ - [ ] Any issues logged to phase-scoped ISSUES.md (not global)
69
+ - [ ] Summary presented with verdict
70
+ - [ ] User knows next steps based on results
71
+ </success_criteria>
@@ -0,0 +1,287 @@
1
+ <overview>
2
+ Plans execute autonomously. Checkpoints formalize interaction points where human verification or decisions are needed.
3
+
4
+ **Core principle:** Claude automates everything with CLI/API. Checkpoints are for verification and decisions, not manual work.
5
+ </overview>
6
+
7
+ <checkpoint_types>
8
+
9
+ ## checkpoint:human-verify (90% of checkpoints)
10
+
11
+ **When:** Claude completed automated work, human confirms it works correctly.
12
+
13
+ **Use for:** Visual UI checks, interactive flows, functional verification, audio/video quality, animation smoothness, accessibility testing.
14
+
15
+ **Structure:**
16
+ ```xml
17
+ <task type="checkpoint:human-verify" gate="blocking">
18
+ <what-built>[What Claude automated]</what-built>
19
+ <how-to-verify>[Numbered steps - URLs, commands, expected behavior]</how-to-verify>
20
+ <resume-signal>[How to continue - "approved" or describe issues]</resume-signal>
21
+ </task>
22
+ ```
23
+
24
+ **Example:**
25
+ ```xml
26
+ <task type="auto">
27
+ <name>Deploy to Vercel</name>
28
+ <action>Run `vercel --yes` to deploy. Capture URL.</action>
29
+ <verify>vercel ls shows deployment, curl {url} returns 200</verify>
30
+ </task>
31
+
32
+ <task type="checkpoint:human-verify" gate="blocking">
33
+ <what-built>Deployed to https://myapp.vercel.app</what-built>
34
+ <how-to-verify>
35
+ Visit URL and confirm:
36
+ 1. Homepage loads without errors
37
+ 2. All images/assets load
38
+ 3. No console errors
39
+ </how-to-verify>
40
+ <resume-signal>Type "approved" or describe issues</resume-signal>
41
+ </task>
42
+ ```
43
+
44
+ ## checkpoint:decision (9% of checkpoints)
45
+
46
+ **When:** Human must make choice that affects implementation direction.
47
+
48
+ **Use for:** Technology selection, architecture decisions, design choices, feature prioritization.
49
+
50
+ **Structure:**
51
+ ```xml
52
+ <task type="checkpoint:decision" gate="blocking">
53
+ <decision>[What's being decided]</decision>
54
+ <context>[Why this matters]</context>
55
+ <options>
56
+ <option id="option-a"><name>[Name]</name><pros>[Benefits]</pros><cons>[Tradeoffs]</cons></option>
57
+ <option id="option-b"><name>[Name]</name><pros>[Benefits]</pros><cons>[Tradeoffs]</cons></option>
58
+ </options>
59
+ <resume-signal>[How to indicate choice]</resume-signal>
60
+ </task>
61
+ ```
62
+
63
+ **Example:**
64
+ ```xml
65
+ <task type="checkpoint:decision" gate="blocking">
66
+ <decision>Select authentication provider</decision>
67
+ <context>Need user auth. Three options with different tradeoffs.</context>
68
+ <options>
69
+ <option id="supabase"><name>Supabase Auth</name><pros>Built-in with DB, free tier, RLS integration</pros><cons>Less customizable, ecosystem lock-in</cons></option>
70
+ <option id="clerk"><name>Clerk</name><pros>Beautiful UI, best DX</pros><cons>Paid after 10k MAU</cons></option>
71
+ <option id="nextauth"><name>NextAuth.js</name><pros>Free, self-hosted, max control</pros><cons>More setup, DIY security</cons></option>
72
+ </options>
73
+ <resume-signal>Select: supabase, clerk, or nextauth</resume-signal>
74
+ </task>
75
+ ```
76
+
77
+ ## checkpoint:human-action (1% - rare)
78
+
79
+ **When:** Action has NO CLI/API and requires human-only interaction.
80
+
81
+ **Use ONLY for:** Email verification links, SMS 2FA codes, manual account approvals, 3D Secure payment flows, OAuth app approvals.
82
+
83
+ **Do NOT use for:** Deployments (use CLI), creating resources (use CLI/API), builds/tests (use Bash), file operations (use Write/Edit).
84
+
85
+ **Structure:**
86
+ ```xml
87
+ <task type="checkpoint:human-action" gate="blocking">
88
+ <action>[Unavoidable manual step]</action>
89
+ <instructions>[What Claude automated] [ONE thing requiring human action]</instructions>
90
+ <verification>[What Claude checks afterward]</verification>
91
+ <resume-signal>[How to continue]</resume-signal>
92
+ </task>
93
+ ```
94
+
95
+ **Example (email verification):**
96
+ ```xml
97
+ <task type="checkpoint:human-action" gate="blocking">
98
+ <action>Complete email verification for SendGrid account</action>
99
+ <instructions>
100
+ I created the account and requested verification email.
101
+ Check your inbox for verification link and click it.
102
+ </instructions>
103
+ <verification>SendGrid API key works: curl test succeeds</verification>
104
+ <resume-signal>Type "done" when verified</resume-signal>
105
+ </task>
106
+ ```
107
+
108
+ </checkpoint_types>
109
+
110
+ <execution_protocol>
111
+
112
+ When Claude encounters `type="checkpoint:*"`:
113
+
114
+ 1. **Stop immediately** - do not proceed to next task
115
+ 2. **Display checkpoint clearly:**
116
+
117
+ ```
118
+ ════════════════════════════════════════
119
+ CHECKPOINT: [Type]
120
+ ════════════════════════════════════════
121
+
122
+ Task [X] of [Y]: [Name]
123
+
124
+ [Checkpoint-specific content]
125
+
126
+ [Resume signal instruction]
127
+ ════════════════════════════════════════
128
+ ```
129
+
130
+ 3. **Wait for user response** - do not hallucinate completion
131
+ 4. **Verify if possible** - check files, run tests
132
+ 5. **Resume execution** - continue only after confirmation
133
+
134
+ </execution_protocol>
135
+
136
+ <authentication_gates>
137
+
138
+ **Critical:** When Claude tries CLI/API and gets auth error, this is NOT a failure - it's a gate requiring human input to unblock automation.
139
+
140
+ **Pattern:** Claude tries automation → auth error → creates checkpoint → you authenticate → Claude retries → continues
141
+
142
+ **Gate protocol:**
143
+ 1. Recognize it's not a failure - missing auth is expected
144
+ 2. Stop current task - don't retry repeatedly
145
+ 3. Create checkpoint:human-action dynamically
146
+ 4. Provide exact authentication steps
147
+ 5. Verify authentication works
148
+ 6. Retry the original task
149
+ 7. Continue normally
150
+
151
+ **Example (Vercel auth gate):**
152
+ ```xml
153
+ <!-- Claude tries to deploy -->
154
+ <task type="auto">
155
+ <name>Deploy to Vercel</name>
156
+ <action>Run `vercel --yes` to deploy</action>
157
+ </task>
158
+
159
+ <!-- If vercel returns "Error: Not authenticated" -->
160
+ <task type="checkpoint:human-action" gate="blocking">
161
+ <action>Authenticate Vercel CLI so I can continue</action>
162
+ <instructions>
163
+ I tried to deploy but got authentication error.
164
+ Run: vercel login (opens browser)
165
+ </instructions>
166
+ <verification>vercel whoami returns your account</verification>
167
+ <resume-signal>Type "done" when authenticated</resume-signal>
168
+ </task>
169
+
170
+ <!-- After auth, Claude retries automatically -->
171
+ <task type="auto">
172
+ <name>Retry deployment</name>
173
+ <action>Run `vercel --yes` (now authenticated)</action>
174
+ </task>
175
+ ```
176
+
177
+ **Key distinction:**
178
+ - Pre-planned checkpoint: "I need you to do X" (wrong - Claude should automate)
179
+ - Auth gate: "I tried to automate X but need credentials" (correct - unblocks automation)
180
+
181
+ </authentication_gates>
182
+
183
+ <automation_reference>
184
+
185
+ **The rule:** If it has CLI/API, Claude does it. Never ask human to perform automatable work.
186
+
187
+ | Service | CLI/API | Key Commands | Auth Gate |
188
+ |---------|---------|--------------|-----------|
189
+ | Vercel | `vercel` | `--yes`, `env add`, `--prod`, `ls` | `vercel login` |
190
+ | Railway | `railway` | `init`, `up`, `variables set` | `railway login` |
191
+ | Fly | `fly` | `launch`, `deploy`, `secrets set` | `fly auth login` |
192
+ | Stripe | `stripe` + API | `listen`, `trigger`, API calls | API key in .env |
193
+ | Supabase | `supabase` | `init`, `link`, `db push`, `gen types` | `supabase login` |
194
+ | Upstash | `upstash` | `redis create`, `redis get` | `upstash auth login` |
195
+ | PlanetScale | `pscale` | `database create`, `branch create` | `pscale auth login` |
196
+ | GitHub | `gh` | `repo create`, `pr create`, `secret set` | `gh auth login` |
197
+ | Node | `npm`/`pnpm` | `install`, `run build`, `test` | N/A |
198
+ | Xcode | `xcodebuild` | `-project`, `-scheme`, `build`, `test` | N/A |
199
+
200
+ **Env files:** Use Write/Edit tools. Never ask human to create .env manually.
201
+
202
+ **Quick reference:**
203
+
204
+ | Action | Automatable? | Claude does it? |
205
+ |--------|--------------|-----------------|
206
+ | Deploy to Vercel | Yes (`vercel`) | YES |
207
+ | Create Stripe webhook | Yes (API) | YES |
208
+ | Write .env file | Yes (Write tool) | YES |
209
+ | Create Upstash DB | Yes (`upstash`) | YES |
210
+ | Run tests | Yes (`npm test`) | YES |
211
+ | Click email verification link | No | NO |
212
+ | Enter credit card with 3DS | No | NO |
213
+
214
+ </automation_reference>
215
+
216
+ <guidelines>
217
+
218
+ **DO:**
219
+ - Automate everything with CLI/API before checkpoint
220
+ - Be specific: "Visit https://myapp.vercel.app" not "check deployment"
221
+ - Number verification steps
222
+ - State expected outcomes
223
+ - Make verification executable
224
+
225
+ **DON'T:**
226
+ - Ask human to do work Claude can automate
227
+ - Assume knowledge: "Configure the usual settings"
228
+ - Mix multiple verifications in one checkpoint
229
+ - Use checkpoints too frequently (verification fatigue)
230
+
231
+ **Placement:**
232
+ - After automation completes (not before)
233
+ - After UI buildout
234
+ - Before dependent work (decisions)
235
+ - At integration points
236
+
237
+ </guidelines>
238
+
239
+ <anti_patterns>
240
+
241
+ **BAD: Asking human to automate**
242
+ ```xml
243
+ <task type="checkpoint:human-action">
244
+ <action>Deploy to Vercel</action>
245
+ <instructions>Visit vercel.com/new, import repo, click Deploy</instructions>
246
+ </task>
247
+ ```
248
+ Why bad: Vercel has CLI. Use `vercel --yes`.
249
+
250
+ **BAD: Too many checkpoints**
251
+ ```xml
252
+ <task type="auto">Create schema</task>
253
+ <task type="checkpoint:human-verify">Check schema</task>
254
+ <task type="auto">Create API</task>
255
+ <task type="checkpoint:human-verify">Check API</task>
256
+ ```
257
+ Why bad: Verification fatigue. Combine into one checkpoint at end.
258
+
259
+ **GOOD: Claude automates, human verifies once**
260
+ ```xml
261
+ <task type="auto">Create schema</task>
262
+ <task type="auto">Create API</task>
263
+ <task type="auto">Create UI</task>
264
+
265
+ <task type="checkpoint:human-verify">
266
+ <what-built>Complete auth flow</what-built>
267
+ <how-to-verify>Test full flow: register, login, access protected page</how-to-verify>
268
+ </task>
269
+ ```
270
+
271
+ </anti_patterns>
272
+
273
+ <summary>
274
+
275
+ **The golden rule:** If Claude CAN automate it, Claude MUST automate it.
276
+
277
+ **Checkpoint priority:**
278
+ 1. **checkpoint:human-verify** (90%) - Claude automated, human confirms visual/functional correctness
279
+ 2. **checkpoint:decision** (9%) - Human makes architectural/technology choices
280
+ 3. **checkpoint:human-action** (1%) - Truly unavoidable manual steps with no API/CLI
281
+
282
+ **When NOT to use checkpoints:**
283
+ - Things Claude can verify programmatically (tests, builds)
284
+ - File operations (Claude can read/write)
285
+ - Anything with CLI/API available
286
+
287
+ </summary>