gsd-opencode 1.20.4 → 1.22.0

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 (110) hide show
  1. package/agents/gsd-codebase-mapper.md +9 -1
  2. package/agents/gsd-debugger.md +66 -10
  3. package/agents/gsd-executor.md +36 -16
  4. package/agents/gsd-integration-checker.md +2 -0
  5. package/agents/gsd-nyquist-auditor.md +178 -0
  6. package/agents/gsd-phase-researcher.md +28 -34
  7. package/agents/gsd-plan-checker.md +42 -78
  8. package/agents/gsd-planner.md +139 -24
  9. package/agents/gsd-project-researcher.md +11 -1
  10. package/agents/gsd-research-synthesizer.md +13 -3
  11. package/agents/gsd-roadmapper.md +25 -15
  12. package/agents/gsd-verifier.md +29 -6
  13. package/bin/dm/lib/constants.js +6 -1
  14. package/bin/dm/src/services/file-ops.js +14 -1
  15. package/commands/gsd/gsd-add-phase.md +6 -6
  16. package/commands/gsd/gsd-add-tests.md +41 -0
  17. package/commands/gsd/gsd-add-todo.md +7 -7
  18. package/commands/gsd/gsd-audit-milestone.md +9 -9
  19. package/commands/gsd/gsd-check-profile.md +3 -3
  20. package/commands/gsd/gsd-check-todos.md +7 -7
  21. package/commands/gsd/gsd-cleanup.md +2 -2
  22. package/commands/gsd/gsd-complete-milestone.md +6 -6
  23. package/commands/gsd/gsd-debug.md +11 -7
  24. package/commands/gsd/gsd-discuss-phase.md +26 -19
  25. package/commands/gsd/gsd-execute-phase.md +13 -13
  26. package/commands/gsd/gsd-health.md +7 -7
  27. package/commands/gsd/gsd-help.md +2 -2
  28. package/commands/gsd/gsd-insert-phase.md +6 -6
  29. package/commands/gsd/gsd-join-discord.md +1 -1
  30. package/commands/gsd/gsd-list-phase-assumptions.md +6 -6
  31. package/commands/gsd/gsd-map-codebase.md +8 -8
  32. package/commands/gsd/gsd-new-milestone.md +12 -12
  33. package/commands/gsd/gsd-new-project.md +12 -12
  34. package/commands/gsd/gsd-pause-work.md +6 -6
  35. package/commands/gsd/gsd-plan-milestone-gaps.md +9 -9
  36. package/commands/gsd/gsd-plan-phase.md +14 -13
  37. package/commands/gsd/gsd-progress.md +8 -8
  38. package/commands/gsd/gsd-quick.md +17 -13
  39. package/commands/gsd/gsd-reapply-patches.md +19 -11
  40. package/commands/gsd/gsd-remove-phase.md +7 -7
  41. package/commands/gsd/gsd-research-phase.md +12 -11
  42. package/commands/gsd/gsd-resume-work.md +8 -8
  43. package/commands/gsd/gsd-set-profile.md +6 -6
  44. package/commands/gsd/gsd-settings.md +7 -7
  45. package/commands/gsd/gsd-update.md +5 -5
  46. package/commands/gsd/gsd-validate-phase.md +35 -0
  47. package/commands/gsd/gsd-verify-work.md +11 -11
  48. package/get-shit-done/bin/gsd-tools.cjs +45 -6
  49. package/get-shit-done/bin/lib/commands.cjs +11 -19
  50. package/get-shit-done/bin/lib/config.cjs +8 -1
  51. package/get-shit-done/bin/lib/core.cjs +131 -16
  52. package/get-shit-done/bin/lib/init.cjs +28 -12
  53. package/get-shit-done/bin/lib/milestone.cjs +34 -8
  54. package/get-shit-done/bin/lib/phase.cjs +74 -50
  55. package/get-shit-done/bin/lib/roadmap.cjs +7 -7
  56. package/get-shit-done/bin/lib/state.cjs +294 -63
  57. package/get-shit-done/bin/lib/template.cjs +3 -3
  58. package/get-shit-done/bin/lib/verify.cjs +56 -8
  59. package/get-shit-done/references/checkpoints.md +1 -1
  60. package/get-shit-done/references/decimal-phase-calculation.md +6 -6
  61. package/get-shit-done/references/git-integration.md +3 -3
  62. package/get-shit-done/references/git-planning-commit.md +2 -2
  63. package/get-shit-done/references/model-profile-resolution.md +1 -1
  64. package/get-shit-done/references/model-profiles.md +1 -0
  65. package/get-shit-done/references/phase-argument-parsing.md +4 -4
  66. package/get-shit-done/references/planning-config.md +10 -6
  67. package/get-shit-done/references/questioning.md +17 -0
  68. package/get-shit-done/references/verification-patterns.md +1 -1
  69. package/get-shit-done/templates/DEBUG.md +7 -2
  70. package/get-shit-done/templates/VALIDATION.md +18 -46
  71. package/get-shit-done/templates/codebase/structure.md +3 -3
  72. package/get-shit-done/templates/config.json +2 -2
  73. package/get-shit-done/templates/context.md +14 -0
  74. package/get-shit-done/templates/phase-prompt.md +10 -10
  75. package/get-shit-done/templates/retrospective.md +54 -0
  76. package/get-shit-done/templates/roadmap.md +1 -1
  77. package/get-shit-done/workflows/add-phase.md +3 -2
  78. package/get-shit-done/workflows/add-tests.md +351 -0
  79. package/get-shit-done/workflows/add-todo.md +4 -3
  80. package/get-shit-done/workflows/audit-milestone.md +40 -5
  81. package/get-shit-done/workflows/check-todos.md +3 -2
  82. package/get-shit-done/workflows/cleanup.md +1 -1
  83. package/get-shit-done/workflows/complete-milestone.md +69 -5
  84. package/get-shit-done/workflows/diagnose-issues.md +2 -2
  85. package/get-shit-done/workflows/discovery-phase.md +6 -6
  86. package/get-shit-done/workflows/discuss-phase.md +194 -58
  87. package/get-shit-done/workflows/execute-phase.md +29 -23
  88. package/get-shit-done/workflows/execute-plan.md +22 -18
  89. package/get-shit-done/workflows/health.md +5 -2
  90. package/get-shit-done/workflows/help.md +4 -1
  91. package/get-shit-done/workflows/insert-phase.md +3 -2
  92. package/get-shit-done/workflows/map-codebase.md +3 -2
  93. package/get-shit-done/workflows/new-milestone.md +12 -10
  94. package/get-shit-done/workflows/new-project.md +44 -49
  95. package/get-shit-done/workflows/pause-work.md +2 -2
  96. package/get-shit-done/workflows/plan-milestone-gaps.md +3 -3
  97. package/get-shit-done/workflows/plan-phase.md +155 -73
  98. package/get-shit-done/workflows/progress.md +8 -7
  99. package/get-shit-done/workflows/quick.md +158 -10
  100. package/get-shit-done/workflows/remove-phase.md +5 -4
  101. package/get-shit-done/workflows/research-phase.md +5 -4
  102. package/get-shit-done/workflows/resume-project.md +3 -2
  103. package/get-shit-done/workflows/set-profile.md +3 -2
  104. package/get-shit-done/workflows/settings.md +6 -6
  105. package/get-shit-done/workflows/transition.md +5 -5
  106. package/get-shit-done/workflows/update.md +45 -19
  107. package/get-shit-done/workflows/validate-phase.md +167 -0
  108. package/get-shit-done/workflows/verify-phase.md +10 -9
  109. package/get-shit-done/workflows/verify-work.md +18 -4
  110. package/package.json +1 -1
