gsdd-cli 0.27.0 → 0.28.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/README.md +53 -22
- package/agents/DISTILLATION.md +2 -2
- package/agents/README.md +4 -4
- package/agents/approach-explorer.md +4 -4
- package/agents/executor.md +14 -14
- package/agents/integration-checker.md +2 -2
- package/agents/researcher.md +2 -2
- package/agents/roadmapper.md +6 -6
- package/agents/synthesizer.md +18 -18
- package/agents/verifier.md +2 -2
- package/bin/adapters/agents.mjs +3 -3
- package/bin/adapters/claude.mjs +16 -14
- package/bin/adapters/opencode.mjs +15 -12
- package/bin/gsdd.mjs +16 -13
- package/bin/lib/{models.mjs → config.mjs} +23 -16
- package/bin/lib/control-map.mjs +17 -488
- package/bin/lib/health-truth.mjs +8 -13
- package/bin/lib/health.mjs +25 -39
- package/bin/lib/init-flow.mjs +44 -38
- package/bin/lib/init-prompts.mjs +3 -3
- package/bin/lib/init-runtime.mjs +11 -30
- package/bin/lib/lifecycle-preflight.mjs +97 -410
- package/bin/lib/lifecycle-state.mjs +2 -1
- package/bin/lib/next.mjs +243 -20
- package/bin/lib/phase.mjs +10 -315
- package/bin/lib/rendering.mjs +64 -44
- package/bin/lib/runtime-freshness.mjs +18 -15
- package/bin/lib/state-dir.mjs +45 -0
- package/bin/lib/templates.mjs +59 -22
- package/bin/lib/work-context.mjs +12 -1
- package/bin/lib/workflows.mjs +0 -1
- package/bin/lib/workspace-root.mjs +11 -6
- package/distilled/DESIGN.md +58 -2
- package/distilled/EVIDENCE-INDEX.md +15 -2
- package/distilled/README.md +23 -33
- package/distilled/SKILL.md +9 -10
- package/distilled/templates/agents.block.md +5 -5
- package/distilled/templates/approach.md +3 -3
- package/distilled/templates/auth-matrix.md +2 -2
- package/distilled/templates/brownfield-change/CHANGE.md +1 -1
- package/distilled/templates/delegates/approach-explorer.md +5 -5
- package/distilled/templates/delegates/mapper-arch.md +3 -3
- package/distilled/templates/delegates/mapper-concerns.md +4 -4
- package/distilled/templates/delegates/mapper-quality.md +3 -3
- package/distilled/templates/delegates/mapper-tech.md +3 -3
- package/distilled/templates/delegates/plan-checker.md +5 -5
- package/distilled/templates/delegates/researcher-architecture.md +3 -3
- package/distilled/templates/delegates/researcher-features.md +3 -3
- package/distilled/templates/delegates/researcher-pitfalls.md +3 -3
- package/distilled/templates/delegates/researcher-stack.md +3 -3
- package/distilled/templates/delegates/researcher-synthesizer.md +7 -7
- package/distilled/templates/research/architecture.md +1 -1
- package/distilled/templates/research/pitfalls.md +1 -1
- package/distilled/templates/research/stack.md +1 -1
- package/distilled/templates/roadmap.md +4 -4
- package/distilled/templates/spec.md +2 -2
- package/distilled/workflows/audit-milestone.md +22 -22
- package/distilled/workflows/complete-milestone.md +35 -35
- package/distilled/workflows/execute.md +29 -29
- package/distilled/workflows/map-codebase.md +30 -30
- package/distilled/workflows/new-milestone.md +18 -18
- package/distilled/workflows/new-project.md +45 -45
- package/distilled/workflows/pause.md +15 -15
- package/distilled/workflows/plan.md +63 -63
- package/distilled/workflows/progress.md +40 -39
- package/distilled/workflows/quick.md +43 -43
- package/distilled/workflows/resume.md +23 -22
- package/distilled/workflows/verify-work.md +7 -7
- package/distilled/workflows/verify.md +20 -20
- package/docs/BROWNFIELD-PROOF.md +1 -1
- package/docs/RUNTIME-SUPPORT.md +13 -13
- package/docs/USER-GUIDE.md +17 -20
- package/docs/claude/context-monitor.md +1 -1
- package/docs/proof/consumer-node-cli/README.md +1 -1
- package/package.json +3 -3
- package/bin/lib/closeout-report.mjs +0 -318
- package/bin/lib/evidence-contract.mjs +0 -325
- package/bin/lib/provenance.mjs +0 -390
- package/bin/lib/session-fingerprint.mjs +0 -223
- package/bin/lib/ui-proof.mjs +0 -1007
- package/distilled/workflows/plan-milestone-gaps.md +0 -204
package/distilled/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Workspine
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Plan, execute, and verify AI-assisted work from files in your repo — for the part of AI coding that still needs human judgment: planning, checking, execution, verification, and handoff.
|
|
4
4
|
|
|
5
5
|
Workspine keeps planning, execution, verification, handoff, and progress state in the repo so work survives cold starts, runtime switches, and session loss. The retained package and CLI contracts remain `gsdd-cli` / `gsdd`.
|
|
6
6
|
|
|
@@ -25,20 +25,20 @@ Skip the full lifecycle for tiny, obvious edits. Direct prompting in your usual
|
|
|
25
25
|
## What This Is
|
|
26
26
|
|
|
27
27
|
Workspine is a small set of workflow sources plus a CLI (`gsdd`) that:
|
|
28
|
-
- scaffolds a project planning workspace (`.
|
|
28
|
+
- scaffolds a project planning workspace (`.work/`)
|
|
29
29
|
- generates compact open-standard workflow entrypoints as skills (`.agents/skills/gsdd-*/SKILL.md`)
|
|
30
|
-
- generates an internal repo-local helper runtime at `.
|
|
30
|
+
- generates an internal repo-local helper runtime at `.work/bin/gsdd.mjs` for deterministic workflow commands run from the repo root
|
|
31
31
|
- optionally generates tool-specific adapters for runtimes that need extra native surfaces (root `AGENTS.md`, Claude skills + plan-command alias + native agents, OpenCode commands + native agents, Codex CLI checker agent)
|
|
32
32
|
|
|
33
|
-
It gives serious AI-assisted work one durable repo workflow
|
|
33
|
+
It gives serious AI-assisted work one durable, repo-native workflow for planning, checking, execution, verification, and handoff — plain files, no hosted service.
|
|
34
34
|
|
|
35
|
-
Workspine is the product name. The package, CLI commands, workflow prefixes, and workspace directory remain `gsdd-cli`, `gsdd`, `gsdd-*`, and `.planning/`
|
|
35
|
+
Workspine is the product name. The package, CLI commands, workflow prefixes, and workspace directory remain `gsdd-cli`, `gsdd`, `gsdd-*`, and `.work/`; legacy `.planning/` workspaces are still read.
|
|
36
36
|
|
|
37
|
-
Workspine began as a fork of Get Shit Done, whose long-horizon
|
|
37
|
+
Workspine began as a fork of Get Shit Done, whose long-horizon workflow proved the problem was real. Since the fork, upstream GSD has continued evolving into a broad multi-runtime framework. Workspine took a different path: a smaller repo-native tool with fewer public workflows, generated runtime surfaces from a portable core, proof required before closing work, and decisions that keep their why.
|
|
38
38
|
|
|
39
39
|
Launch proof posture:
|
|
40
|
-
-
|
|
41
|
-
- Qualified support only: Cursor, Copilot, Gemini CLI can use the shared `.agents/skills/` surface plus optional governance when their skill or slash discovery sees it; proof and ergonomics differ from the
|
|
40
|
+
- Recorded launch proof in repo truth currently covers Claude Code, Codex CLI, and OpenCode paths
|
|
41
|
+
- Qualified support only: Cursor, Copilot, Gemini CLI can use the shared `.agents/skills/` surface plus optional governance when their skill or slash discovery sees it; proof and ergonomics differ from the recorded paths above
|
|
42
42
|
- Codex CLI validation does not automatically cover Codex VS Code or the Codex app; use native discovery there when available, otherwise open or paste `.agents/skills/gsdd-*/SKILL.md`
|
|
43
43
|
- Repo-local generated runtime surfaces are renderer-checked through `npx -y gsdd-cli health`, with deterministic repair through `npx -y gsdd-cli update` (bare `gsdd ...` is equivalent only when globally installed)
|
|
44
44
|
- Public proof entrypoints: `docs/BROWNFIELD-PROOF.md`, `docs/proof/consumer-node-cli/README.md`, `docs/RUNTIME-SUPPORT.md`, `docs/VERIFICATION-DISCIPLINE.md`
|
|
@@ -59,7 +59,7 @@ npx -y gsdd-cli install --global
|
|
|
59
59
|
npx -y gsdd-cli install --global --tools claude,opencode,codex,copilot
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
Global install writes selected Workspine skills and native agent surfaces into user-level agent homes. It does not create `.
|
|
62
|
+
Global install writes selected Workspine skills and native agent surfaces into user-level agent homes. It does not create `.work/` in the current repo.
|
|
63
63
|
|
|
64
64
|
Optional adapters:
|
|
65
65
|
```bash
|
|
@@ -72,18 +72,18 @@ npx -y gsdd-cli init --tools all
|
|
|
72
72
|
```
|
|
73
73
|
|
|
74
74
|
Notes:
|
|
75
|
-
- `npx -y gsdd-cli init` always generates open-standard skills at `.agents/skills/gsdd-*` plus the repo-local helper runtime at `.
|
|
75
|
+
- `npx -y gsdd-cli init` always generates open-standard skills at `.agents/skills/gsdd-*` plus the repo-local helper runtime at `.work/bin/gsdd.mjs`. Workflow helper commands assume the repo root as the current working directory.
|
|
76
76
|
- `--tools ...` remains the manual/headless path; legacy runtime aliases such as `cursor`, `copilot`, and `gemini` are still supported for backward compatibility.
|
|
77
77
|
- `--tools claude` also generates native agents at `.claude/agents/gsdd-*.md` and a compatibility plan command alias at `.claude/commands/gsdd-plan.md`.
|
|
78
78
|
- `--tools opencode` also generates native agents at `.opencode/agents/gsdd-*.md`.
|
|
79
|
-
- `--tools codex` generates `.codex/agents/gsdd-plan-checker.toml`; the portable `.agents/skills/gsdd-plan/` surface remains the Codex entry path and internal helper commands route through `.
|
|
79
|
+
- `--tools codex` generates `.codex/agents/gsdd-plan-checker.toml`; the portable `.agents/skills/gsdd-plan/` surface remains the Codex entry path and internal helper commands route through `.work/bin/gsdd.mjs`.
|
|
80
80
|
- Root `AGENTS.md` is only written when explicitly requested (`--tools agents`, `--tools all`, legacy runtime aliases, or the wizard governance opt-in). Governance and native adapter surfaces are optional ergonomics; the compact `.agents/skills/` files remain the baseline agent entrypoints.
|
|
81
81
|
|
|
82
82
|
## The Workflow
|
|
83
83
|
|
|
84
84
|
```
|
|
85
|
-
npx -y gsdd-cli init -> bootstrap (create .
|
|
86
|
-
/gsdd-new-project -> .
|
|
85
|
+
npx -y gsdd-cli init -> bootstrap (create .work/, copy templates, generate skills/adapters)
|
|
86
|
+
/gsdd-new-project -> .work/SPEC.md + .work/ROADMAP.md (questioning + codebase audit + research)
|
|
87
87
|
/gsdd-plan N -> phases/N/PLAN.md (task breakdown + research)
|
|
88
88
|
/gsdd-execute N -> code changes (plan execution with quality gates)
|
|
89
89
|
/gsdd-verify N -> VERIFICATION.md (goal-backward validation)
|
|
@@ -91,23 +91,15 @@ npx -y gsdd-cli init -> bootstrap (create .planning/, copy templates, gene
|
|
|
91
91
|
/gsdd-audit-milestone -> MILESTONE-AUDIT.md (cross-phase integration + requirements coverage)
|
|
92
92
|
/gsdd-complete-milestone -> milestones/vX.Y-* (archive, evolve spec, collapse roadmap)
|
|
93
93
|
/gsdd-new-milestone -> updated SPEC.md + ROADMAP.md (next milestone goals + phases)
|
|
94
|
-
/gsdd-plan
|
|
95
|
-
/gsdd-quick -> .
|
|
96
|
-
/gsdd-pause -> .
|
|
94
|
+
/gsdd-plan -> amend/extend gap closure phases in ROADMAP.md (from audit results)
|
|
95
|
+
/gsdd-quick -> .work/quick/NNN/ (sub-hour task outside phases)
|
|
96
|
+
/gsdd-pause -> .work/.continue-here.md (session checkpoint)
|
|
97
97
|
/gsdd-resume -> restore context, route to next action
|
|
98
98
|
/gsdd-progress -> show status, route to next action
|
|
99
99
|
```
|
|
100
100
|
|
|
101
101
|
The main operator spine is four workflow moves after bootstrap: `new-project -> plan -> execute -> verify`. The other public workflow surfaces are support lanes for milestone closeout, quick work, progress, pause/resume, and brownfield orientation.
|
|
102
102
|
|
|
103
|
-
Helper command for long-running sessions:
|
|
104
|
-
|
|
105
|
-
```
|
|
106
|
-
npx -y gsdd-cli control-map [--json] [--with-ignored] -> computed repo/worktree/planning state plus local annotations
|
|
107
|
-
npx -y gsdd-cli control-map annotate set|clear -> optional stale-aware local intent maintenance
|
|
108
|
-
npx -y gsdd-cli closeout-report [--json] [--phase <N>] -> read-only replay of closeout blockers, warnings, fixes, and next safe action
|
|
109
|
-
```
|
|
110
|
-
|
|
111
103
|
## Brownfield Entry Contract
|
|
112
104
|
|
|
113
105
|
Use the same three-way routing everywhere:
|
|
@@ -127,7 +119,7 @@ Use the same three-way routing everywhere:
|
|
|
127
119
|
| `audit-milestone.md` | Cross-phase integration audit, auth protection checks, requirement reconciliation, and orphan detection into `MILESTONE-AUDIT.md` |
|
|
128
120
|
| `complete-milestone.md` | Milestone archive, spec evolution, and roadmap collapse |
|
|
129
121
|
| `new-milestone.md` | Brownfield milestone continuation: goals, requirements, and roadmap phases |
|
|
130
|
-
| `plan
|
|
122
|
+
| `plan.md` amend/extend mode | Gap-closure phases from `MILESTONE-AUDIT.md`, verification gaps, tech debt, brownfield amendments, or incident docs |
|
|
131
123
|
| `quick.md` | Quick-work lane for sub-hour tasks outside the phase cycle |
|
|
132
124
|
| `pause.md` | Session checkpoint writer with conversational handoff |
|
|
133
125
|
| `resume.md` | Session context restorer with priority-ordered routing |
|
|
@@ -137,8 +129,8 @@ Use the same three-way routing everywhere:
|
|
|
137
129
|
|
|
138
130
|
Architecture notes:
|
|
139
131
|
- `bin/gsdd.mjs` remains the thin generator entrypoint, while vendor-specific rendering lives in adapter modules.
|
|
140
|
-
- Codex CLI uses the always-generated `.agents/skills/gsdd-*` surface as its entry path, relies on `.
|
|
141
|
-
-
|
|
132
|
+
- Codex CLI uses the always-generated `.agents/skills/gsdd-*` surface as its entry path, relies on `.work/bin/gsdd.mjs` for deterministic helper calls, and can add a native `.codex/agents/gsdd-plan-checker.toml` checker agent.
|
|
133
|
+
- Repo/worktree status helpers compute from git and local workflow state first; local annotations are intent hints only and cannot create ownership, cleanup, or lifecycle authority.
|
|
142
134
|
- Codex VS Code/app are separate surfaces from Codex CLI; do not claim the CLI proof for them unless they expose compatible skill discovery. Fallback is opening or pasting the generated `SKILL.md`.
|
|
143
135
|
- `npx -y gsdd-cli health` now compares any installed generated runtime surfaces against current render output and routes repairs back through `npx -y gsdd-cli update`.
|
|
144
136
|
- Portable lifecycle contracts now align to the roadmap template status grammar: `[ ]`, `[-]`, `[x]`.
|
|
@@ -162,7 +154,7 @@ Note: `parallelization: false` keeps the same mapper/researcher set but runs the
|
|
|
162
154
|
## What Gets Created (Project Output)
|
|
163
155
|
|
|
164
156
|
```
|
|
165
|
-
.
|
|
157
|
+
.work/
|
|
166
158
|
SPEC.md
|
|
167
159
|
ROADMAP.md
|
|
168
160
|
config.json
|
|
@@ -173,7 +165,6 @@ Note: `parallelization: false` keeps the same mapper/researcher set but runs the
|
|
|
173
165
|
gsdd-new-project/SKILL.md
|
|
174
166
|
gsdd-new-milestone/SKILL.md
|
|
175
167
|
gsdd-plan/SKILL.md
|
|
176
|
-
gsdd-plan-milestone-gaps/SKILL.md
|
|
177
168
|
gsdd-execute/SKILL.md
|
|
178
169
|
gsdd-verify/SKILL.md
|
|
179
170
|
gsdd-verify-work/SKILL.md
|
|
@@ -196,7 +187,7 @@ Note: `parallelization: false` keeps the same mapper/researcher set but runs the
|
|
|
196
187
|
gsdd-plan.md # OpenCode-native specialized planner -> checker command surface
|
|
197
188
|
.codex/agents/
|
|
198
189
|
gsdd-plan-checker.toml # Codex-native checker agent (read-only, high reasoning effort)
|
|
199
|
-
.
|
|
190
|
+
.work/
|
|
200
191
|
quick/ # quick task directories and LOG.md
|
|
201
192
|
.continue-here.md # session checkpoint (created by pause)
|
|
202
193
|
```
|
|
@@ -217,7 +208,6 @@ distilled/
|
|
|
217
208
|
new-milestone.md
|
|
218
209
|
pause.md
|
|
219
210
|
plan.md
|
|
220
|
-
plan-milestone-gaps.md
|
|
221
211
|
progress.md
|
|
222
212
|
quick.md
|
|
223
213
|
resume.md
|
|
@@ -227,8 +217,8 @@ distilled/
|
|
|
227
217
|
spec.md
|
|
228
218
|
roadmap.md
|
|
229
219
|
agents.md # full AGENTS.md template (for tool adapters)
|
|
230
|
-
agents.block.md #
|
|
231
|
-
delegates/ # delegate instruction files (copied to .
|
|
220
|
+
agents.block.md # managed payload for root AGENTS.md insertion
|
|
221
|
+
delegates/ # delegate instruction files (copied to .work/templates/delegates/)
|
|
232
222
|
mapper-tech.md
|
|
233
223
|
mapper-arch.md
|
|
234
224
|
mapper-quality.md
|
package/distilled/SKILL.md
CHANGED
|
@@ -31,13 +31,12 @@ Read only the file for the phase you are in:
|
|
|
31
31
|
- audit-milestone: `workflows/audit-milestone.md`
|
|
32
32
|
- complete-milestone: `workflows/complete-milestone.md`
|
|
33
33
|
- new-milestone: `workflows/new-milestone.md`
|
|
34
|
-
- plan-milestone-gaps: `workflows/plan-milestone-gaps.md`
|
|
35
34
|
- quick: `workflows/quick.md`
|
|
36
35
|
</workflow>
|
|
37
36
|
|
|
38
37
|
<governance>
|
|
39
38
|
Mandatory:
|
|
40
|
-
- Read before you write. If `.
|
|
39
|
+
- Read before you write. If `.work/` exists, read `.work/SPEC.md`, `.work/ROADMAP.md`, `.work/config.json`; use matching `.planning/` paths only in legacy workspaces.
|
|
41
40
|
- Stay in scope. Implement only what the current phase plan describes.
|
|
42
41
|
- Never hallucinate. Confirm paths and APIs from repo or docs before use.
|
|
43
42
|
- Research-first when unfamiliar. Log evidence, then plan.
|
|
@@ -45,10 +44,10 @@ Mandatory:
|
|
|
45
44
|
</governance>
|
|
46
45
|
|
|
47
46
|
<project_structure>
|
|
48
|
-
Workspine uses `.
|
|
47
|
+
Workspine uses `.work/` as the durable workspace. Legacy `.planning/` workspaces are still read and supported.
|
|
49
48
|
|
|
50
49
|
```
|
|
51
|
-
.
|
|
50
|
+
.work/
|
|
52
51
|
SPEC.md
|
|
53
52
|
ROADMAP.md
|
|
54
53
|
config.json
|
|
@@ -69,22 +68,22 @@ npx -y gsdd-cli init --tools agents
|
|
|
69
68
|
```
|
|
70
69
|
|
|
71
70
|
Behavior:
|
|
72
|
-
- Always: generates open-standard skills at `.agents/skills/gsdd-*/SKILL.md` by embedding `distilled/workflows/*.md`, plus repo-local deterministic helpers at `.planning/bin/gsdd.mjs
|
|
71
|
+
- Always: generates open-standard skills at `.agents/skills/gsdd-*/SKILL.md` by embedding `distilled/workflows/*.md`, plus repo-local deterministic helpers at `.work/bin/gsdd.mjs` (or `.planning/bin/gsdd.mjs` in legacy workspaces).
|
|
73
72
|
- Optional: generates tool adapters (root `AGENTS.md`, Claude `.claude/skills` + `.claude/commands` alias + `.claude/agents`, OpenCode `.opencode/commands` + `.opencode/agents`, Codex CLI `.codex/agents/gsdd-plan-checker.toml`).
|
|
74
73
|
- Codex CLI: uses the portable skill entry surface and the generated `.codex/agents/` checker/approach-explorer agents; it does not use `.codex/AGENTS.md` as the primary integration path.
|
|
75
74
|
- Root `AGENTS.md` is only written when explicitly requested (so we do not pollute existing user governance).
|
|
76
75
|
</adapters>
|
|
77
76
|
|
|
78
77
|
<templates>
|
|
79
|
-
Use templates from `.
|
|
78
|
+
Use templates from `.work/templates/` (copied from `distilled/templates/`) when producing planning artifacts; use `.planning/templates/` only in legacy workspaces.
|
|
80
79
|
|
|
81
80
|
Core:
|
|
82
|
-
- `.
|
|
83
|
-
- `.
|
|
81
|
+
- `.work/templates/spec.md` -> `.work/SPEC.md`
|
|
82
|
+
- `.work/templates/roadmap.md` -> `.work/ROADMAP.md`
|
|
84
83
|
|
|
85
84
|
Research:
|
|
86
|
-
- `.
|
|
85
|
+
- `.work/templates/research/*.md` -> `.work/research/*.md`
|
|
87
86
|
|
|
88
87
|
Brownfield codebase mapping:
|
|
89
|
-
- `.
|
|
88
|
+
- `.work/templates/codebase/*.md` -> `.work/codebase/*.md`
|
|
90
89
|
</templates>
|
|
@@ -5,17 +5,17 @@ Managed by `gsdd`; edit the framework template, not this block.
|
|
|
5
5
|
Lifecycle: `new-project -> plan -> execute -> verify -> audit-milestone`.
|
|
6
6
|
|
|
7
7
|
Core skills: `gsdd-new-project`, `gsdd-plan`, `gsdd-execute`, `gsdd-verify`, `gsdd-progress`.
|
|
8
|
-
Planning state: `.planning
|
|
8
|
+
Planning state: `.work/` (legacy `.planning/` workspaces are still read). Portable workflows: `.agents/skills/gsdd-*/SKILL.md`.
|
|
9
9
|
Install/repair: `npx -y gsdd-cli init` creates repo-local skills and planning state; `npx -y gsdd-cli health` verifies repo-local generated surfaces; `npx -y gsdd-cli update` repairs repo-local drift. Global personal skills use `npx -y gsdd-cli install --global` and are repaired by rerunning that install for the selected targets.
|
|
10
10
|
|
|
11
11
|
Invoke: `/gsdd-plan` (Claude, OpenCode; Cursor/Copilot/Gemini when skill discovery is available) · `$gsdd-plan` (Codex CLI, plan-only until `$gsdd-execute`) · open SKILL.md directly elsewhere.
|
|
12
12
|
|
|
13
13
|
Rules:
|
|
14
|
-
1. Read before writing roadmap work: `.
|
|
14
|
+
1. Read before writing roadmap work: `.work/SPEC.md`, `.work/ROADMAP.md`, `.work/config.json`, and the relevant phase plan when one exists; use matching `.planning/` paths only in legacy workspaces.
|
|
15
15
|
2. Stay in scope. Implement only what the approved plan or direct user request says. Record unrelated ideas as TODOs.
|
|
16
16
|
3. Verify before claiming done: artifact exists, content is substantive, and it is wired into the system.
|
|
17
17
|
4. Research unfamiliar domains from real docs and code; never hallucinate paths or APIs.
|
|
18
|
-
5. Do not pollute core workflows with vendor-specific syntax; workflow entry lives in `.agents/skills/`, helpers in `.
|
|
19
|
-
6. Git guidance in `.
|
|
18
|
+
5. Do not pollute core workflows with vendor-specific syntax; workflow entry lives in `.agents/skills/`, helpers in `.work/bin/`, and native adapters in their tool-specific directories.
|
|
19
|
+
6. Git guidance in `.work/config.json` -> `gitProtocol` is advisory; follow the repo's own conventions first.
|
|
20
20
|
|
|
21
|
-
If `.
|
|
21
|
+
If `.work/` is missing, run `npx -y gsdd-cli init` then `gsdd-new-project`; bare `gsdd init` is equivalent only when globally installed.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# Phase Approach Template
|
|
2
2
|
|
|
3
|
-
Template for `.
|
|
3
|
+
Template for `.work/phases/XX-name/{phase_num}-APPROACH.md` — captures implementation decisions and validated assumptions for a phase.
|
|
4
4
|
|
|
5
5
|
**Purpose:** Document decisions that downstream agents need. Planner uses this to know WHAT choices are locked vs flexible. Plan-checker verifies plans honor these decisions.
|
|
6
6
|
|
|
7
7
|
**Key principle:** The top-level structure (`<domain>`, `<decisions>`, `<assumptions>`, `<deferred>`) is fixed. Section names WITHIN `<decisions>` emerge from what was actually discussed for THIS phase — a CLI phase has CLI-relevant sections, a UI phase has UI-relevant sections.
|
|
8
8
|
|
|
9
|
-
**Alignment proof:** When `.
|
|
9
|
+
**Alignment proof:** When `.work/config.json` has `workflow.discuss: true`, every APPROACH artifact must include an `## Alignment Proof` section before `<domain>`. It must record the canonical fields `alignment_status`, `alignment_method`, `user_confirmed_at`, `explicit_skip_approved`, `skip_scope`, `skip_rationale`, and `confirmed_decisions`. `Agent's Discretion` and agent-only "No questions needed" are not valid proof.
|
|
10
10
|
|
|
11
11
|
**Downstream consumers:**
|
|
12
12
|
- `planner` — Reads decisions to constrain implementation choices. Locked decisions must be implemented. Agent's Discretion items allow planner flexibility.
|
|
@@ -266,7 +266,7 @@ Users can register and log in with email/password. Session management via JWT. O
|
|
|
266
266
|
The output should answer: "What choices are locked for the planner? Where does the planner have discretion?"
|
|
267
267
|
|
|
268
268
|
**After creation:**
|
|
269
|
-
- File lives in phase directory: `.
|
|
269
|
+
- File lives in phase directory: `.work/phases/XX-name/{phase_num}-APPROACH.md`
|
|
270
270
|
- Planner reads decisions to constrain implementation tasks
|
|
271
271
|
- Plan-checker verifies approach_alignment: plans must implement chosen approaches
|
|
272
272
|
- Downstream agents should NOT need to ask the user again about captured decisions
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Authorization Matrix Template
|
|
2
2
|
|
|
3
3
|
> OWASP-style authorization matrix for systematic auth verification.
|
|
4
|
-
> Create `.
|
|
4
|
+
> Create `.work/AUTH_MATRIX.md` using this template when your project has multiple user roles or protected resources.
|
|
5
5
|
|
|
6
6
|
## When to Create This Matrix
|
|
7
7
|
|
|
@@ -73,6 +73,6 @@ The narrative auth check (Step 4) always runs regardless of whether this matrix
|
|
|
73
73
|
|
|
74
74
|
## File Location
|
|
75
75
|
|
|
76
|
-
Save your project's authorization matrix as `.
|
|
76
|
+
Save your project's authorization matrix as `.work/AUTH_MATRIX.md`.
|
|
77
77
|
|
|
78
78
|
The integration checker will automatically detect and consume it when present. No configuration needed.
|
|
@@ -9,7 +9,7 @@ type: medium_scope_brownfield
|
|
|
9
9
|
> This folder is the bounded medium-scope lane.
|
|
10
10
|
> It represents one active medium-scope change only.
|
|
11
11
|
> Do not add phase numbering, roadmap checkboxes, or milestone state here.
|
|
12
|
-
> Instantiate the live operational artifact at `.
|
|
12
|
+
> Instantiate the live operational artifact at `.work/brownfield-change/CHANGE.md`.
|
|
13
13
|
> `progress` and `resume` read this file first for status, scope, integration surface, and the authoritative next action.
|
|
14
14
|
> If this lane no longer fits one active stream, widen explicitly through `/gsdd-new-project` (first milestone) or `/gsdd-new-milestone` (subsequent milestone) using this folder as the preserved input surface. Do not invent a separate promotion artifact.
|
|
15
15
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/approach-explorer.md` before starting. Follow its algorithm, scope, anti-patterns, and quality standards.
|
|
2
2
|
|
|
3
3
|
You are the approach explorer delegate for the plan workflow.
|
|
4
4
|
|
|
@@ -7,12 +7,12 @@ You are the approach explorer delegate for the plan workflow.
|
|
|
7
7
|
When `workflow.discuss: true`, APPROACH.md must prove user alignment before planning: use `alignment_status: user_confirmed` for real user-confirmed decisions or `alignment_status: approved_skip` only when the user explicitly approves skipping discussion. Record the canonical fields `alignment_method`, `user_confirmed_at`, `explicit_skip_approved`, `skip_scope`, `skip_rationale`, and `confirmed_decisions`. `Agent's Discretion` and agent-only "No questions needed" are not valid alignment proof.
|
|
8
8
|
|
|
9
9
|
Read only the explicit inputs provided by the orchestrator:
|
|
10
|
-
- target phase goal and requirement IDs from `.
|
|
11
|
-
- project config from `.
|
|
12
|
-
- locked decisions and deferred items from `.
|
|
10
|
+
- target phase goal and requirement IDs from `.work/ROADMAP.md`
|
|
11
|
+
- project config from `.work/config.json`, especially `workflow.discuss`
|
|
12
|
+
- locked decisions and deferred items from `.work/SPEC.md`
|
|
13
13
|
- phase research file (if exists)
|
|
14
14
|
- relevant codebase files (existing patterns and conventions)
|
|
15
|
-
- approach template at `.
|
|
15
|
+
- approach template at `.work/templates/approach.md`
|
|
16
16
|
|
|
17
17
|
## Gray Area Classification
|
|
18
18
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/mapper.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
Map the architecture and structure of this codebase. Read key source files to understand component boundaries, data flow, and patterns.
|
|
4
4
|
|
|
5
|
-
Write ARCHITECTURE.md to `.
|
|
5
|
+
Write ARCHITECTURE.md to `.work/codebase/` using the template at `.work/templates/codebase/architecture.md`.
|
|
6
6
|
|
|
7
7
|
Include:
|
|
8
8
|
- Major components and their responsibilities (what belongs in each, what doesn't)
|
|
@@ -21,6 +21,6 @@ Include:
|
|
|
21
21
|
- [ ] Golden files table populated with at least one file per major layer
|
|
22
22
|
</quality_gate>
|
|
23
23
|
|
|
24
|
-
Write to: `.
|
|
24
|
+
Write to: `.work/codebase/ARCHITECTURE.md`
|
|
25
25
|
Return: Routing summary to the Orchestrator (100-200 tokens) when done.
|
|
26
26
|
Guardrails: Max Agent Hops = 3. No static directory dumps.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/mapper.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
Map the technical debt, security concerns, and risks in this codebase.
|
|
4
4
|
|
|
5
|
-
**Security check first (hard stop):** Follow the Hard stop directive in `.
|
|
5
|
+
**Security check first (hard stop):** Follow the Hard stop directive in `.work/templates/roles/mapper.md` — grep for secrets before writing anything. If found: STOP and report to Orchestrator immediately.
|
|
6
6
|
|
|
7
|
-
If no secrets found, write CONCERNS.md to `.
|
|
7
|
+
If no secrets found, write CONCERNS.md to `.work/codebase/` using the template at `.work/templates/codebase/concerns.md`.
|
|
8
8
|
|
|
9
9
|
Include:
|
|
10
10
|
- Known bugs or fragile areas (with file references where possible)
|
|
@@ -22,6 +22,6 @@ Include:
|
|
|
22
22
|
- [ ] Downstream impact table ranks at least top 3 concerns with Blocks column populated
|
|
23
23
|
</quality_gate>
|
|
24
24
|
|
|
25
|
-
Write to: `.
|
|
25
|
+
Write to: `.work/codebase/CONCERNS.md`
|
|
26
26
|
Return: Routing summary to the Orchestrator (100-200 tokens) when done. If secrets found, STOP and report immediately.
|
|
27
27
|
Guardrails: Max Agent Hops = 3. Hard stop on secrets.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/mapper.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
Map the conventions and quality patterns of this codebase. Read existing tests, lint config, and code samples.
|
|
4
4
|
|
|
5
|
-
Write CONVENTIONS.md to `.
|
|
5
|
+
Write CONVENTIONS.md to `.work/codebase/` using the template at `.work/templates/codebase/conventions.md`.
|
|
6
6
|
|
|
7
7
|
Include:
|
|
8
8
|
- Naming patterns (files, functions, variables, exports)
|
|
@@ -23,6 +23,6 @@ Include:
|
|
|
23
23
|
- [ ] Golden files section lists at least 2 files with rationale
|
|
24
24
|
</quality_gate>
|
|
25
25
|
|
|
26
|
-
Write to: `.
|
|
26
|
+
Write to: `.work/codebase/CONVENTIONS.md`
|
|
27
27
|
Return: Routing summary to the Orchestrator (100-200 tokens) when done.
|
|
28
28
|
Guardrails: Max Agent Hops = 3. Rules not inventories.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/mapper.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
Map the technology stack of this codebase. Read package manifests, lockfiles, and entry points.
|
|
4
4
|
|
|
5
|
-
Write STACK.md to `.
|
|
5
|
+
Write STACK.md to `.work/codebase/` using the template at `.work/templates/codebase/stack.md`.
|
|
6
6
|
|
|
7
7
|
Include:
|
|
8
8
|
- Languages and runtimes (with versions)
|
|
@@ -20,6 +20,6 @@ Include:
|
|
|
20
20
|
- [ ] Must-know packages section identifies at least 3 packages with risk index (low/medium/high)
|
|
21
21
|
</quality_gate>
|
|
22
22
|
|
|
23
|
-
Write to: `.
|
|
23
|
+
Write to: `.work/codebase/STACK.md`
|
|
24
24
|
Return: Routing summary to the Orchestrator (100-200 tokens) when done.
|
|
25
25
|
Guardrails: Max Agent Hops = 3. No static dependency dumps.
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/planner.md` before starting. Reuse its planning vocabulary and quality standards, but this wrapper overrides your objective: you are reviewing plans, not authoring them.
|
|
2
2
|
|
|
3
3
|
You are the fresh-context plan checker for `/gsdd-plan`. This is a read-only review delegate: return the JSON finding summary only, and do not edit plan artifacts yourself.
|
|
4
4
|
|
|
5
5
|
Read only the explicit inputs provided by the orchestrator:
|
|
6
6
|
- target phase goal and requirement IDs
|
|
7
|
-
- relevant locked decisions or deferred items from `.
|
|
8
|
-
- project config from `.
|
|
9
|
-
- approach decisions from `.
|
|
7
|
+
- relevant locked decisions or deferred items from `.work/SPEC.md`
|
|
8
|
+
- project config from `.work/config.json`, especially `workflow.discuss` and `workflow.planCheck`
|
|
9
|
+
- approach decisions from `.work/phases/*-APPROACH.md` (if provided)
|
|
10
10
|
- any relevant phase research file
|
|
11
|
-
- the produced `.
|
|
11
|
+
- the produced `.work/phases/*-PLAN.md` file(s)
|
|
12
12
|
|
|
13
13
|
Do NOT inherit the planner's hidden reasoning. Treat the current plans as untrusted drafts that must prove they will achieve the phase goal before execution.
|
|
14
14
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/researcher.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
You are researching ONE dimension: how systems in this domain are typically structured.
|
|
4
4
|
|
|
@@ -24,7 +24,7 @@ Your output informs phase structure in ROADMAP.md. Include:
|
|
|
24
24
|
- [ ] Hard-to-reverse decisions flagged explicitly
|
|
25
25
|
</quality_gate>
|
|
26
26
|
|
|
27
|
-
Write to: `.
|
|
28
|
-
Use template: `.
|
|
27
|
+
Write to: `.work/research/ARCHITECTURE.md`
|
|
28
|
+
Use template: `.work/templates/research/architecture.md` (if it exists)
|
|
29
29
|
Return: Human-read structured summary to the Orchestrator (300-500 tokens) when done.
|
|
30
30
|
Guardrails: Max Agent Hops = 3.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/researcher.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
You are researching ONE dimension: what features exist in this domain.
|
|
4
4
|
|
|
@@ -24,7 +24,7 @@ Your output feeds SPEC requirements. Categorize explicitly:
|
|
|
24
24
|
- [ ] v1 vs v2 recommendation for differentiators
|
|
25
25
|
</quality_gate>
|
|
26
26
|
|
|
27
|
-
Write to: `.
|
|
28
|
-
Use template: `.
|
|
27
|
+
Write to: `.work/research/FEATURES.md`
|
|
28
|
+
Use template: `.work/templates/research/features.md` (if it exists)
|
|
29
29
|
Return: Human-read structured summary to the Orchestrator (300-500 tokens) when done.
|
|
30
30
|
Guardrails: Max Agent Hops = 3.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/researcher.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
You are researching ONE dimension: what goes wrong in projects in this domain.
|
|
4
4
|
|
|
@@ -24,7 +24,7 @@ Your output prevents mistakes in roadmap and planning. For each pitfall:
|
|
|
24
24
|
- [ ] Sources cited for non-obvious claims
|
|
25
25
|
</quality_gate>
|
|
26
26
|
|
|
27
|
-
Write to: `.
|
|
28
|
-
Use template: `.
|
|
27
|
+
Write to: `.work/research/PITFALLS.md`
|
|
28
|
+
Use template: `.work/templates/research/pitfalls.md` (if it exists)
|
|
29
29
|
Return: Human-read structured summary to the Orchestrator (300-500 tokens) when done.
|
|
30
30
|
Guardrails: Max Agent Hops = 3.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/researcher.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
You are researching ONE dimension: the technology stack for the project domain.
|
|
4
4
|
|
|
@@ -24,7 +24,7 @@ Your output feeds the roadmapper. Be prescriptive:
|
|
|
24
24
|
- [ ] Confidence level assigned to each recommendation
|
|
25
25
|
</quality_gate>
|
|
26
26
|
|
|
27
|
-
Write to: `.
|
|
28
|
-
Use template: `.
|
|
27
|
+
Write to: `.work/research/STACK.md`
|
|
28
|
+
Use template: `.work/templates/research/stack.md` (if it exists)
|
|
29
29
|
Return: Human-read structured summary to the Orchestrator (300-500 tokens) when done.
|
|
30
30
|
Guardrails: Max Agent Hops = 3.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
**Role contract:** Read `.
|
|
1
|
+
**Role contract:** Read `.work/templates/roles/synthesizer.md` before starting. Follow its algorithm, quality guarantees, and anti-patterns.
|
|
2
2
|
|
|
3
3
|
Synthesize the 4 research files into a single actionable SUMMARY.md.
|
|
4
4
|
|
|
5
5
|
Read these files (all should exist):
|
|
6
|
-
- `.
|
|
7
|
-
- `.
|
|
8
|
-
- `.
|
|
9
|
-
- `.
|
|
6
|
+
- `.work/research/STACK.md`
|
|
7
|
+
- `.work/research/FEATURES.md`
|
|
8
|
+
- `.work/research/ARCHITECTURE.md`
|
|
9
|
+
- `.work/research/PITFALLS.md`
|
|
10
10
|
|
|
11
11
|
Cross-reference them. Surface conflicts and dependencies between findings. Do NOT do new research — synthesize what exists.
|
|
12
12
|
|
|
@@ -17,7 +17,7 @@ SUMMARY.md MUST include:
|
|
|
17
17
|
4. **Confidence Assessment** — per domain: stack / features / architecture / pitfalls
|
|
18
18
|
5. **Sources** — all sources cited across the 4 research files, deduplicated
|
|
19
19
|
|
|
20
|
-
Use template: `.
|
|
20
|
+
Use template: `.work/templates/research/summary.md` (if it exists)
|
|
21
21
|
|
|
22
22
|
<quality_gate>
|
|
23
23
|
- [ ] "Implications for Roadmap" section populated with phase suggestions
|
|
@@ -26,6 +26,6 @@ Use template: `.planning/templates/research/summary.md` (if it exists)
|
|
|
26
26
|
- [ ] No new claims introduced (only synthesis)
|
|
27
27
|
</quality_gate>
|
|
28
28
|
|
|
29
|
-
Write to: `.
|
|
29
|
+
Write to: `.work/research/SUMMARY.md`
|
|
30
30
|
Return: Agent-mediated structured summary to the Orchestrator (500-800 tokens) when done.
|
|
31
31
|
Guardrails: Max Agent Hops = 2. Do not do new research — synthesize only.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ROADMAP.md Template
|
|
2
2
|
|
|
3
|
-
Use this template when creating `.
|
|
3
|
+
Use this template when creating `.work/ROADMAP.md` (phase breakdown + progress tracker).
|
|
4
4
|
|
|
5
5
|
```markdown
|
|
6
6
|
# Roadmap: [Project Name]
|
|
@@ -21,7 +21,7 @@ Use this template when creating `.planning/ROADMAP.md` (phase breakdown + progre
|
|
|
21
21
|
|
|
22
22
|
**Goal**: [What this phase delivers]
|
|
23
23
|
**Status**: [ ]
|
|
24
|
-
**Requirements**: [REQ-IDs from `.
|
|
24
|
+
**Requirements**: [REQ-IDs from `.work/SPEC.md`]
|
|
25
25
|
**Success Criteria** (must be TRUE when done):
|
|
26
26
|
1. [Observable behavior]
|
|
27
27
|
2. [Observable behavior]
|
|
@@ -53,7 +53,7 @@ Use this template when creating `.planning/ROADMAP.md` (phase breakdown + progre
|
|
|
53
53
|
## Guidelines
|
|
54
54
|
|
|
55
55
|
- Prefer 3-8 phases for most projects.
|
|
56
|
-
- Every v1 requirement in `.
|
|
56
|
+
- Every v1 requirement in `.work/SPEC.md` must map to exactly one phase (no orphans).
|
|
57
57
|
- Success criteria are 2-5 observable behaviors per phase.
|
|
58
58
|
- No time estimates: focus on verifiable outcomes.
|
|
59
59
|
- These status markers are the portable source of truth. Workflow files and summaries should use `[ ]`, `[-]`, and `[x]` consistently.
|
|
@@ -64,7 +64,7 @@ Use this template when creating `.planning/ROADMAP.md` (phase breakdown + progre
|
|
|
64
64
|
|
|
65
65
|
After creating the roadmap, verify:
|
|
66
66
|
```
|
|
67
|
-
For each v1 requirement in .
|
|
67
|
+
For each v1 requirement in .work/SPEC.md:
|
|
68
68
|
[ ] Requirement appears in exactly one phase's "Requirements" list
|
|
69
69
|
[ ] The phase's success criteria would prove the requirement is met
|
|
70
70
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# SPEC.md Template
|
|
2
2
|
|
|
3
|
-
Use this template when creating `.
|
|
3
|
+
Use this template when creating `.work/SPEC.md` - the project's single source of truth.
|
|
4
4
|
|
|
5
5
|
> **Agentic PRD Constraint:** Do not write narrative prose or fluff. Use strict checklists, dense tables, and typed schemas. There is no artificial line limit, but every single line must be highly deterministic and actionable for a downstream Subagent.
|
|
6
6
|
|
|
@@ -105,5 +105,5 @@ If auditing an existing codebase during `init`:
|
|
|
105
105
|
|
|
106
106
|
When a major milestone completes:
|
|
107
107
|
1. The SPEC.md "Current State" section reflects the new state
|
|
108
|
-
2. Completed phases have summaries in `.
|
|
108
|
+
2. Completed phases have summaries in `.work/phases/{N}-SUMMARY.md`
|
|
109
109
|
3. SPEC.md itself stays lean - don't accumulate history here
|