gsdd-cli 0.18.5 → 0.19.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.
- package/LICENSE +21 -21
- package/README.md +609 -608
- package/agents/DISTILLATION.md +421 -421
- package/agents/README.md +62 -62
- package/agents/approach-explorer.md +361 -361
- package/agents/debugger.md +82 -82
- package/agents/executor.md +394 -394
- package/agents/integration-checker.md +318 -318
- package/agents/mapper.md +103 -103
- package/agents/planner.md +313 -313
- package/agents/researcher.md +84 -84
- package/agents/roadmapper.md +296 -296
- package/agents/synthesizer.md +236 -236
- package/agents/verifier.md +337 -337
- package/bin/adapters/agents.mjs +34 -34
- package/bin/adapters/claude.mjs +191 -191
- package/bin/adapters/codex.mjs +85 -85
- package/bin/adapters/index.mjs +20 -20
- package/bin/adapters/opencode.mjs +278 -278
- package/bin/gsdd.mjs +123 -116
- package/bin/lib/cli-utils.mjs +28 -28
- package/bin/lib/evidence-contract.mjs +112 -112
- package/bin/lib/file-ops.mjs +186 -144
- package/bin/lib/health-truth.mjs +181 -178
- package/bin/lib/health.mjs +246 -226
- package/bin/lib/init-flow.mjs +247 -231
- package/bin/lib/init-prompts.mjs +248 -247
- package/bin/lib/init-runtime.mjs +191 -190
- package/bin/lib/init.mjs +17 -17
- package/bin/lib/lifecycle-preflight.mjs +347 -325
- package/bin/lib/lifecycle-state.mjs +351 -267
- package/bin/lib/manifest.mjs +116 -114
- package/bin/lib/models.mjs +411 -411
- package/bin/lib/phase.mjs +360 -358
- package/bin/lib/plan-constants.mjs +30 -30
- package/bin/lib/provenance.mjs +109 -106
- package/bin/lib/rendering.mjs +115 -83
- package/bin/lib/runtime-freshness.mjs +214 -214
- package/bin/lib/templates.mjs +225 -224
- package/bin/lib/workspace-root.mjs +2 -1
- package/distilled/DESIGN.md +2333 -2323
- package/distilled/EVIDENCE-INDEX.md +394 -392
- package/distilled/README.md +196 -193
- package/distilled/SKILL.md +86 -85
- package/distilled/templates/agents.block.md +21 -21
- package/distilled/templates/agents.md +6 -6
- package/distilled/templates/approach.md +232 -232
- package/distilled/templates/auth-matrix.md +78 -78
- package/distilled/templates/brownfield-change/CHANGE.md +99 -0
- package/distilled/templates/brownfield-change/HANDOFF.md +38 -0
- package/distilled/templates/brownfield-change/VERIFICATION.md +56 -0
- package/distilled/templates/codebase/architecture.md +110 -110
- package/distilled/templates/codebase/concerns.md +95 -95
- package/distilled/templates/codebase/conventions.md +193 -193
- package/distilled/templates/codebase/stack.md +96 -96
- package/distilled/templates/delegates/approach-explorer.md +25 -25
- package/distilled/templates/delegates/mapper-arch.md +26 -26
- package/distilled/templates/delegates/mapper-concerns.md +27 -27
- package/distilled/templates/delegates/mapper-quality.md +28 -28
- package/distilled/templates/delegates/mapper-tech.md +25 -25
- package/distilled/templates/delegates/plan-checker.md +68 -68
- package/distilled/templates/delegates/researcher-architecture.md +30 -30
- package/distilled/templates/delegates/researcher-features.md +30 -30
- package/distilled/templates/delegates/researcher-pitfalls.md +30 -30
- package/distilled/templates/delegates/researcher-stack.md +30 -30
- package/distilled/templates/delegates/researcher-synthesizer.md +31 -31
- package/distilled/templates/research/architecture.md +57 -57
- package/distilled/templates/research/features.md +23 -23
- package/distilled/templates/research/pitfalls.md +46 -46
- package/distilled/templates/research/stack.md +45 -45
- package/distilled/templates/research/summary.md +67 -67
- package/distilled/templates/roadmap.md +74 -62
- package/distilled/templates/spec.md +110 -110
- package/distilled/workflows/audit-milestone.md +275 -271
- package/distilled/workflows/complete-milestone.md +336 -332
- package/distilled/workflows/execute.md +454 -449
- package/distilled/workflows/map-codebase.md +253 -253
- package/distilled/workflows/new-milestone.md +242 -238
- package/distilled/workflows/new-project.md +398 -398
- package/distilled/workflows/pause.md +160 -156
- package/distilled/workflows/plan-milestone-gaps.md +183 -183
- package/distilled/workflows/plan.md +451 -447
- package/distilled/workflows/progress.md +227 -223
- package/distilled/workflows/quick.md +351 -347
- package/distilled/workflows/resume.md +220 -212
- package/distilled/workflows/verify-work.md +260 -260
- package/distilled/workflows/verify.md +431 -429
- package/docs/BROWNFIELD-PROOF.md +95 -95
- package/docs/RUNTIME-SUPPORT.md +80 -69
- package/docs/USER-GUIDE.md +394 -386
- package/docs/VERIFICATION-DISCIPLINE.md +59 -59
- package/docs/claude/context-monitor.md +98 -98
- package/docs/proof/consumer-node-cli/README.md +37 -37
- package/docs/proof/consumer-node-cli/ROADMAP.md +14 -14
- package/docs/proof/consumer-node-cli/SPEC.md +17 -17
- package/docs/proof/consumer-node-cli/brief.md +9 -9
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md +34 -34
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-01-SUMMARY.md +10 -10
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md +30 -30
- package/package.json +62 -61
package/README.md
CHANGED
|
@@ -1,628 +1,629 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
|
|
3
|
-
# Workspine
|
|
4
|
-
|
|
5
|
-
**AI development that stays consistent across agents and sessions.** Plans are checked, work is verified, and progress is tracked in the repo.
|
|
6
|
-
|
|
7
|
-
[](https://www.npmjs.com/package/gsdd-cli)
|
|
8
|
-
[](LICENSE)
|
|
9
|
-
|
|
10
|
-
```bash
|
|
11
|
-
npx gsdd-cli init
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
**Directly validated today:** Claude Code, Codex CLI, and OpenCode.
|
|
15
|
-
**Qualified support:** Cursor, Copilot, and Gemini CLI
|
|
16
|
-
|
|
17
|
-
</div>
|
|
18
|
-
|
|
19
|
-
One repo-native spine for planning, checking, execution, verification, and handoff — so AI-assisted work survives cold starts, runtime switches, and session loss.
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## What This Is
|
|
24
|
-
|
|
25
|
-
Workspine is a repo-native delivery spine for long-horizon AI-assisted software work. It keeps planning, execution, verification, handoff, and progress state in the repo so work survives cold starts, runtime switches, and session loss.
|
|
26
|
-
|
|
27
|
-
Workspine is the product name. The package, CLI commands, workflow prefixes, and workspace directory remain `gsdd-cli`, `gsdd`, `gsdd-*`, and `.planning/` — these are retained technical contracts, not rename residue.
|
|
28
|
-
|
|
29
|
-
### Lineage
|
|
30
|
-
|
|
31
|
-
Workspine began as a fork of [Get Shit Done](https://github.com/gsd-build/get-shit-done), whose long-horizon delivery spine proved the problem was real. Since the fork, upstream GSD has continued evolving into a broad multi-runtime framework — as of April 2026, GSD v1 documents 81 commands and 78 workflows across 33 agents. Workspine took a different path: 14 public workflow surfaces, generated runtime adapters from a portable core, evidence-gated closure, and provenance-aware continuity. The trade-off is deliberate: a narrower surface with stricter closure and fewer moving parts for the human operator.
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## What's Different
|
|
36
|
-
|
|
37
|
-
### Context survives cold starts, tool switches, and session loss
|
|
38
|
-
|
|
39
|
-
Planning, phase artifacts, verification reports, and handoff checkpoints live in `.planning/`. When you switch runtimes or come back after a week, the repo still knows what was planned, what was executed, what was verified, and where you stopped.
|
|
40
|
-
|
|
41
|
-
<details>
|
|
42
|
-
<summary>How it works</summary>
|
|
43
|
-
|
|
44
|
-
Three-layer continuity model: durable project truth (SPEC, ROADMAP, design decisions), live workflow state (phase plans, summaries, checkpoints), and compressed judgment (active constraints, anti-regression rules). Pause/resume workflows write and read these layers explicitly. No session memory required.
|
|
45
|
-
|
|
46
|
-
</details>
|
|
47
|
-
|
|
48
|
-
### Done means verified, not merely generated
|
|
49
|
-
|
|
50
|
-
Verification is a separate workflow with a separate context window, not a checkbox at the end of execution. It checks three levels — do the files exist, is the code substantive (not stubs), and is it actually wired into the system — plus an anti-pattern scan.
|
|
51
|
-
|
|
52
|
-
<details>
|
|
53
|
-
<summary>How it works</summary>
|
|
54
|
-
|
|
55
|
-
`gsdd-verify` runs after execution and produces a typed verification report. `gsdd-audit-milestone` checks cross-phase integration, requirement coverage, and end-to-end flows. Evidence-gated closure prevents marking work done without the right evidence kinds (code, test, runtime, delivery, human).
|
|
56
|
-
|
|
57
|
-
</details>
|
|
58
|
-
|
|
59
|
-
### Rules that must be consistent are enforced by code, not by memory
|
|
60
|
-
|
|
61
|
-
1,381 tests across 13 test files guard properties that PRs repeatedly broke: delegate-role reference integrity, workflow vendor-API cleanliness, artifact schema consistency, plan-checker dimension coverage, and cross-document drift.
|
|
62
|
-
|
|
63
|
-
<details>
|
|
64
|
-
<summary>How it works</summary>
|
|
65
|
-
|
|
66
|
-
Invariant suites (I-series), guard suites (G-series), and scenario suites (S-series) run on every change. Each assertion includes a `FIX:` instruction so failures are actionable.
|
|
67
|
-
|
|
68
|
-
</details>
|
|
69
|
-
|
|
70
|
-
### Smaller surface, stricter closure
|
|
71
|
-
|
|
72
|
-
14 workflows. 10 roles. One CLI. Lifecycle progression goes through deterministic preflight gates — not conversational inference. Plans are checked by a separate agent in a separate context before execution begins. Closure requires evidence, not just file existence.
|
|
73
|
-
|
|
74
|
-
<details>
|
|
75
|
-
<summary>How it works</summary>
|
|
76
|
-
|
|
77
|
-
`gsdd-plan` is terminal: it writes planning artifacts and stops. Execution requires an explicit `gsdd-execute` transition. `lifecycle-preflight` evaluates eligibility from repo artifacts before allowing state changes. `phase-status` is the only explicit ROADMAP mutator. `progress` is read-only.
|
|
78
|
-
|
|
79
|
-
</details>
|
|
80
|
-
|
|
81
|
-
**Target user:** Developer or small team that wants one durable delivery spine across coding runtimes, with explicit checks and repo-native proof instead of a dashboard or orchestration control plane.
|
|
82
|
-
|
|
83
|
-
---
|
|
84
|
-
|
|
85
|
-
## Getting Started
|
|
86
|
-
|
|
87
|
-
```bash
|
|
88
|
-
npx gsdd-cli init
|
|
89
|
-
```
|
|
90
|
-
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
# Workspine
|
|
4
|
+
|
|
5
|
+
**AI development that stays consistent across agents and sessions.** Plans are checked, work is verified, and progress is tracked in the repo.
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/gsdd-cli)
|
|
8
|
+
[](LICENSE)
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
npx -y gsdd-cli init
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
**Directly validated today:** Claude Code, Codex CLI, and OpenCode.
|
|
15
|
+
**Qualified support:** Cursor, Copilot, and Gemini CLI can use the shared `.agents/skills/` surface when their skill or slash discovery sees it; this release does not claim the same runtime proof or ergonomics.
|
|
16
|
+
|
|
17
|
+
</div>
|
|
18
|
+
|
|
19
|
+
One repo-native spine for planning, checking, execution, verification, and handoff — so AI-assisted work survives cold starts, runtime switches, and session loss.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## What This Is
|
|
24
|
+
|
|
25
|
+
Workspine is a repo-native delivery spine for long-horizon AI-assisted software work. It keeps planning, execution, verification, handoff, and progress state in the repo so work survives cold starts, runtime switches, and session loss.
|
|
26
|
+
|
|
27
|
+
Workspine is the product name. The package, CLI commands, workflow prefixes, and workspace directory remain `gsdd-cli`, `gsdd`, `gsdd-*`, and `.planning/` — these are retained technical contracts, not rename residue.
|
|
28
|
+
|
|
29
|
+
### Lineage
|
|
30
|
+
|
|
31
|
+
Workspine began as a fork of [Get Shit Done](https://github.com/gsd-build/get-shit-done), whose long-horizon delivery spine proved the problem was real. Since the fork, upstream GSD has continued evolving into a broad multi-runtime framework — as of April 2026, GSD v1 documents 81 commands and 78 workflows across 33 agents. Workspine took a different path: 14 public workflow surfaces, generated runtime adapters from a portable core, evidence-gated closure, and provenance-aware continuity. The trade-off is deliberate: a narrower surface with stricter closure and fewer moving parts for the human operator.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## What's Different
|
|
36
|
+
|
|
37
|
+
### Context survives cold starts, tool switches, and session loss
|
|
38
|
+
|
|
39
|
+
Planning, phase artifacts, verification reports, and handoff checkpoints live in `.planning/`. When you switch runtimes or come back after a week, the repo still knows what was planned, what was executed, what was verified, and where you stopped.
|
|
40
|
+
|
|
41
|
+
<details>
|
|
42
|
+
<summary>How it works</summary>
|
|
43
|
+
|
|
44
|
+
Three-layer continuity model: durable project truth (SPEC, ROADMAP, design decisions), live workflow state (phase plans, summaries, checkpoints), and compressed judgment (active constraints, anti-regression rules). Pause/resume workflows write and read these layers explicitly. No session memory required.
|
|
45
|
+
|
|
46
|
+
</details>
|
|
47
|
+
|
|
48
|
+
### Done means verified, not merely generated
|
|
49
|
+
|
|
50
|
+
Verification is a separate workflow with a separate context window, not a checkbox at the end of execution. It checks three levels — do the files exist, is the code substantive (not stubs), and is it actually wired into the system — plus an anti-pattern scan.
|
|
51
|
+
|
|
52
|
+
<details>
|
|
53
|
+
<summary>How it works</summary>
|
|
54
|
+
|
|
55
|
+
`gsdd-verify` runs after execution and produces a typed verification report. `gsdd-audit-milestone` checks cross-phase integration, requirement coverage, and end-to-end flows. Evidence-gated closure prevents marking work done without the right evidence kinds (code, test, runtime, delivery, human).
|
|
56
|
+
|
|
57
|
+
</details>
|
|
58
|
+
|
|
59
|
+
### Rules that must be consistent are enforced by code, not by memory
|
|
60
|
+
|
|
61
|
+
1,381 tests across 13 test files guard properties that PRs repeatedly broke: delegate-role reference integrity, workflow vendor-API cleanliness, artifact schema consistency, plan-checker dimension coverage, and cross-document drift.
|
|
62
|
+
|
|
63
|
+
<details>
|
|
64
|
+
<summary>How it works</summary>
|
|
65
|
+
|
|
66
|
+
Invariant suites (I-series), guard suites (G-series), and scenario suites (S-series) run on every change. Each assertion includes a `FIX:` instruction so failures are actionable. `distilled/DESIGN.md` records the rationale with evidence trails.
|
|
67
|
+
|
|
68
|
+
</details>
|
|
69
|
+
|
|
70
|
+
### Smaller surface, stricter closure
|
|
71
|
+
|
|
72
|
+
14 workflows. 10 roles. One CLI. Lifecycle progression goes through deterministic preflight gates — not conversational inference. Plans are checked by a separate agent in a separate context before execution begins. Closure requires evidence, not just file existence.
|
|
73
|
+
|
|
74
|
+
<details>
|
|
75
|
+
<summary>How it works</summary>
|
|
76
|
+
|
|
77
|
+
`gsdd-plan` is terminal: it writes planning artifacts and stops. Execution requires an explicit `gsdd-execute` transition. `lifecycle-preflight` evaluates eligibility from repo artifacts before allowing state changes. `phase-status` is the only explicit ROADMAP mutator. `progress` is read-only.
|
|
78
|
+
|
|
79
|
+
</details>
|
|
80
|
+
|
|
81
|
+
**Target user:** Developer or small team that wants one durable delivery spine across coding runtimes, with explicit checks and repo-native proof instead of a dashboard or orchestration control plane.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Getting Started
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
npx -y gsdd-cli init
|
|
89
|
+
```
|
|
90
|
+
|
|
91
91
|
This creates:
|
|
92
|
-
|
|
93
|
-
1. `.planning/` — durable workspace with templates, role contracts,
|
|
94
|
-
2. `.agents/skills/gsdd-*` —
|
|
95
|
-
3.
|
|
92
|
+
|
|
93
|
+
1. `.planning/` — durable workspace with templates, role contracts, and config
|
|
94
|
+
2. `.agents/skills/gsdd-*` — compact open-standard workflow entrypoints for agents
|
|
95
|
+
3. `.planning/bin/gsdd.mjs` — repo-local helper runtime for deterministic workflow commands inside generated skills (run helper commands from the repo root)
|
|
96
|
+
4. Optional tool-specific adapters you choose in the install wizard (Claude skills/commands/agents, OpenCode commands/agents, Codex CLI agents, optional governance)
|
|
96
97
|
|
|
97
98
|
Then pick the first workflow lane that matches your situation:
|
|
98
99
|
|
|
99
100
|
- `gsdd-new-project` for greenfield work, fuzzy brownfield work, or milestone-shaped work
|
|
100
101
|
- `gsdd-quick` for a concrete bounded brownfield change
|
|
101
102
|
- `gsdd-map-codebase` first when the repo is unfamiliar, risky, or needs a deeper baseline before choosing a lane
|
|
102
|
-
|
|
103
|
-
In a terminal, `gsdd init`
|
|
104
|
-
|
|
105
|
-
- Step 1: select the runtimes/vendors you want to support
|
|
106
|
-
- Step 2: decide separately whether repo-wide `AGENTS.md` governance is worth installing
|
|
107
|
-
- Step 3: configure planning defaults in the same guided flow
|
|
108
|
-
|
|
109
|
-
Portable `.agents/skills/gsdd-*` skills
|
|
110
|
-
When generated surfaces exist locally, `gsdd health` checks them against current render output instead of asking you to trust manual review.
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
- **
|
|
116
|
-
- **
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
- [
|
|
122
|
-
- [
|
|
123
|
-
- [
|
|
124
|
-
|
|
125
|
-
|
|
103
|
+
|
|
104
|
+
In a terminal, `npx -y gsdd-cli init` opens a guided install wizard. If you installed the package globally, `gsdd init` is the equivalent shorthand:
|
|
105
|
+
|
|
106
|
+
- Step 1: select the runtimes/vendors you want to support
|
|
107
|
+
- Step 2: decide separately whether repo-wide `AGENTS.md` governance is worth installing
|
|
108
|
+
- Step 3: configure planning defaults in the same guided flow
|
|
109
|
+
|
|
110
|
+
Portable `.agents/skills/gsdd-*` skills and the repo-local `.planning/bin/gsdd.mjs` helper runtime are always generated. The wizard controls extra native adapters and optional governance, not the portable baseline. Workflow helper commands assume the repo root as the current working directory.
|
|
111
|
+
When those generated surfaces exist locally, `npx -y gsdd-cli health` checks them against current render output instead of asking you to trust manual review. If installed globally, `gsdd health` is equivalent.
|
|
112
|
+
|
|
113
|
+
### Launch Proof Status
|
|
114
|
+
|
|
115
|
+
- **Directly validated:** Claude Code, Codex CLI, and OpenCode have recorded `plan -> execute -> verify` evidence for the core lifecycle.
|
|
116
|
+
- **Qualified support:** Cursor, Copilot, and Gemini CLI can use the shared `.agents/skills/` surface when their skill or slash discovery sees it; this release does not claim the same runtime proof or ergonomics.
|
|
117
|
+
- **Runtime-surface freshness:** Installed generated skills and native adapters are renderer-checked locally; repair stays deterministic through `npx -y gsdd-cli update` or, when globally installed, `gsdd update`.
|
|
118
|
+
|
|
119
|
+
Start with the public proof pack:
|
|
120
|
+
|
|
121
|
+
- [Brownfield proof](docs/BROWNFIELD-PROOF.md)
|
|
122
|
+
- [Exported consumer proof pack](docs/proof/consumer-node-cli/README.md)
|
|
123
|
+
- [Runtime support matrix](docs/RUNTIME-SUPPORT.md)
|
|
124
|
+
- [Verification discipline](docs/VERIFICATION-DISCIPLINE.md)
|
|
125
|
+
|
|
126
126
|
### Quickstart (after init)
|
|
127
127
|
|
|
128
128
|
Runtime floor: Node 20+.
|
|
129
129
|
|
|
130
130
|
Your tool determines how you invoke workflows after `npx gsdd-cli init`:
|
|
131
|
-
|
|
132
|
-
- **Claude Code / OpenCode
|
|
133
|
-
- **Codex CLI:** Use skill references — `$gsdd-new-project`, `$gsdd-plan`, etc. `$gsdd-plan` writes the plan and stops; start a separate `$gsdd-execute` run when you want implementation to begin.
|
|
134
|
-
- **
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
npx gsdd-cli init
|
|
161
|
-
npx gsdd-cli init --tools
|
|
162
|
-
npx gsdd-cli init --tools
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
|
170
|
-
|
|
171
|
-
| **
|
|
172
|
-
| **
|
|
173
|
-
|
|
131
|
+
|
|
132
|
+
- **Claude Code / OpenCode:** Use native slash commands directly — `/gsdd-new-project`, `/gsdd-plan`, etc.
|
|
133
|
+
- **Codex CLI:** Use skill references — `$gsdd-new-project`, `$gsdd-plan`, etc. `$gsdd-plan` writes the plan and stops; start a separate `$gsdd-execute` run when you want implementation to begin.
|
|
134
|
+
- **Codex VS Code extension / Codex app:** Do not assume Codex CLI skill discovery. If slash/skill discovery is unavailable, open `.agents/skills/gsdd-<workflow>/SKILL.md` and paste or follow it in the agent chat.
|
|
135
|
+
- **Cursor / Copilot / Gemini:** Use slash commands if your tool discovers `.agents/skills/`; if it does not, open `.agents/skills/gsdd-<workflow>/SKILL.md` and paste or follow the instructions.
|
|
136
|
+
- **Other AI tools:** Open `.agents/skills/gsdd-<workflow>/SKILL.md` and follow the instructions.
|
|
137
|
+
|
|
138
|
+
| Runtime | Preferred invocation | Fallback |
|
|
139
|
+
|----------|----------------------|----------|
|
|
140
|
+
| Claude Code / OpenCode | `/gsdd-plan` via native slash command | Open `.agents/skills/gsdd-plan/SKILL.md` |
|
|
141
|
+
| Codex CLI | `$gsdd-plan` skill reference | Open `.agents/skills/gsdd-plan/SKILL.md` |
|
|
142
|
+
| Codex VS Code / app | Native discovery if available | Open or paste `.agents/skills/gsdd-plan/SKILL.md` |
|
|
143
|
+
| Cursor / Copilot / Gemini | `/gsdd-plan` when skill/slash discovery is available | Open or paste `.agents/skills/gsdd-plan/SKILL.md` |
|
|
144
|
+
|
|
145
|
+
If you generate the root `AGENTS.md` block, it adds the framework's behavioral governance. For Cursor, Copilot, and Gemini, that governance is optional discipline on top of skills or slash discovery — not the mechanism that makes workflows discoverable. The clean prompt/token-saving story is the compact `.agents/skills/` entrypoints plus repo artifacts; native adapters and governance surfaces are optional conveniences, not required runtime bulk.
|
|
146
|
+
|
|
147
|
+
### Choose Your Starting Workflow
|
|
148
|
+
|
|
149
|
+
| Situation | Start here | Why |
|
|
150
|
+
|----------|------------|-----|
|
|
151
|
+
| Greenfield project, or brownfield work that is fuzzy / broad / milestone-shaped | `gsdd-new-project` | This is the full initializer. On brownfield repos it will run codebase mapping internally when it needs it. |
|
|
152
|
+
| Brownfield repo and the bounded change is already concrete | `gsdd-quick` | This is the bounded-change lane. It can use existing codebase maps when present and otherwise builds a just-enough inline brownfield baseline. |
|
|
153
|
+
| Brownfield repo is unfamiliar, risky, or you want a deeper baseline before choosing the lane | `gsdd-map-codebase` | This is the deeper orientation pass. Use it when the inline quick baseline would be too weak, then continue with `gsdd-quick` or `gsdd-new-project`. |
|
|
154
|
+
|
|
155
|
+
### Platform Adapters
|
|
156
|
+
|
|
157
|
+
Workspine generates adapters for whichever tools you use:
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
npx -y gsdd-cli init # Guided install wizard (detected runtimes preselected)
|
|
161
|
+
npx -y gsdd-cli init --tools claude # Claude Code: .claude/skills + commands + agents
|
|
162
|
+
npx -y gsdd-cli init --tools opencode # OpenCode: .opencode/commands + agents
|
|
163
|
+
npx -y gsdd-cli init --tools codex # Codex CLI: portable skills + .codex/agents checker
|
|
164
|
+
npx -y gsdd-cli init --tools agents # Root AGENTS.md governance fallback
|
|
165
|
+
npx -y gsdd-cli init --tools cursor # Backward-compatible AGENTS.md governance alias
|
|
166
|
+
npx -y gsdd-cli init --tools all # All of the above
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
| Platform | Public claim | What's generated |
|
|
170
|
+
|----------|--------------|-----------------|
|
|
171
|
+
| **All** (default) | Shared portable surface | `.agents/skills/gsdd-*/SKILL.md` plus `.planning/bin/gsdd.mjs` — portable workflow entrypoints and repo-local helper runtime (always generated) |
|
|
172
|
+
| **Claude Code** | Directly validated | `.claude/skills/`, `.claude/commands/`, `.claude/agents/` — native workflow surfaces, freshness-checked when generated locally |
|
|
173
|
+
| **OpenCode** | Directly validated | `.opencode/commands/`, `.opencode/agents/` — native workflow surfaces, freshness-checked when generated locally |
|
|
174
|
+
| **Codex CLI** | Directly validated | Portable `gsdd-plan` skill entry plus `.planning/bin/gsdd.mjs` and `.codex/agents/gsdd-plan-checker.toml`; planning stays locked until explicit `$gsdd-execute`, and installed surfaces are freshness-checked locally |
|
|
175
|
+
| **Codex VS Code / app** | Fallback only | Open or paste `.agents/skills/gsdd-*/SKILL.md` unless that product surface exposes compatible skill discovery; not claimed as Codex CLI validation |
|
|
176
|
+
| **Cursor / Copilot / Gemini** | Qualified support | Uses `.agents/skills/` when skill/slash discovery is available; optional root `AGENTS.md` block adds behavioral governance, and the generated skill surface is freshness-checked locally |
|
|
177
|
+
| **Other AI tools** | Fallback only | Open `.agents/skills/gsdd-*/SKILL.md` directly |
|
|
178
|
+
|
|
174
179
|
### Updating And Repair
|
|
175
|
-
|
|
176
|
-
```bash
|
|
177
|
-
npx gsdd-cli update # Regenerate adapters from latest sources
|
|
178
|
-
npx gsdd-cli update --tools claude # Update specific platform only
|
|
179
|
-
npx gsdd-cli update --templates # Refresh .planning/templates/ and role contracts from framework source
|
|
180
|
+
|
|
181
|
+
```bash
|
|
182
|
+
npx -y gsdd-cli update # Regenerate adapters from latest sources
|
|
183
|
+
npx -y gsdd-cli update --tools claude # Update specific platform only
|
|
184
|
+
npx -y gsdd-cli update --templates # Refresh .planning/templates/ and role contracts from framework source
|
|
180
185
|
```
|
|
181
186
|
|
|
182
187
|
Use `gsdd health` first when you want a status check. Use `npx gsdd-cli update` when the generated runtime-facing surfaces are missing, drifted, or you want the latest generated output. If a runtime is only in the qualified-support tier, `health` and `update` still cover generated-surface drift; they do not imply parity-level runtime proof.
|
|
183
|
-
|
|
184
|
-
### Non-Interactive Mode (CI / Automation)
|
|
185
|
-
|
|
186
|
-
For non-interactive environments:
|
|
187
|
-
|
|
188
|
-
```bash
|
|
189
|
-
npx gsdd-cli init --auto --tools claude
|
|
190
|
-
npx gsdd-cli init --auto --tools claude --brief path/to/PRD.md
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
`--auto` skips the interactive install wizard and uses default configuration. It does **not** run downstream workflows (`new-project`, `plan`, `execute`, `verify`) — those are always explicit. `--brief` copies a project document to `.planning/PROJECT_BRIEF.md` for `new-project` to consume.
|
|
194
|
-
|
|
195
|
-
If you already know exactly what to generate, `--tools ...` remains the manual path. The wizard is the primary onboarding UX; flags remain the advanced/headless contract.
|
|
196
|
-
|
|
197
|
-
### Team Use
|
|
198
|
-
|
|
199
|
-
- **Shared state:** Set `commitDocs: true` (default) — `.planning/` is tracked in git. Everyone sees the same spec, roadmap, and phase plans.
|
|
200
|
-
- **Onboarding:** After cloning, run `npx gsdd-cli init` to generate tool-specific adapters. `.planning/` is already tracked — no re-initialization needed.
|
|
201
|
-
- **Governance is explicit:** The wizard asks separately whether to install repo-wide `AGENTS.md` rules, and explains why you may care before writing to the repo root.
|
|
202
|
-
- **Session handoff:** Use `gsdd-pause` / `gsdd-resume` to hand off work. The checkpoint (`.planning/.continue-here.md`) captures context for the next person.
|
|
203
|
-
- **Adapter isolation:** Each developer runs `gsdd init --tools <their-tool>`. Adapter files don't conflict across tools.
|
|
204
|
-
|
|
205
|
-
For detailed workflow diagrams, recovery procedures, and extended examples, see the [User Guide](docs/USER-GUIDE.md).
|
|
206
|
-
|
|
207
|
-
---
|
|
208
|
-
|
|
209
|
-
## How It Works
|
|
210
|
-
|
|
211
|
-
### The Core Loop
|
|
212
|
-
|
|
213
|
-
```
|
|
214
|
-
init → [plan → execute → verify] × N phases → audit-milestone → done
|
|
215
|
-
↕ pause/resume (any point)
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
### 1. Initialize Project
|
|
219
|
-
|
|
220
|
-
Run the `gsdd-new-project` workflow. The system:
|
|
221
|
-
|
|
222
|
-
1. **Questions** — asks until it understands your idea (goals, constraints, tech, edge cases)
|
|
223
|
-
2. **Codebase map** — if brownfield and a deeper baseline is needed, maps the codebase across stack, architecture, conventions, and concerns; users do not need to pre-run `map-codebase` before `new-project`
|
|
224
|
-
3. **Research** — spawns parallel researchers to investigate the domain (configurable depth: fast/balanced/deep)
|
|
225
|
-
4. **Spec + Roadmap** — produces `SPEC.md` (living specification) and `ROADMAP.md` (phased delivery plan)
|
|
226
|
-
|
|
227
|
-
**Creates:** `.planning/SPEC.md`, `.planning/ROADMAP.md`
|
|
228
|
-
|
|
229
|
-
---
|
|
230
|
-
|
|
231
|
-
### 2. Plan Phase
|
|
232
|
-
|
|
233
|
-
Run `gsdd-plan` for the current phase. The system:
|
|
234
|
-
|
|
235
|
-
1. **Researches** — investigates how to implement this phase (if `workflow.research` is enabled)
|
|
236
|
-
2. **Plans** — creates atomic task plans with XML structure
|
|
237
|
-
3. **Checks** — a separate agent in a fresh context window reviews the plan against 7 dimensions (requirement coverage, task completeness, dependency correctness, key-link completeness, scope sanity, must-have quality, context compliance). If the plan fails, it revises and re-checks — up to 3 cycles before escalating to the human. Output is typed JSON so orchestration is machine-parseable, not prompt-dependent.
|
|
238
|
-
|
|
239
|
-
Each plan is small enough to execute in a fresh context window. The checker runs in a separate context from the planner — this is the [ICLR-validated](https://arxiv.org/abs/2310.01798) pattern for catching blind spots the planner inherits from its own reasoning.
|
|
240
|
-
|
|
241
|
-
`gsdd-plan` is terminal for the current run: it writes planning artifacts only. Execution begins only after an explicit `gsdd-execute` / `/gsdd-execute` / `$gsdd-execute` transition, depending on the runtime.
|
|
242
|
-
|
|
243
|
-
**Creates:** Phase plans in `.planning/phases/`
|
|
244
|
-
|
|
245
|
-
---
|
|
246
|
-
|
|
247
|
-
### 3. Execute Phase
|
|
248
|
-
|
|
249
|
-
Run `gsdd-execute`. The system:
|
|
250
|
-
|
|
251
|
-
1. **Runs plans in waves** — parallel where possible, sequential when dependent
|
|
252
|
-
2. **Fresh context per plan** — 200k tokens purely for implementation
|
|
253
|
-
3. **Clean commits** — follows repo conventions, no framework-imposed commit format
|
|
254
|
-
4. **Creates summaries** — records what happened for verification
|
|
255
|
-
|
|
256
|
-
**Creates:** Phase summaries in `.planning/phases/`
|
|
257
|
-
|
|
258
|
-
---
|
|
259
|
-
|
|
260
|
-
### 4. Verify Phase
|
|
261
|
-
|
|
262
|
-
Run `gsdd-verify`. The system checks three levels:
|
|
263
|
-
|
|
264
|
-
1. **Exists** — do the expected files exist?
|
|
265
|
-
2. **Substantive** — is the code real, not stubs?
|
|
266
|
-
3. **Wired** — is it connected and functional?
|
|
267
|
-
|
|
268
|
-
Plus anti-pattern scan (TODO/FIXME/HACK markers, empty catches).
|
|
269
|
-
|
|
270
|
-
**Creates:** Phase verification report in `.planning/phases/`
|
|
271
|
-
|
|
272
|
-
---
|
|
273
|
-
|
|
274
|
-
### 5. Repeat and Audit
|
|
275
|
-
|
|
276
|
-
Loop **plan → execute → verify** for each phase in the roadmap.
|
|
277
|
-
|
|
278
|
-
When all phases are done, run `gsdd-audit-milestone` to verify:
|
|
279
|
-
|
|
280
|
-
- Cross-phase integration (do the pieces connect?)
|
|
281
|
-
- Requirements coverage (did we deliver what SPEC.md promised?)
|
|
282
|
-
- E2E flows (do user workflows complete end-to-end?)
|
|
283
|
-
|
|
284
|
-
---
|
|
285
|
-
|
|
286
|
-
### Quick Mode
|
|
287
|
-
|
|
288
|
-
- `Claude Code / OpenCode`: `/gsdd-quick`
|
|
289
|
-
- `Codex CLI`: `$gsdd-quick`
|
|
290
|
-
- `Cursor / Copilot / Gemini`: `/gsdd-quick`
|
|
291
|
-
- `Other AI tools`: open `.agents/skills/gsdd-quick/SKILL.md`
|
|
292
|
-
|
|
293
|
-
For sub-hour tasks that don't need the full phase cycle:
|
|
294
|
-
|
|
295
|
-
- Same roles: planner + executor, conditional verifier
|
|
296
|
-
- Skips research: no researcher, no synthesizer
|
|
297
|
-
- Separate tracking: lives in `.planning/quick/`, logged in `LOG.md`
|
|
298
|
-
- Advisory git: follows repo conventions, no framework-imposed commit format
|
|
299
|
-
|
|
300
|
-
Use for: bug fixes, small features, config changes, one-off tasks.
|
|
301
|
-
|
|
302
|
-
**Creates:** `.planning/quick/NNN-slug/PLAN.md`, `SUMMARY.md`, updates `LOG.md`
|
|
303
|
-
|
|
304
|
-
---
|
|
305
|
-
|
|
306
|
-
## Workflows
|
|
307
|
-
|
|
308
|
-
Workspine has 14 workflows, run via generated skills or adapters:
|
|
309
|
-
|
|
310
|
-
| Workflow | What it does |
|
|
311
|
-
|----------|--------------|
|
|
312
|
-
| `gsdd-new-project` | Full initialization: questioning, brownfield audit when needed, research, spec, roadmap |
|
|
313
|
-
| `gsdd-map-codebase` | Deeper brownfield orientation and refresh before `quick` or `new-project` |
|
|
314
|
-
| `gsdd-plan` | Research + plan + check for a phase |
|
|
315
|
-
| `gsdd-execute` | Execute phase plan: implement tasks, verify changes |
|
|
316
|
-
| `gsdd-verify` | Verify completed phase: 3-level checks, anti-pattern scan |
|
|
317
|
-
| `gsdd-verify-work` | Conversational UAT testing: validate user-facing behavior with structured gap tracking |
|
|
318
|
-
| `gsdd-audit-milestone` | Audit milestone: cross-phase integration, requirements coverage, E2E flows |
|
|
319
|
-
| `gsdd-complete-milestone` | Archive shipped milestone, evolve spec, collapse roadmap |
|
|
320
|
-
| `gsdd-new-milestone` | Start next milestone: gather goals, define requirements, create roadmap phases |
|
|
321
|
-
| `gsdd-plan-milestone-gaps` | Create gap-closure phases from audit results |
|
|
322
|
-
| `gsdd-quick` | Quick task: bounded brownfield change lane with inline baseline when full mapping is unnecessary |
|
|
323
|
-
| `gsdd-pause` | Pause work: save session context to checkpoint for seamless resumption |
|
|
324
|
-
| `gsdd-resume` | Resume work: restore context from artifacts and route to next action |
|
|
325
|
-
| `gsdd-progress` | Show project status and route to next action |
|
|
326
|
-
|
|
327
|
-
Workflows are agent skills or commands, not plain shell utilities. How you invoke them depends on your platform:
|
|
328
|
-
|
|
329
|
-
| Platform | How to invoke workflows |
|
|
330
|
-
|----------|------------------------|
|
|
331
|
-
| Claude Code | `/gsdd-plan` (slash command, works immediately after init) |
|
|
332
|
-
| OpenCode | `/gsdd-plan` (slash command, works immediately after init) |
|
|
333
|
-
| Codex CLI | `$gsdd-plan` (skill reference, works immediately after init) |
|
|
334
|
-
| Cursor / Copilot / Gemini | `/gsdd-plan` (skills-native slash command). If the root `AGENTS.md` block is present, it adds governance, not workflow discovery. |
|
|
335
|
-
| Other AI tools | Open `.agents/skills/gsdd-plan/SKILL.md` and paste or reference its content. |
|
|
336
|
-
|
|
337
|
-
## CLI Commands
|
|
338
|
-
|
|
339
|
-
| Command | What it does |
|
|
340
|
-
|---------|--------------|
|
|
341
|
-
| `npx gsdd-cli init [--tools <platform>]` | First-run setup: create `.planning/`, `.agents/skills/`, and selected runtime adapters |
|
|
342
|
-
| `gsdd health [--json]` | Check installed generated surfaces and workspace state (healthy/degraded/broken) |
|
|
343
|
-
| `npx gsdd-cli update [--tools <platform>] [--templates]` | Regenerate installed runtime surfaces; `--templates` also refreshes `.planning/templates/` and role contracts |
|
|
344
|
-
| `gsdd models [show\|profile\|set\|...]` | Inspect and manage model profile propagation |
|
|
345
|
-
| `gsdd help` | Show all commands, including advanced/internal helpers |
|
|
346
188
|
|
|
347
|
-
|
|
189
|
+
### Non-Interactive Mode (CI / Automation)
|
|
190
|
+
|
|
191
|
+
For non-interactive environments:
|
|
192
|
+
|
|
193
|
+
```bash
|
|
194
|
+
npx -y gsdd-cli init --auto --tools claude
|
|
195
|
+
npx -y gsdd-cli init --auto --tools claude --brief path/to/PRD.md
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
`--auto` skips the interactive install wizard and uses default configuration. It does **not** run downstream workflows (`new-project`, `plan`, `execute`, `verify`) — those are always explicit. `--brief` copies a project document to `.planning/PROJECT_BRIEF.md` for `new-project` to consume.
|
|
199
|
+
|
|
200
|
+
If you already know exactly what to generate, `--tools ...` remains the manual path. The wizard is the primary onboarding UX; flags remain the advanced/headless contract.
|
|
201
|
+
|
|
202
|
+
### Team Use
|
|
203
|
+
|
|
204
|
+
- **Shared state:** Set `commitDocs: true` (default) — `.planning/` is tracked in git. Everyone sees the same spec, roadmap, and phase plans.
|
|
205
|
+
- **Onboarding:** After cloning, run `npx -y gsdd-cli init` to generate tool-specific adapters. `.planning/` is already tracked — no re-initialization needed.
|
|
206
|
+
- **Governance is explicit:** The wizard asks separately whether to install repo-wide `AGENTS.md` rules, and explains why you may care before writing to the repo root.
|
|
207
|
+
- **Session handoff:** Use `gsdd-pause` / `gsdd-resume` to hand off work. The checkpoint (`.planning/.continue-here.md`) captures context for the next person.
|
|
208
|
+
- **Adapter isolation:** Each developer runs `npx -y gsdd-cli init --tools <their-tool>` (or `gsdd init --tools <their-tool>` when globally installed). Adapter files don't conflict across tools.
|
|
209
|
+
|
|
210
|
+
For detailed workflow diagrams, recovery procedures, and extended examples, see the [User Guide](docs/USER-GUIDE.md).
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## How It Works
|
|
215
|
+
|
|
216
|
+
### The Core Loop
|
|
217
|
+
|
|
218
|
+
```
|
|
219
|
+
init → [plan → execute → verify] × N phases → audit-milestone → done
|
|
220
|
+
↕ pause/resume (any point)
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### 1. Initialize Project
|
|
224
|
+
|
|
225
|
+
Run the `gsdd-new-project` workflow. The system:
|
|
226
|
+
|
|
227
|
+
1. **Questions** — asks until it understands your idea (goals, constraints, tech, edge cases)
|
|
228
|
+
2. **Codebase map** — if brownfield and a deeper baseline is needed, maps the codebase across stack, architecture, conventions, and concerns; users do not need to pre-run `map-codebase` before `new-project`
|
|
229
|
+
3. **Research** — spawns parallel researchers to investigate the domain (configurable depth: fast/balanced/deep)
|
|
230
|
+
4. **Spec + Roadmap** — produces `SPEC.md` (living specification) and `ROADMAP.md` (phased delivery plan)
|
|
231
|
+
|
|
232
|
+
**Creates:** `.planning/SPEC.md`, `.planning/ROADMAP.md`
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
### 2. Plan Phase
|
|
237
|
+
|
|
238
|
+
Run `gsdd-plan` for the current phase. The system:
|
|
239
|
+
|
|
240
|
+
1. **Researches** — investigates how to implement this phase (if `workflow.research` is enabled)
|
|
241
|
+
2. **Plans** — creates atomic task plans with XML structure
|
|
242
|
+
3. **Checks** — a separate agent in a fresh context window reviews the plan against 7 dimensions (requirement coverage, task completeness, dependency correctness, key-link completeness, scope sanity, must-have quality, context compliance). If the plan fails, it revises and re-checks — up to 3 cycles before escalating to the human. Output is typed JSON so orchestration is machine-parseable, not prompt-dependent.
|
|
243
|
+
|
|
244
|
+
Each plan is small enough to execute in a fresh context window. The checker runs in a separate context from the planner — this is the [ICLR-validated](https://arxiv.org/abs/2310.01798) pattern for catching blind spots the planner inherits from its own reasoning.
|
|
245
|
+
|
|
246
|
+
`gsdd-plan` is terminal for the current run: it writes planning artifacts only. Execution begins only after an explicit `gsdd-execute` / `/gsdd-execute` / `$gsdd-execute` transition, depending on the runtime.
|
|
247
|
+
|
|
248
|
+
**Creates:** Phase plans in `.planning/phases/`
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
252
|
+
### 3. Execute Phase
|
|
253
|
+
|
|
254
|
+
Run `gsdd-execute`. The system:
|
|
255
|
+
|
|
256
|
+
1. **Runs plans in waves** — parallel where possible, sequential when dependent
|
|
257
|
+
2. **Fresh context per plan** — 200k tokens purely for implementation
|
|
258
|
+
3. **Clean commits** — follows repo conventions, no framework-imposed commit format
|
|
259
|
+
4. **Creates summaries** — records what happened for verification
|
|
260
|
+
|
|
261
|
+
**Creates:** Phase summaries in `.planning/phases/`
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
### 4. Verify Phase
|
|
266
|
+
|
|
267
|
+
Run `gsdd-verify`. The system checks three levels:
|
|
268
|
+
|
|
269
|
+
1. **Exists** — do the expected files exist?
|
|
270
|
+
2. **Substantive** — is the code real, not stubs?
|
|
271
|
+
3. **Wired** — is it connected and functional?
|
|
272
|
+
|
|
273
|
+
Plus anti-pattern scan (TODO/FIXME/HACK markers, empty catches).
|
|
274
|
+
|
|
275
|
+
**Creates:** Phase verification report in `.planning/phases/`
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
### 5. Repeat and Audit
|
|
280
|
+
|
|
281
|
+
Loop **plan → execute → verify** for each phase in the roadmap.
|
|
282
|
+
|
|
283
|
+
When all phases are done, run `gsdd-audit-milestone` to verify:
|
|
284
|
+
|
|
285
|
+
- Cross-phase integration (do the pieces connect?)
|
|
286
|
+
- Requirements coverage (did we deliver what SPEC.md promised?)
|
|
287
|
+
- E2E flows (do user workflows complete end-to-end?)
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
### Quick Mode
|
|
292
|
+
|
|
293
|
+
- `Claude Code / OpenCode`: `/gsdd-quick`
|
|
294
|
+
- `Codex CLI`: `$gsdd-quick`
|
|
295
|
+
- `Cursor / Copilot / Gemini`: `/gsdd-quick` when skill/slash discovery is available; otherwise open `.agents/skills/gsdd-quick/SKILL.md`
|
|
296
|
+
- `Other AI tools`: open `.agents/skills/gsdd-quick/SKILL.md`
|
|
297
|
+
|
|
298
|
+
For sub-hour tasks that don't need the full phase cycle:
|
|
299
|
+
|
|
300
|
+
- Same roles: planner + executor, conditional verifier
|
|
301
|
+
- Skips research: no researcher, no synthesizer
|
|
302
|
+
- Separate tracking: lives in `.planning/quick/`, logged in `LOG.md`
|
|
303
|
+
- Advisory git: follows repo conventions, no framework-imposed commit format
|
|
304
|
+
|
|
305
|
+
Use for: bug fixes, small features, config changes, one-off tasks.
|
|
306
|
+
|
|
307
|
+
**Creates:** `.planning/quick/NNN-slug/PLAN.md`, `SUMMARY.md`, updates `LOG.md`
|
|
308
|
+
|
|
309
|
+
---
|
|
310
|
+
|
|
311
|
+
## Workflows
|
|
312
|
+
|
|
313
|
+
Workspine has 14 workflows, run via generated skills or adapters:
|
|
314
|
+
|
|
315
|
+
| Workflow | What it does |
|
|
316
|
+
|----------|--------------|
|
|
317
|
+
| `gsdd-new-project` | Full initialization: questioning, brownfield audit when needed, research, spec, roadmap |
|
|
318
|
+
| `gsdd-map-codebase` | Deeper brownfield orientation and refresh before `quick` or `new-project` |
|
|
319
|
+
| `gsdd-plan` | Research + plan + check for a phase |
|
|
320
|
+
| `gsdd-execute` | Execute phase plan: implement tasks, verify changes |
|
|
321
|
+
| `gsdd-verify` | Verify completed phase: 3-level checks, anti-pattern scan |
|
|
322
|
+
| `gsdd-verify-work` | Conversational UAT testing: validate user-facing behavior with structured gap tracking |
|
|
323
|
+
| `gsdd-audit-milestone` | Audit milestone: cross-phase integration, requirements coverage, E2E flows |
|
|
324
|
+
| `gsdd-complete-milestone` | Archive shipped milestone, evolve spec, collapse roadmap |
|
|
325
|
+
| `gsdd-new-milestone` | Start next milestone: gather goals, define requirements, create roadmap phases |
|
|
326
|
+
| `gsdd-plan-milestone-gaps` | Create gap-closure phases from audit results |
|
|
327
|
+
| `gsdd-quick` | Quick task: bounded brownfield change lane with inline baseline when full mapping is unnecessary |
|
|
328
|
+
| `gsdd-pause` | Pause work: save session context to checkpoint for seamless resumption |
|
|
329
|
+
| `gsdd-resume` | Resume work: restore context from artifacts and route to next action |
|
|
330
|
+
| `gsdd-progress` | Show project status and route to next action |
|
|
331
|
+
|
|
332
|
+
Workflows are agent skills or commands, not plain shell utilities. How you invoke them depends on your platform:
|
|
333
|
+
|
|
334
|
+
| Platform | How to invoke workflows |
|
|
335
|
+
|----------|------------------------|
|
|
336
|
+
| Claude Code | `/gsdd-plan` (slash command, works immediately after init) |
|
|
337
|
+
| OpenCode | `/gsdd-plan` (slash command, works immediately after init) |
|
|
338
|
+
| Codex CLI | `$gsdd-plan` (skill reference, works immediately after init) |
|
|
339
|
+
| Cursor / Copilot / Gemini | `/gsdd-plan` when skill/slash discovery is available. If the root `AGENTS.md` block is present, it adds governance, not workflow discovery. |
|
|
340
|
+
| Other AI tools | Open `.agents/skills/gsdd-plan/SKILL.md` and paste or reference its content. |
|
|
341
|
+
|
|
342
|
+
## CLI Commands
|
|
348
343
|
|
|
349
344
|
| Command | What it does |
|
|
350
345
|
|---------|--------------|
|
|
351
|
-
| `
|
|
352
|
-
| `
|
|
353
|
-
| `
|
|
354
|
-
| `gsdd
|
|
355
|
-
| `gsdd
|
|
356
|
-
| `gsdd
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
|
373
|
-
|
|
374
|
-
| **
|
|
375
|
-
| **
|
|
376
|
-
| **
|
|
377
|
-
| **
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
|
413
|
-
|
|
414
|
-
| `.planning/
|
|
415
|
-
| `.planning
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
-
|
|
477
|
-
- `
|
|
478
|
-
- `
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
|
515
|
-
|
|
516
|
-
|
|
|
517
|
-
|
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
- **
|
|
535
|
-
- **
|
|
536
|
-
- **
|
|
537
|
-
- **
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
|
556
|
-
|
|
557
|
-
| **
|
|
558
|
-
| **
|
|
559
|
-
| **
|
|
560
|
-
| **
|
|
561
|
-
| **
|
|
562
|
-
| **
|
|
563
|
-
| **
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
|
576
|
-
|
|
577
|
-
| **
|
|
578
|
-
| **
|
|
579
|
-
| **
|
|
580
|
-
| **
|
|
581
|
-
| **
|
|
582
|
-
| **
|
|
583
|
-
| **
|
|
584
|
-
| **
|
|
585
|
-
| **
|
|
586
|
-
| **
|
|
587
|
-
| **
|
|
588
|
-
| **
|
|
589
|
-
| **
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
|
606
|
-
|
|
607
|
-
|
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
---
|
|
625
|
-
|
|
626
|
-
##
|
|
627
|
-
|
|
628
|
-
|
|
346
|
+
| `npx -y gsdd-cli init [--tools <platform>]` | Set up `.planning/`, generate skills/adapters |
|
|
347
|
+
| `npx -y gsdd-cli update [--tools <platform>] [--templates]` | Regenerate skills/adapters and refresh the repo-local helper runtime; `--templates` refreshes `.planning/templates/` and role contracts |
|
|
348
|
+
| `npx -y gsdd-cli health [--json]` | Check workspace integrity and generated-surface freshness (healthy/degraded/broken) |
|
|
349
|
+
| `npx -y gsdd-cli file-op <copy\|delete\|regex-sub>` | Run deterministic workspace-confined file copy, delete, and regex substitution |
|
|
350
|
+
| `npx -y gsdd-cli find-phase [N]` | Show phase info as JSON (for agent consumption) |
|
|
351
|
+
| `npx -y gsdd-cli phase-status <N> <status>` | Update a single ROADMAP phase status through the status-aware helper |
|
|
352
|
+
| `npx -y gsdd-cli verify <N>` | Run artifact checks for phase N |
|
|
353
|
+
| `npx -y gsdd-cli scaffold phase <N> [name]` | Create a new phase plan file |
|
|
354
|
+
| `npx -y gsdd-cli models [show\|profile\|set\|...]` | Inspect and manage model profile propagation |
|
|
355
|
+
| `npx -y gsdd-cli help` | Show all commands |
|
|
356
|
+
|
|
357
|
+
Use the shorter bare `gsdd ...` CLI form only when `gsdd-cli` is globally installed. Generated workflows call deterministic helpers through `node .planning/bin/gsdd.mjs ...` from the repo root, not through an ambient global binary.
|
|
358
|
+
|
|
359
|
+
---
|
|
360
|
+
|
|
361
|
+
## Architecture
|
|
362
|
+
|
|
363
|
+
### Roles (10 canonical)
|
|
364
|
+
|
|
365
|
+
Workspine consolidates GSD's agent surface into 10 roles with durable contracts:
|
|
366
|
+
|
|
367
|
+
| Role | Responsibility |
|
|
368
|
+
|------|---------------|
|
|
369
|
+
| **Mapper** | Codebase analysis — produces STACK, ARCHITECTURE, CONVENTIONS, CONCERNS |
|
|
370
|
+
| **Researcher** | Domain investigation — merges GSD's project + phase researcher |
|
|
371
|
+
| **Synthesizer** | Research consolidation (conditional — skipped in fast mode) |
|
|
372
|
+
| **Planner** | Phase planning — absorbs plan-checking responsibility |
|
|
373
|
+
| **Executor** | Task implementation |
|
|
374
|
+
| **Verifier** | Phase verification — Exists/Substantive/Wired gate |
|
|
375
|
+
| **Roadmapper** | Roadmap generation from spec |
|
|
376
|
+
| **Integration Checker** | Cross-phase wiring, API coverage, auth protection, E2E flows |
|
|
377
|
+
| **Approach Explorer** | Implementation approach alignment before planning begins |
|
|
378
|
+
| **Debugger** | Utility role for systematic debugging |
|
|
379
|
+
|
|
380
|
+
### Two-Layer Architecture
|
|
381
|
+
|
|
382
|
+
- **Role contracts** (`agents/*.md`) — durable, contain the full behavioral specification
|
|
383
|
+
- **Delegates** (`distilled/templates/delegates/*.md`) — thin wrappers that reference roles and provide task-specific context
|
|
384
|
+
|
|
385
|
+
Delegates cover mapper, researcher, synthesizer, plan-checker, and approach-explorer work. Workflows use `<delegate>` blocks to dispatch work. For detailed GSD-to-GSDD role distillation rationale, see [`agents/DISTILLATION.md`](agents/DISTILLATION.md).
|
|
386
|
+
|
|
387
|
+
### Adapter Architecture
|
|
388
|
+
|
|
389
|
+
Workspine generates vendor-specific files from vendor-agnostic markdown — it does not convert from one vendor format to another. This means every adapter gets first-class output shaped to its platform's native capabilities.
|
|
390
|
+
|
|
391
|
+
| Adapter | Evidence posture | Strategy |
|
|
392
|
+
|---------|------------------|----------|
|
|
393
|
+
| **Claude Code** | Directly validated | Skill-primary plan surface, thin command alias, native `gsdd-plan-checker` agent |
|
|
394
|
+
| **OpenCode** | Directly validated | Specialized `/gsdd-plan` command (`subtask: false`), hidden `gsdd-plan-checker` subagent (`mode: subagent`) |
|
|
395
|
+
| **Codex CLI** | Directly validated | Portable skill as entry surface, `.codex/agents/gsdd-plan-checker.toml` (read-only, high reasoning effort), explicit `$gsdd-execute` unlock |
|
|
396
|
+
| **Cursor / Copilot / Gemini** | Qualified support | Uses `.agents/skills/` when skill/slash discovery is available; optional root `AGENTS.md` block adds behavioral governance only |
|
|
397
|
+
| **agents** (`--tools agents`) | Governance-only helper | Root `AGENTS.md` block for tools that benefit from governance or need open-standard fallback guidance |
|
|
398
|
+
|
|
399
|
+
All adapters render the plan-checker from a single source (`distilled/templates/delegates/plan-checker.md`). Each adapter shapes the output to its platform's native mechanics, and the portable skill remains the shared workflow source.
|
|
400
|
+
|
|
401
|
+
Cursor, Copilot, and Gemini CLI generate the same root `AGENTS.md` governance block as `--tools agents`, but that file is governance only. Use their slash-command path when `.agents/skills/` discovery is available; otherwise open the relevant generated `SKILL.md` file.
|
|
402
|
+
|
|
403
|
+
Model IDs pass through a two-layer injection guard: a regex whitelist (`/^[a-zA-Z0-9._\/:@-]+$/`) at the CLI boundary, plus format-specific escaping (TOML string escaping, triple-quote break prevention) at the adapter layer.
|
|
404
|
+
|
|
405
|
+
### Artifacts
|
|
406
|
+
|
|
407
|
+
| File | Purpose |
|
|
408
|
+
|------|---------|
|
|
409
|
+
| `.planning/SPEC.md` | Living specification — replaces GSD's separate PROJECT.md + REQUIREMENTS.md |
|
|
410
|
+
| `.planning/ROADMAP.md` | Phased delivery plan with inline status — replaces STATE.md |
|
|
411
|
+
| `.planning/config.json` | Project configuration (research depth, workflow toggles, git protocol) |
|
|
412
|
+
| `.planning/phases/` | Plans, summaries, and verification reports per phase |
|
|
413
|
+
| `.planning/research/` | Research outputs |
|
|
414
|
+
| `.planning/codebase/` | Codebase maps (4 files) |
|
|
415
|
+
| `.planning/quick/` | Quick task tracking |
|
|
416
|
+
| `.planning/.continue-here.md` | Session checkpoint (created by pause, consumed by resume) |
|
|
417
|
+
|
|
418
|
+
### Advisory Git Protocol
|
|
419
|
+
|
|
420
|
+
Workspine does not impose commit formats, branch naming, or one-commit-per-task rules. Git guidance is advisory — repository and team conventions take precedence:
|
|
421
|
+
|
|
422
|
+
- **Branching** — follow existing repo conventions
|
|
423
|
+
- **Commits** — group changes logically, no framework-imposed format
|
|
424
|
+
- **PRs** — follow existing repo review workflow
|
|
425
|
+
|
|
426
|
+
Defaults configurable in `.planning/config.json` under `gitProtocol`.
|
|
427
|
+
|
|
428
|
+
### What to Track in Git
|
|
429
|
+
|
|
430
|
+
| Path | Track? | Why |
|
|
431
|
+
|------|--------|-----|
|
|
432
|
+
| `.planning/` | Yes (default) | Shared project state — spec, roadmap, phase plans. Controlled by `commitDocs` in config. |
|
|
433
|
+
| `.agents/skills/` | Yes | Portable workflow entrypoints. Generated, safe to track. |
|
|
434
|
+
| `.claude/`, `.opencode/`, `.codex/` | Yes | Tool-specific adapters. Don't conflict across tools. |
|
|
435
|
+
| `AGENTS.md` (root) | Yes (if generated) | Governance block. Uses bounded upsert — won't overwrite existing content. |
|
|
436
|
+
|
|
437
|
+
No secrets or credentials are generated. Set `commitDocs: false` for local-only planning state.
|
|
438
|
+
|
|
439
|
+
### Context Isolation
|
|
440
|
+
|
|
441
|
+
Orchestrators stay thin. Delegates write documents to disk and return summaries — the orchestrator never accumulates full research or plan content in its context window. This keeps the main session fast and responsive even during deep phases.
|
|
442
|
+
|
|
443
|
+
---
|
|
444
|
+
|
|
445
|
+
## Configuration
|
|
446
|
+
|
|
447
|
+
`npx -y gsdd-cli init` creates `.planning/config.json` interactively (or with defaults in non-interactive mode).
|
|
448
|
+
|
|
449
|
+
| Setting | Options | Default | What it controls |
|
|
450
|
+
|---------|---------|---------|------------------|
|
|
451
|
+
| `researchDepth` | `fast`, `balanced`, `deep` | `balanced` | Research thoroughness per phase |
|
|
452
|
+
| `parallelization` | `true`, `false` | `true` | Run independent agents simultaneously |
|
|
453
|
+
| `commitDocs` | `true`, `false` | `true` | Track `.planning/` in git |
|
|
454
|
+
| `modelProfile` | `balanced`, `quality`, `budget` | `balanced` | Portable semantic model tier |
|
|
455
|
+
|
|
456
|
+
**When to use each profile:**
|
|
457
|
+
- **`quality`** — maximize plan-checking rigor. Use for production milestones or security-sensitive work.
|
|
458
|
+
- **`balanced`** (default) — good checking at reasonable cost. Suitable for most development.
|
|
459
|
+
- **`budget`** — minimize cost. Use for prototyping or familiar domains where you'll review plans manually.
|
|
460
|
+
|
|
461
|
+
The profile only affects the plan-checker agent. Disable `workflow.planCheck` entirely to skip checking.
|
|
462
|
+
|
|
463
|
+
Optional model-control keys:
|
|
464
|
+
|
|
465
|
+
| Setting | What it controls |
|
|
466
|
+
|---------|------------------|
|
|
467
|
+
| `agentModelProfiles.<agent>` | Per-agent semantic override. Current supported agent id: `plan-checker`. |
|
|
468
|
+
| `runtimeModelOverrides.<runtime>.<agent>` | Exact runtime-native model override. Supported targets: `claude.plan-checker`, `opencode.plan-checker`, `codex.plan-checker`. |
|
|
469
|
+
|
|
470
|
+
Runtime behavior:
|
|
471
|
+
- Claude translates semantic tiers to native aliases for the checker agent.
|
|
472
|
+
- OpenCode inherits its runtime model by default; Workspine only injects an exact OpenCode `model:` when you set an explicit runtime override.
|
|
473
|
+
- Codex inherits its session model by default; Workspine only injects an explicit `model` in the TOML when you set an explicit runtime override.
|
|
474
|
+
|
|
475
|
+
CLI:
|
|
476
|
+
- `npx -y gsdd-cli models show`
|
|
477
|
+
- `npx -y gsdd-cli models profile <quality|balanced|budget>`
|
|
478
|
+
- `npx -y gsdd-cli models agent-profile --agent plan-checker --profile <quality|balanced|budget>`
|
|
479
|
+
- `npx -y gsdd-cli models clear-agent-profile --agent plan-checker`
|
|
480
|
+
- `npx -y gsdd-cli models set --runtime <claude|opencode|codex> --agent plan-checker --model <id>`
|
|
481
|
+
- `npx -y gsdd-cli models clear --runtime <claude|opencode|codex> --agent plan-checker`
|
|
482
|
+
|
|
483
|
+
### Workflow Toggles
|
|
484
|
+
|
|
485
|
+
Each adds quality but costs tokens and time:
|
|
486
|
+
|
|
487
|
+
| Setting | Default | What it does |
|
|
488
|
+
|---------|---------|--------------|
|
|
489
|
+
| `workflow.research` | `true` | Research domain before planning each phase |
|
|
490
|
+
| `workflow.planCheck` | `true` | Verify plans achieve goals before execution |
|
|
491
|
+
| `workflow.verifier` | `true` | Verify phase deliverables after execution |
|
|
492
|
+
|
|
493
|
+
### Git Protocol
|
|
494
|
+
|
|
495
|
+
Advisory defaults, overridden by repo conventions:
|
|
496
|
+
|
|
497
|
+
| Setting | Default |
|
|
498
|
+
|---------|---------|
|
|
499
|
+
| `gitProtocol.branch` | Follow existing repo conventions |
|
|
500
|
+
| `gitProtocol.commit` | Logical grouping, no phase/task IDs |
|
|
501
|
+
| `gitProtocol.pr` | Follow existing review workflow |
|
|
502
|
+
|
|
503
|
+
---
|
|
504
|
+
|
|
505
|
+
## Troubleshooting
|
|
506
|
+
|
|
507
|
+
**First step:** Run `npx -y gsdd-cli health` — it checks workspace integrity and prints actionable fix instructions.
|
|
508
|
+
|
|
509
|
+
| Problem | What to do |
|
|
510
|
+
|---------|------------|
|
|
511
|
+
| Workspace feels broken | `npx -y gsdd-cli health` — checks errors, warnings, info |
|
|
512
|
+
| Health reports generated runtime-surface drift | `npx -y gsdd-cli update` (including `--tools <runtime>` when needed) — regenerates installed skills/adapters from current render output |
|
|
513
|
+
| Lost track of progress | Run `gsdd-progress` — reads artifacts, shows status |
|
|
514
|
+
| Need context from last session | Run `gsdd-resume` — restores state, routes to next action |
|
|
515
|
+
| Plans seem wrong | Check `workflow.research: true` in config |
|
|
516
|
+
| Execution produces stubs | Re-plan with smaller scope (2-5 tasks per plan) |
|
|
517
|
+
| Templates out of date | `npx -y gsdd-cli update --templates` — warns before overwriting |
|
|
518
|
+
| Model costs too high | `npx -y gsdd-cli models profile budget` + disable `workflow.planCheck` |
|
|
519
|
+
|
|
520
|
+
For detailed troubleshooting and recovery procedures, see the [User Guide](docs/USER-GUIDE.md#troubleshooting).
|
|
521
|
+
|
|
522
|
+
---
|
|
523
|
+
|
|
524
|
+
## Design Decisions
|
|
525
|
+
|
|
526
|
+
This repo records documented design decisions relative to GSD, each with evidence from source files and external research. See [`distilled/DESIGN.md`](distilled/DESIGN.md) for the full rationale.
|
|
527
|
+
|
|
528
|
+
Key choices:
|
|
529
|
+
- **4-file codebase standard** — drop state that rots (STRUCTURE, INTEGRATIONS, TESTING), keep rules that don't
|
|
530
|
+
- **Agent consolidation** — 10 roles from GSD's 11, with explicit reduced-assurance mode when independent checking isn't available
|
|
531
|
+
- **Adapter generation over conversion** — generate vendor-specific files from vendor-agnostic markdown instead of converting from Claude-first
|
|
532
|
+
- **Advisory git** — repo conventions over framework defaults
|
|
533
|
+
- **Context isolation** — summaries up, documents to disk
|
|
534
|
+
- **Mechanical invariant enforcement** — structural properties guarded by assertions, not code review
|
|
535
|
+
- **Model profile propagation** — semantic tiers (`quality`/`balanced`/`budget`) translated to native model IDs per runtime
|
|
536
|
+
- **Template versioning** — SHA-256 generation manifest detects user modifications before overwriting
|
|
537
|
+
- **CLI composition root boundary** — 100-line facade delegates to extracted modules
|
|
538
|
+
- **Codex CLI native adapter** — portable skill entry + TOML checker agent, documented platform gaps tracked against upstream issues
|
|
539
|
+
|
|
540
|
+
---
|
|
541
|
+
|
|
542
|
+
## Testing
|
|
543
|
+
|
|
544
|
+
The framework has 1,381 tests across 13 test files — named suites that guard properties PRs repeatedly fixed manually. These are not unit tests for application code; they are invariant checks on the specification itself.
|
|
545
|
+
|
|
546
|
+
### Invariant Suites (I-series)
|
|
547
|
+
|
|
548
|
+
Structural contracts that prevent drift between roles, delegates, workflows, and artifacts:
|
|
549
|
+
|
|
550
|
+
| Suite | What it guards |
|
|
551
|
+
|-------|---------------|
|
|
552
|
+
| **I1** | Delegate-role reference integrity — 11 delegates resolve to existing role contracts |
|
|
553
|
+
| **I2** | Role section structure — 10 roles have role def, scope, output format, success criteria |
|
|
554
|
+
| **I3** | Delegate thinness — no leaked role-contract sections in delegates |
|
|
555
|
+
| **I3-gate** | New-project approval gates — required human checkpoints present |
|
|
556
|
+
| **I4** | Workflow references — 14 workflows, all delegate/role refs resolve |
|
|
557
|
+
| **I5** | Session management — no vendor APIs, no STATE.md, checkpoint contract |
|
|
558
|
+
| **I5b** | Session workflow scope boundaries |
|
|
559
|
+
| **I6** | Artifact schema definitions |
|
|
560
|
+
| **I7** | Plan-checker dimension integrity — 7 dimensions present and correctly structured |
|
|
561
|
+
| **I8** | Workflow vendor API cleanliness — no platform-specific calls in portable workflows |
|
|
562
|
+
| **I9** | No deprecated content — no vendor paths, dropped files, legacy tooling |
|
|
563
|
+
| **I10** | Mandatory initial-read enforcement on hardened lifecycle roles |
|
|
564
|
+
| **S13** | STATE.md elimination — D7 compliance verified across all artifacts |
|
|
565
|
+
|
|
566
|
+
### Guard Suites (G-series)
|
|
567
|
+
|
|
568
|
+
Mechanical enforcement that catches cross-document inconsistencies:
|
|
569
|
+
|
|
570
|
+
| Suite | What it guards |
|
|
571
|
+
|-------|---------------|
|
|
572
|
+
| **G1** | Cross-document schema consistency |
|
|
573
|
+
| **G3** | File size guards — role contracts and delegates within bounds |
|
|
574
|
+
| **G4** | XML section well-formedness across all workflows |
|
|
575
|
+
| **G5** | Artifact lifecycle chain — plan → execute → verify → audit linkage |
|
|
576
|
+
| **G6** | DESIGN.md decision registry — ToC matches actual decisions |
|
|
577
|
+
| **G7** | Delegate thinness (mechanical) |
|
|
578
|
+
| **G8** | Auto-mode contract |
|
|
579
|
+
| **G9** | Generation manifest contract |
|
|
580
|
+
| **G10** | CLI module boundary — composition root stays thin |
|
|
581
|
+
| **G11** | Codex doc contract — no deprecated references |
|
|
582
|
+
| **G12** | Documentation accuracy — decision counts, workflow counts, CLI commands, ghost commands |
|
|
583
|
+
| **G13** | Models pre-init safety — mutation commands guard uninitialized workspaces |
|
|
584
|
+
| **G14** | Health module contract — export, command wiring, help text, fix instructions |
|
|
585
|
+
| **G15** | OWASP authorization matrix — template format, integration-checker Step 4a, backwards compat |
|
|
586
|
+
| **G16** | Distillation ledger — DISTILLATION.md role coverage, merger table, D22 registration |
|
|
587
|
+
| **G17** | Mapper output quantification — template sections, delegate instructions, D23 registration |
|
|
588
|
+
| **G18** | Consumer governance completeness — agents.block.md workflow coverage, CHANGELOG accuracy |
|
|
589
|
+
| **G19** | Consumer first-run accuracy — honest platform tiers, per-platform invocation guidance, Quickstart section |
|
|
590
|
+
| **G20** | Session continuity contract — pause checkpoint format, resume routing, progress detection, cross-workflow paths |
|
|
591
|
+
|
|
592
|
+
### Scenario Suites (S-series)
|
|
593
|
+
|
|
594
|
+
Golden-path eval tests that verify artifact-chain contracts across end-to-end workflows:
|
|
595
|
+
|
|
596
|
+
| Suite | What it covers |
|
|
597
|
+
|-------|---------------|
|
|
598
|
+
| **S1** | Greenfield golden path — init → new-project → plan → execute → verify → audit-milestone |
|
|
599
|
+
| **S2** | Brownfield path — map-codebase delegates, codebase map references, mapper role |
|
|
600
|
+
| **S3** | Quick-task path — isolation from ROADMAP/research, role references |
|
|
601
|
+
| **S4** | Native runtime chain — Claude + Codex checker completeness, 7 dimensions |
|
|
602
|
+
| **S5** | Config-to-content propagation — default config values reflected in generated artifacts |
|
|
603
|
+
|
|
604
|
+
### Functional Test Suites
|
|
605
|
+
|
|
606
|
+
| Suite | What it covers |
|
|
607
|
+
|-------|---------------|
|
|
608
|
+
| Init & update | Planning structure, config, templates, adapters, idempotency, auto mode |
|
|
609
|
+
| Models | Profile propagation, runtime overrides, CLI commands, injection prevention |
|
|
610
|
+
| Generation manifest | SHA-256 hashing, modification detection, dry-run mode |
|
|
611
|
+
| Plan adapters | Portable skill neutrality, TOML format, triple-quote escaping |
|
|
612
|
+
| Audit milestone | Integration checking contract |
|
|
613
|
+
| Health | Pre-init guard, all check categories, verdict logic, JSON/human output |
|
|
614
|
+
|
|
615
|
+
```bash
|
|
616
|
+
npm test
|
|
617
|
+
```
|
|
618
|
+
|
|
619
|
+
---
|
|
620
|
+
|
|
621
|
+
## Credits
|
|
622
|
+
|
|
623
|
+
Workspine is a fork of [Get Shit Done](https://github.com/gsd-build/get-shit-done) by [Lex Christopherson](https://github.com/glittercowboy), licensed under MIT. Original git history is retained for attribution.
|
|
624
|
+
|
|
625
|
+
---
|
|
626
|
+
|
|
627
|
+
## License
|
|
628
|
+
|
|
629
|
+
MIT License. See [LICENSE](LICENSE) for details.
|