@@ -2,21 +2,21 @@
2
2
  name: gsd-health
3
3
  description: Diagnose planning directory health and optionally repair issues
4
4
  argument-hint: [--repair]
5
- allowed-tools:
6
- - read
7
- - bash
8
- - write
9
- - question
5
+ permissions:
6
+ read: true
7
+ bash: true
8
+ write: true
9
+ question: true
10
10
  ---
11
11
  <objective>
12
12
  Validate `.planning/` directory integrity and report actionable issues. Checks for missing files, invalid configurations, inconsistent state, and orphaned plans.
13
13
  </objective>
14
14
 
15
15
  <execution_context>
16
- @~/.config/opencode/get-shit-done/workflows/health.md
16
+ @$HOME/.config/opencode/get-shit-done/workflows/health.md
17
17
  </execution_context>
18
18
 
19
19
  <process>
20
- Execute the health workflow from @~/.config/opencode/get-shit-done/workflows/health.md end-to-end.
20
+ Execute the health workflow from @$HOME/.config/opencode/get-shit-done/workflows/health.md end-to-end.
21
21
  Parse --repair flag from arguments and pass to workflow.
22
22
  </process>
@@ -13,10 +13,10 @@ Output ONLY the reference content below. Do NOT add:
13
13
  </objective>
14
14
 
15
15
  <execution_context>
16
- @~/.config/opencode/get-shit-done/workflows/help.md
16
+ @$HOME/.config/opencode/get-shit-done/workflows/help.md
17
17
  </execution_context>
18
18
 
19
19
  <process>
20
- Output the complete GSD command reference from @~/.config/opencode/get-shit-done/workflows/help.md.
20
+ Output the complete GSD command reference from @$HOME/.config/opencode/get-shit-done/workflows/help.md.
21
21
  Display the reference content directly — no additions or modifications.
22
22
  </process>
@@ -2,10 +2,10 @@
2
2
  name: gsd-insert-phase
3
3
  description: Insert urgent work as decimal phase (e.g., 72.1) between existing phases
4
4
  argument-hint: <after> <description>
5
- allowed-tools:
6
- - read
7
- - write
8
- - bash
5
+ permissions:
6
+ read: true
7
+ write: true
8
+ bash: true
9
9
  ---
10
10
 
11
11
  <objective>
@@ -17,7 +17,7 @@ Purpose: Handle urgent work discovered during execution without renumbering enti
17
17
  </objective>
18
18
 
19
19
  <execution_context>
20
- @~/.config/opencode/get-shit-done/workflows/insert-phase.md
20
+ @$HOME/.config/opencode/get-shit-done/workflows/insert-phase.md
21
21
  </execution_context>
22
22
 
23
23
  <context>
@@ -27,6 +27,6 @@ Roadmap and state are resolved in-workflow via `init phase-op` and targeted tool
27
27
  </context>
28
28
 
29
29
  <process>
30
- Execute the insert-phase workflow from @~/.config/opencode/get-shit-done/workflows/insert-phase.md end-to-end.
30
+ Execute the insert-phase workflow from @$HOME/.config/opencode/get-shit-done/workflows/insert-phase.md end-to-end.
31
31
  Preserve all validation gates (argument parsing, phase verification, decimal calculation, roadmap updates).
32
32
  </process>
@@ -12,7 +12,7 @@ Display the Discord invite link for the GSD community server.
12
12
 
13
13
  Connect with other GSD users, get help, share what you're building, and stay updated.
14
14
 
15
- **Invite link:** https://discord.gg/5JJgD5svVS
15
+ **Invite link:** https://discord.gg/gsd
16
16
 
17
17
  Click the link or paste it into your browser to join.
18
18
  </output>
@@ -2,11 +2,11 @@
2
2
  name: gsd-list-phase-assumptions
3
3
  description: Surface OpenCode's assumptions about a phase approach before planning
4
4
  argument-hint: "[phase]"
5
- allowed-tools:
6
- - read
7
- - bash
8
- - grep
9
- - glob
5
+ permissions:
6
+ read: true
7
+ bash: true
8
+ grep: true
9
+ glob: true
10
10
  ---
11
11
 
12
12
  <objective>
@@ -17,7 +17,7 @@ Output: Conversational output only (no file creation) - ends with "What do you t
17
17
  </objective>
18
18
 
19
19
  <execution_context>
20
- @~/.config/opencode/get-shit-done/workflows/list-phase-assumptions.md
20
+ @$HOME/.config/opencode/get-shit-done/workflows/list-phase-assumptions.md
21
21
  </execution_context>
22
22
 
23
23
  <context>
@@ -2,13 +2,13 @@
2
2
  name: gsd-map-codebase
3
3
  description: Analyze codebase with parallel mapper agents to produce .planning/codebase/ documents
4
4
  argument-hint: "[optional: specific area to map, e.g., 'api' or 'auth']"
5
- allowed-tools:
6
- - read
7
- - bash
8
- - glob
9
- - grep
10
- - write
11
- - task
5
+ permissions:
6
+ read: true
7
+ bash: true
8
+ glob: true
9
+ grep: true
10
+ write: true
11
+ task: true
12
12
  ---
13
13
 
14
14
  <objective>
@@ -20,7 +20,7 @@ Output: .planning/codebase/ folder with 7 structured documents about the codebas
20
20
  </objective>
21
21
 
22
22
  <execution_context>
23
- @~/.config/opencode/get-shit-done/workflows/map-codebase.md
23
+ @$HOME/.config/opencode/get-shit-done/workflows/map-codebase.md
24
24
  </execution_context>
25
25
 
26
26
  <context>
@@ -2,12 +2,12 @@
2
2
  name: gsd-new-milestone
3
3
  description: Start a new milestone cycle — update PROJECT.md and route to requirements
4
4
  argument-hint: "[milestone name, e.g., 'v1.1 Notifications']"
5
- allowed-tools:
6
- - read
7
- - write
8
- - bash
9
- - task
10
- - question
5
+ permissions:
6
+ read: true
7
+ write: true
8
+ bash: true
9
+ task: true
10
+ question: true
11
11
  ---
12
12
  <objective>
13
13
  Start a new milestone: questioning → research (optional) → requirements → roadmap.
@@ -25,11 +25,11 @@ Brownfield equivalent of new-project. Project exists, PROJECT.md has history. Ga
25
25
  </objective>
26
26
 
27
27
  <execution_context>
28
- @~/.config/opencode/get-shit-done/workflows/new-milestone.md
29
- @~/.config/opencode/get-shit-done/references/questioning.md
30
- @~/.config/opencode/get-shit-done/references/ui-brand.md
31
- @~/.config/opencode/get-shit-done/templates/project.md
32
- @~/.config/opencode/get-shit-done/templates/requirements.md
28
+ @$HOME/.config/opencode/get-shit-done/workflows/new-milestone.md
29
+ @$HOME/.config/opencode/get-shit-done/references/questioning.md
30
+ @$HOME/.config/opencode/get-shit-done/references/ui-brand.md
31
+ @$HOME/.config/opencode/get-shit-done/templates/project.md
32
+ @$HOME/.config/opencode/get-shit-done/templates/requirements.md
33
33
  </execution_context>
34
34
 
35
35
  <context>
@@ -39,6 +39,6 @@ Project and milestone context files are resolved inside the workflow (`init new-
39
39
  </context>
40
40
 
41
41
  <process>
42
- Execute the new-milestone workflow from @~/.config/opencode/get-shit-done/workflows/new-milestone.md end-to-end.
42
+ Execute the new-milestone workflow from @$HOME/.config/opencode/get-shit-done/workflows/new-milestone.md end-to-end.
43
43
  Preserve all workflow gates (validation, questioning, research, requirements, roadmap approval, commits).
44
44
  </process>
@@ -2,12 +2,12 @@
2
2
  name: gsd-new-project
3
3
  description: Initialize a new project with deep context gathering and PROJECT.md
4
4
  argument-hint: "[--auto]"
5
- allowed-tools:
6
- - read
7
- - bash
8
- - write
9
- - task
10
- - question
5
+ permissions:
6
+ read: true
7
+ bash: true
8
+ write: true
9
+ task: true
10
+ question: true
11
11
  ---
12
12
  <context>
13
13
  **Flags:**
@@ -29,14 +29,14 @@ Initialize a new project through unified flow: questioning → research (optiona
29
29
  </objective>
30
30
 
31
31
  <execution_context>
32
- @~/.config/opencode/get-shit-done/workflows/new-project.md
33
- @~/.config/opencode/get-shit-done/references/questioning.md
34
- @~/.config/opencode/get-shit-done/references/ui-brand.md
35
- @~/.config/opencode/get-shit-done/templates/project.md
36
- @~/.config/opencode/get-shit-done/templates/requirements.md
32
+ @$HOME/.config/opencode/get-shit-done/workflows/new-project.md
33
+ @$HOME/.config/opencode/get-shit-done/references/questioning.md
34
+ @$HOME/.config/opencode/get-shit-done/references/ui-brand.md
35
+ @$HOME/.config/opencode/get-shit-done/templates/project.md
36
+ @$HOME/.config/opencode/get-shit-done/templates/requirements.md
37
37
  </execution_context>
38
38
 
39
39
  <process>
40
- Execute the new-project workflow from @~/.config/opencode/get-shit-done/workflows/new-project.md end-to-end.
40
+ Execute the new-project workflow from @$HOME/.config/opencode/get-shit-done/workflows/new-project.md end-to-end.
41
41
  Preserve all workflow gates (validation, approvals, commits, routing).
42
42
  </process>
@@ -1,10 +1,10 @@
1
1
  ---
2
2
  name: gsd-pause-work
3
3
  description: Create context handoff when pausing work mid-phase
4
- allowed-tools:
5
- - read
6
- - write
7
- - bash
4
+ permissions:
5
+ read: true
6
+ write: true
7
+ bash: true
8
8
  ---
9
9
 
10
10
  <objective>
@@ -19,7 +19,7 @@ Routes to the pause-work workflow which handles:
19
19
  </objective>
20
20
 
21
21
  <execution_context>
22
- @~/.config/opencode/get-shit-done/workflows/pause-work.md
22
+ @$HOME/.config/opencode/get-shit-done/workflows/pause-work.md
23
23
  </execution_context>
24
24
 
25
25
  <context>
@@ -27,7 +27,7 @@ State and phase progress are gathered in-workflow with targeted reads.
27
27
  </context>
28
28
 
29
29
  <process>
30
- **Follow the pause-work workflow** from `@~/.config/opencode/get-shit-done/workflows/pause-work.md`.
30
+ **Follow the pause-work workflow** from `@$HOME/.config/opencode/get-shit-done/workflows/pause-work.md`.
31
31
 
32
32
  The workflow handles all logic including:
33
33
  1. Phase directory detection
@@ -1,13 +1,13 @@
1
1
  ---
2
2
  name: gsd-plan-milestone-gaps
3
3
  description: Create phases to close all gaps identified by milestone audit
4
- allowed-tools:
5
- - read
6
- - write
7
- - bash
8
- - glob
9
- - grep
10
- - question
4
+ permissions:
5
+ read: true
6
+ write: true
7
+ bash: true
8
+ glob: true
9
+ grep: true
10
+ question: true
11
11
  ---
12
12
  <objective>
13
13
  Create all phases necessary to close gaps identified by `/gsd-audit-milestone`.
@@ -18,7 +18,7 @@ One command creates all fix phases — no manual `/gsd-add-phase` per gap.
18
18
  </objective>
19
19
 
20
20
  <execution_context>
21
- @~/.config/opencode/get-shit-done/workflows/plan-milestone-gaps.md
21
+ @$HOME/.config/opencode/get-shit-done/workflows/plan-milestone-gaps.md
22
22
  </execution_context>
23
23
 
24
24
  <context>
@@ -29,6 +29,6 @@ Original intent and current planning state are loaded on demand inside the workf
29
29
  </context>
30
30
 
31
31
  <process>
32
- Execute the plan-milestone-gaps workflow from @~/.config/opencode/get-shit-done/workflows/plan-milestone-gaps.md end-to-end.
32
+ Execute the plan-milestone-gaps workflow from @$HOME/.config/opencode/get-shit-done/workflows/plan-milestone-gaps.md end-to-end.
33
33
  Preserve all workflow gates (audit loading, prioritization, phase grouping, user confirmation, roadmap updates).
34
34
  </process>
@@ -1,17 +1,17 @@
1
1
  ---
2
2
  name: gsd-plan-phase
3
3
  description: Create detailed phase plan (PLAN.md) with verification loop
4
- argument-hint: "[phase] [--auto] [--research] [--skip-research] [--gaps] [--skip-verify]"
4
+ argument-hint: "[phase] [--auto] [--research] [--skip-research] [--gaps] [--skip-verify] [--prd <file>]"
5
5
  agent: gsd-planner
6
- allowed-tools:
7
- - read
8
- - write
9
- - bash
10
- - glob
11
- - grep
12
- - task
13
- - webfetch
14
- - mcp__context7__*
6
+ permissions:
7
+ read: true
8
+ write: true
9
+ bash: true
10
+ glob: true
11
+ grep: true
12
+ task: true
13
+ webfetch: true
14
+ mcp__context7__*: true
15
15
  ---
16
16
  <objective>
17
17
  Create executable phase prompts (PLAN.md files) for a roadmap phase with integrated research and verification.
@@ -22,8 +22,8 @@ Create executable phase prompts (PLAN.md files) for a roadmap phase with integra
22
22
  </objective>
23
23
 
24
24
  <execution_context>
25
- @~/.config/opencode/get-shit-done/workflows/plan-phase.md
26
- @~/.config/opencode/get-shit-done/references/ui-brand.md
25
+ @$HOME/.config/opencode/get-shit-done/workflows/plan-phase.md
26
+ @$HOME/.config/opencode/get-shit-done/references/ui-brand.md
27
27
  </execution_context>
28
28
 
29
29
  <context>
@@ -34,11 +34,12 @@ Phase number: $ARGUMENTS (optional — auto-detects next unplanned phase if omit
34
34
  - `--skip-research` — Skip research, go straight to planning
35
35
  - `--gaps` — Gap closure mode (reads VERIFICATION.md, skips research)
36
36
  - `--skip-verify` — Skip verification loop
37
+ - `--prd <file>` — Use a PRD/acceptance criteria file instead of discuss-phase. Parses requirements into CONTEXT.md automatically. Skips discuss-phase entirely.
37
38
 
38
39
  Normalize phase input in step 2 before any directory lookups.
39
40
  </context>
40
41
 
41
42
  <process>
42
- Execute the plan-phase workflow from @~/.config/opencode/get-shit-done/workflows/plan-phase.md end-to-end.
43
+ Execute the plan-phase workflow from @$HOME/.config/opencode/get-shit-done/workflows/plan-phase.md end-to-end.
43
44
  Preserve all workflow gates (validation, research, planning, verification loop, routing).
44
45
  </process>
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: gsd-progress
3
3
  description: Check project progress, show context, and route to next action (execute or plan)
4
- allowed-tools:
5
- - read
6
- - bash
7
- - grep
8
- - glob
9
- - command
4
+ permissions:
5
+ read: true
6
+ bash: true
7
+ grep: true
8
+ glob: true
9
+ task: true
10
10
  ---
11
11
  <objective>
12
12
  Check project progress, summarize recent work and what's ahead, then intelligently route to the next action - either executing an existing plan or creating the next one.
@@ -15,10 +15,10 @@ Provides situational awareness before continuing work.
15
15
  </objective>
16
16
 
17
17
  <execution_context>
18
- @~/.config/opencode/get-shit-done/workflows/progress.md
18
+ @$HOME/.config/opencode/get-shit-done/workflows/progress.md
19
19
  </execution_context>
20
20
 
21
21
  <process>
22
- Execute the progress workflow from @~/.config/opencode/get-shit-done/workflows/progress.md end-to-end.
22
+ Execute the progress workflow from @$HOME/.config/opencode/get-shit-done/workflows/progress.md end-to-end.
23
23
  Preserve all routing logic (Routes A through F) and edge case handling.
24
24
  </process>
@@ -1,16 +1,16 @@
1
1
  ---
2
2
  name: gsd-quick
3
3
  description: Execute a quick task with GSD guarantees (atomic commits, state tracking) but skip optional agents
4
- argument-hint: "[--full]"
5
- allowed-tools:
6
- - read
7
- - write
8
- - edit
9
- - glob
10
- - grep
11
- - bash
12
- - task
13
- - question
4
+ argument-hint: "[--full] [--discuss]"
5
+ permissions:
6
+ read: true
7
+ write: true
8
+ edit: true
9
+ glob: true
10
+ grep: true
11
+ bash: true
12
+ task: true
13
+ question: true
14
14
  ---
15
15
  <objective>
16
16
  Execute small, ad-hoc tasks with GSD guarantees (atomic commits, STATE.md tracking).
@@ -20,13 +20,17 @@ Quick mode is the same system with a shorter path:
20
20
  - Quick tasks live in `.planning/quick/` separate from planned phases
21
21
  - Updates STATE.md "Quick Tasks Completed" table (NOT ROADMAP.md)
22
22
 
23
- **Default:** Skips research, plan-checker, verifier. Use when you know exactly what to do.
23
+ **Default:** Skips research, discussion, plan-checker, verifier. Use when you know exactly what to do.
24
+
25
+ **`--discuss` flag:** Lightweight discussion phase before planning. Surfaces assumptions, clarifies gray areas, captures decisions in CONTEXT.md. Use when the task has ambiguity worth resolving upfront.
24
26
 
25
27
  **`--full` flag:** Enables plan-checking (max 2 iterations) and post-execution verification. Use when you want quality guarantees without full milestone ceremony.
28
+
29
+ Flags are composable: `--discuss --full` gives discussion + plan-checking + verification.
26
30
  </objective>
27
31
 
28
32
  <execution_context>
29
- @~/.config/opencode/get-shit-done/workflows/quick.md
33
+ @$HOME/.config/opencode/get-shit-done/workflows/quick.md
30
34
  </execution_context>
31
35
 
32
36
  <context>
@@ -36,6 +40,6 @@ Context files are resolved inside the workflow (`init quick`) and delegated via
36
40
  </context>
37
41
 
38
42
  <process>
39
- Execute the quick workflow from @~/.config/opencode/get-shit-done/workflows/quick.md end-to-end.
43
+ Execute the quick workflow from @$HOME/.config/opencode/get-shit-done/workflows/quick.md end-to-end.
40
44
  Preserve all workflow gates (validation, task description, planning, execution, state updates, commits).
41
45
  </process>
@@ -1,15 +1,10 @@
1
1
  ---
2
2
  name: gsd-reapply-patches
3
3
  description: Reapply local modifications after a GSD update
4
- allowed-tools: read, write, edit, bash, glob, grep, question
4
+ permissions: read, write, edit, bash, glob, grep, question
5
5
  ---
6
-
7
6
  <objective>
8
- Reapply user's local modifications to GSD files after an update overwrites them.
9
-
10
- Purpose: After a GSD update wipes and reinstalls files, this command merges user's previously saved local modifications back into the new version using intelligent comparison to handle cases where the upstream file also changed.
11
-
12
- Output: A report showing which patches were merged, skipped (already upstream), or had conflicts that required user resolution.
7
+ Reapply previously saved local modifications back into the GSD system after an update. Merge user's customizations with the new upstream versions, handling conflicts appropriately and preserving user modifications while incorporating upstream changes.
13
8
  </objective>
14
9
 
15
10
  <purpose>
@@ -23,11 +18,24 @@ After a GSD update wipes and reinstalls files, this command merges user's previo
23
18
  Check for local patches directory:
24
19
 
25
20
  ```bash
26
- # Global install (path templated at install time)
27
- PATCHES_DIR=~/.config/opencode/gsd-local-patches
28
- # Local install fallback
21
+ # Global install detect runtime config directory
22
+ if [ -d "$HOME/.config/opencode/gsd-local-patches" ]; then
23
+ PATCHES_DIR="$HOME/.config/opencode/gsd-local-patches"
24
+ elif [ -d "$HOME/.opencode/gsd-local-patches" ]; then
25
+ PATCHES_DIR="$HOME/.opencode/gsd-local-patches"
26
+ elif [ -d "$HOME/.gemini/gsd-local-patches" ]; then
27
+ PATCHES_DIR="$HOME/.gemini/gsd-local-patches"
28
+ else
29
+ PATCHES_DIR="$HOME/.OpenCode/gsd-local-patches"
30
+ fi
31
+ # Local install fallback — check all runtime directories
29
32
  if [ ! -d "$PATCHES_DIR" ]; then
30
- PATCHES_DIR=./.OpenCode/gsd-local-patches
33
+ for dir in .config/opencode .opencode .gemini .OpenCode; do
34
+ if [ -d "./$dir/gsd-local-patches" ]; then
35
+ PATCHES_DIR="./$dir/gsd-local-patches"
36
+ break
37
+ fi
38
+ done
31
39
  fi
32
40
  ```
33
41
 
@@ -2,11 +2,11 @@
2
2
  name: gsd-remove-phase
3
3
  description: Remove a future phase from roadmap and renumber subsequent phases
4
4
  argument-hint: <phase-number>
5
- allowed-tools:
6
- - read
7
- - write
8
- - bash
9
- - glob
5
+ permissions:
6
+ read: true
7
+ write: true
8
+ bash: true
9
+ glob: true
10
10
  ---
11
11
  <objective>
12
12
  Remove an unstarted future phase from the roadmap and renumber all subsequent phases to maintain a clean, linear sequence.
@@ -16,7 +16,7 @@ Output: Phase deleted, all subsequent phases renumbered, git commit as historica
16
16
  </objective>
17
17
 
18
18
  <execution_context>
19
- @~/.config/opencode/get-shit-done/workflows/remove-phase.md
19
+ @$HOME/.config/opencode/get-shit-done/workflows/remove-phase.md
20
20
  </execution_context>
21
21
 
22
22
  <context>
@@ -26,6 +26,6 @@ Roadmap and state are resolved in-workflow via `init phase-op` and targeted read
26
26
  </context>
27
27
 
28
28
  <process>
29
- Execute the remove-phase workflow from @~/.config/opencode/get-shit-done/workflows/remove-phase.md end-to-end.
29
+ Execute the remove-phase workflow from @$HOME/.config/opencode/get-shit-done/workflows/remove-phase.md end-to-end.
30
30
  Preserve all validation gates (future phase check, work check), renumbering logic, and commit.
31
31
  </process>
@@ -2,10 +2,10 @@
2
2
  name: gsd-research-phase
3
3
  description: Research how to implement a phase (standalone - usually use /gsd-plan-phase instead)
4
4
  argument-hint: "[phase]"
5
- allowed-tools:
6
- - read
7
- - bash
8
- - task
5
+ permissions:
6
+ read: true
7
+ bash: true
8
+ task: true
9
9
  ---
10
10
 
11
11
  <objective>
@@ -34,20 +34,21 @@ Normalize phase input in step 1 before any directory lookups.
34
34
  ## 0. Initialize Context
35
35
 
36
36
  ```bash
37
- INIT=$(node ~/.config/opencode/get-shit-done/bin/gsd-tools.cjs init phase-op "$ARGUMENTS")
37
+ INIT=$(node "$HOME/.config/opencode/get-shit-done/bin/gsd-tools.cjs" init phase-op "$ARGUMENTS")
38
+ if [[ "$INIT" == @file:* ]]; then INIT=$(cat "${INIT#@file:}"); fi
38
39
  ```
39
40
 
40
41
  Extract from init JSON: `phase_dir`, `phase_number`, `phase_name`, `phase_found`, `commit_docs`, `has_research`, `state_path`, `requirements_path`, `context_path`, `research_path`.
41
42
 
42
43
  Resolve researcher model:
43
44
  ```bash
44
- RESEARCHER_MODEL=$(node ~/.config/opencode/get-shit-done/bin/gsd-tools.cjs resolve-model gsd-phase-researcher --raw)
45
+ RESEARCHER_MODEL=$(node "$HOME/.config/opencode/get-shit-done/bin/gsd-tools.cjs" resolve-model gsd-phase-researcher --raw)
45
46
  ```
46
47
 
47
48
  ## 1. Validate Phase
48
49
 
49
50
  ```bash
50
- PHASE_INFO=$(node ~/.config/opencode/get-shit-done/bin/gsd-tools.cjs roadmap get-phase "${phase_number}")
51
+ PHASE_INFO=$(node "$HOME/.config/opencode/get-shit-done/bin/gsd-tools.cjs" roadmap get-phase "${phase_number}")
51
52
  ```
52
53
 
53
54
  **If `found` is false:** Error and exit. **If `found` is true:** Extract `phase_number`, `phase_name`, `goal` from JSON.
@@ -135,8 +136,8 @@ write to: .planning/phases/${PHASE}-{slug}/${PHASE}-RESEARCH.md
135
136
 
136
137
  ```
137
138
  task(
138
- prompt="First, read ~/.config/opencode/agents/gsd-phase-researcher.md for your role and instructions.\n\n" + filled_prompt,
139
- subagent_type="general",
139
+ prompt=filled_prompt,
140
+ subagent_type="gsd-phase-researcher",
140
141
  model="{researcher_model}",
141
142
  description="Research Phase {phase}"
142
143
  )
@@ -171,8 +172,8 @@ Continue research for Phase {phase_number}: {phase_name}
171
172
 
172
173
  ```
173
174
  task(
174
- prompt="First, read ~/.config/opencode/agents/gsd-phase-researcher.md for your role and instructions.\n\n" + continuation_prompt,
175
- subagent_type="general",
175
+ prompt=continuation_prompt,
176
+ subagent_type="gsd-phase-researcher",
176
177
  model="{researcher_model}",
177
178
  description="Continue research Phase {phase}"
178
179
  )
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: gsd-resume-work
3
3
  description: Resume work from previous session with full context restoration
4
- allowed-tools:
5
- - read
6
- - bash
7
- - write
8
- - question
9
- - command
4
+ permissions:
5
+ read: true
6
+ bash: true
7
+ write: true
8
+ question: true
9
+ command: true
10
10
  ---
11
11
 
12
12
  <objective>
@@ -22,11 +22,11 @@ Routes to the resume-project workflow which handles:
22
22
  </objective>
23
23
 
24
24
  <execution_context>
25
- @~/.config/opencode/get-shit-done/workflows/resume-project.md
25
+ @$HOME/.config/opencode/get-shit-done/workflows/resume-project.md
26
26
  </execution_context>
27
27
 
28
28
  <process>
29
- **Follow the resume-project workflow** from `@~/.config/opencode/get-shit-done/workflows/resume-project.md`.
29
+ **Follow the resume-project workflow** from `@$HOME/.config/opencode/get-shit-done/workflows/resume-project.md`.
30
30
 
31
31
  The workflow handles all resumption logic including:
32
32
 
@@ -2,10 +2,10 @@
2
2
  name: gsd-set-profile
3
3
  description: Switch model profile for GSD agents (simple/smart/genius)
4
4
  argument-hint: <profile>
5
- allowed-tools:
6
- - read
7
- - write
8
- - bash
5
+ permissions:
6
+ read: true
7
+ write: true
8
+ bash: true
9
9
  ---
10
10
 
11
11
  <objective>
@@ -19,11 +19,11 @@ Routes to the set-profile workflow which handles:
19
19
  </objective>
20
20
 
21
21
  <execution_context>
22
- @~/.config/opencode/get-shit-done/workflows/oc-set-profile.md
22
+ @$HOME/.config/opencode/get-shit-done/workflows/oc-set-profile.md
23
23
  </execution_context>
24
24
 
25
25
  <process>
26
- **Follow the set-profile workflow** from `@~/.config/opencode/get-shit-done/workflows/oc-set-profile.md`.
26
+ **Follow the set-profile workflow** from `@$HOME/.config/opencode/get-shit-done/workflows/oc-set-profile.md`.
27
27
 
28
28
  The workflow handles all logic including:
29
29
  1. Profile argument validation