@ktpartners/dgs-platform 2.6.2
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 +38 -0
- package/README.md +851 -0
- package/agents/dgs-codebase-cross-analyzer.md +183 -0
- package/agents/dgs-codebase-mapper.md +782 -0
- package/agents/dgs-codebase-synthesizer.md +156 -0
- package/agents/dgs-debugger.md +1256 -0
- package/agents/dgs-executor.md +550 -0
- package/agents/dgs-integration-checker.md +481 -0
- package/agents/dgs-nyquist-auditor.md +178 -0
- package/agents/dgs-phase-researcher.md +563 -0
- package/agents/dgs-phase-verifier.md +450 -0
- package/agents/dgs-plan-checker.md +708 -0
- package/agents/dgs-planner.md +1324 -0
- package/agents/dgs-project-researcher.md +631 -0
- package/agents/dgs-research-synthesizer.md +249 -0
- package/agents/dgs-roadmapper.md +652 -0
- package/agents/dgs-verifier.md +607 -0
- package/bin/install.js +2073 -0
- package/commands/dgs/add-doc.md +45 -0
- package/commands/dgs/add-idea.md +38 -0
- package/commands/dgs/add-phase.md +43 -0
- package/commands/dgs/add-repo.md +54 -0
- package/commands/dgs/add-tests.md +41 -0
- package/commands/dgs/add-todo.md +47 -0
- package/commands/dgs/approve-spec.md +38 -0
- package/commands/dgs/audit-milestone.md +36 -0
- package/commands/dgs/audit-phase.md +37 -0
- package/commands/dgs/cancel-job.md +23 -0
- package/commands/dgs/capture-principle.md +143 -0
- package/commands/dgs/check-todos.md +45 -0
- package/commands/dgs/cleanup.md +18 -0
- package/commands/dgs/complete-milestone.md +136 -0
- package/commands/dgs/complete-project.md +70 -0
- package/commands/dgs/consolidate-ideas.md +50 -0
- package/commands/dgs/create-milestone-job.md +37 -0
- package/commands/dgs/debug.md +164 -0
- package/commands/dgs/develop-idea.md +53 -0
- package/commands/dgs/discuss-idea.md +41 -0
- package/commands/dgs/discuss-phase.md +83 -0
- package/commands/dgs/execute-phase.md +41 -0
- package/commands/dgs/fast.md +38 -0
- package/commands/dgs/find-related-ideas.md +43 -0
- package/commands/dgs/health.md +28 -0
- package/commands/dgs/help.md +22 -0
- package/commands/dgs/import-spec.md +36 -0
- package/commands/dgs/init-product.md +28 -0
- package/commands/dgs/insert-phase.md +32 -0
- package/commands/dgs/join-discord.md +18 -0
- package/commands/dgs/list-docs.md +40 -0
- package/commands/dgs/list-ideas.md +42 -0
- package/commands/dgs/list-jobs.md +22 -0
- package/commands/dgs/list-phase-assumptions.md +46 -0
- package/commands/dgs/list-projects.md +57 -0
- package/commands/dgs/list-specs.md +40 -0
- package/commands/dgs/map-codebase.md +92 -0
- package/commands/dgs/new-milestone.md +44 -0
- package/commands/dgs/new-project.md +42 -0
- package/commands/dgs/node-repair.md +26 -0
- package/commands/dgs/overlap-check.md +20 -0
- package/commands/dgs/pause-work.md +38 -0
- package/commands/dgs/plan-milestone-gaps.md +34 -0
- package/commands/dgs/plan-phase.md +44 -0
- package/commands/dgs/progress.md +24 -0
- package/commands/dgs/quick.md +41 -0
- package/commands/dgs/reactivate-project.md +70 -0
- package/commands/dgs/reapply-patches.md +110 -0
- package/commands/dgs/refine-spec.md +38 -0
- package/commands/dgs/reject-idea.md +43 -0
- package/commands/dgs/remove-doc.md +44 -0
- package/commands/dgs/remove-phase.md +31 -0
- package/commands/dgs/remove-repo.md +69 -0
- package/commands/dgs/research-idea.md +43 -0
- package/commands/dgs/research-phase.md +189 -0
- package/commands/dgs/restore-idea.md +45 -0
- package/commands/dgs/resume-work.md +40 -0
- package/commands/dgs/rollback-job.md +24 -0
- package/commands/dgs/run-job.md +35 -0
- package/commands/dgs/search.md +40 -0
- package/commands/dgs/set-profile.md +34 -0
- package/commands/dgs/settings.md +38 -0
- package/commands/dgs/switch-project.md +58 -0
- package/commands/dgs/undo-consolidation.md +42 -0
- package/commands/dgs/update-idea.md +44 -0
- package/commands/dgs/update.md +37 -0
- package/commands/dgs/validate-phase.md +35 -0
- package/commands/dgs/verify-work.md +39 -0
- package/commands/dgs/write-spec.md +49 -0
- package/deliver-great-systems/.planning/phases/09-backend-wiring-and-error-handling/09-01-SUMMARY.md +84 -0
- package/deliver-great-systems/.planning/phases/09-backend-wiring-and-error-handling/09-02-SUMMARY.md +86 -0
- package/deliver-great-systems/.planning/phases/10-v1-to-v2-migration-flow/10-01-SUMMARY.md +85 -0
- package/deliver-great-systems/bin/dgs-tools.cjs +1444 -0
- package/deliver-great-systems/bin/lib/auto-test.cjs +1365 -0
- package/deliver-great-systems/bin/lib/commands.cjs +570 -0
- package/deliver-great-systems/bin/lib/config.cjs +417 -0
- package/deliver-great-systems/bin/lib/conflict-agent.cjs +1063 -0
- package/deliver-great-systems/bin/lib/conflict-agent.test.cjs +554 -0
- package/deliver-great-systems/bin/lib/context.cjs +929 -0
- package/deliver-great-systems/bin/lib/context.test.cjs +693 -0
- package/deliver-great-systems/bin/lib/core.cjs +744 -0
- package/deliver-great-systems/bin/lib/core.test.cjs +822 -0
- package/deliver-great-systems/bin/lib/docs.cjs +919 -0
- package/deliver-great-systems/bin/lib/docs.test.cjs +211 -0
- package/deliver-great-systems/bin/lib/execution.cjs +705 -0
- package/deliver-great-systems/bin/lib/execution.test.cjs +1472 -0
- package/deliver-great-systems/bin/lib/frontmatter.cjs +324 -0
- package/deliver-great-systems/bin/lib/ideas.cjs +1406 -0
- package/deliver-great-systems/bin/lib/ideas.test.cjs +1417 -0
- package/deliver-great-systems/bin/lib/identity.cjs +125 -0
- package/deliver-great-systems/bin/lib/init.cjs +1114 -0
- package/deliver-great-systems/bin/lib/init.test.cjs +1271 -0
- package/deliver-great-systems/bin/lib/jobs.cjs +2015 -0
- package/deliver-great-systems/bin/lib/jobs.test.cjs +2619 -0
- package/deliver-great-systems/bin/lib/merge-conflicts.cjs +654 -0
- package/deliver-great-systems/bin/lib/merge-conflicts.test.cjs +370 -0
- package/deliver-great-systems/bin/lib/migration.cjs +352 -0
- package/deliver-great-systems/bin/lib/migration.test.cjs +582 -0
- package/deliver-great-systems/bin/lib/milestone.cjs +243 -0
- package/deliver-great-systems/bin/lib/overlap.cjs +437 -0
- package/deliver-great-systems/bin/lib/overlap.test.cjs +747 -0
- package/deliver-great-systems/bin/lib/path-audit.test.cjs +384 -0
- package/deliver-great-systems/bin/lib/paths.cjs +144 -0
- package/deliver-great-systems/bin/lib/paths.test.cjs +486 -0
- package/deliver-great-systems/bin/lib/phase.cjs +910 -0
- package/deliver-great-systems/bin/lib/projects.cjs +691 -0
- package/deliver-great-systems/bin/lib/projects.test.cjs +871 -0
- package/deliver-great-systems/bin/lib/repos.cjs +1432 -0
- package/deliver-great-systems/bin/lib/repos.test.cjs +1882 -0
- package/deliver-great-systems/bin/lib/roadmap.cjs +305 -0
- package/deliver-great-systems/bin/lib/search.cjs +570 -0
- package/deliver-great-systems/bin/lib/specs.cjs +1303 -0
- package/deliver-great-systems/bin/lib/state.cjs +893 -0
- package/deliver-great-systems/bin/lib/template.cjs +228 -0
- package/deliver-great-systems/bin/lib/test-helpers.cjs +291 -0
- package/deliver-great-systems/bin/lib/verify.cjs +796 -0
- package/deliver-great-systems/references/checkpoints.md +776 -0
- package/deliver-great-systems/references/conflict-resolution.md +66 -0
- package/deliver-great-systems/references/context-tiers.md +166 -0
- package/deliver-great-systems/references/continuation-format.md +249 -0
- package/deliver-great-systems/references/decimal-phase-calculation.md +67 -0
- package/deliver-great-systems/references/git-integration.md +250 -0
- package/deliver-great-systems/references/git-planning-commit.md +40 -0
- package/deliver-great-systems/references/model-profile-resolution.md +36 -0
- package/deliver-great-systems/references/model-profiles.md +95 -0
- package/deliver-great-systems/references/phase-argument-parsing.md +61 -0
- package/deliver-great-systems/references/planning-config.md +224 -0
- package/deliver-great-systems/references/questioning.md +162 -0
- package/deliver-great-systems/references/spec-review-loop.md +177 -0
- package/deliver-great-systems/references/tdd.md +265 -0
- package/deliver-great-systems/references/ui-brand.md +160 -0
- package/deliver-great-systems/references/verification-patterns.md +612 -0
- package/deliver-great-systems/templates/DEBUG.md +166 -0
- package/deliver-great-systems/templates/UAT.md +251 -0
- package/deliver-great-systems/templates/VALIDATION.md +95 -0
- package/deliver-great-systems/templates/claude-md.md +74 -0
- package/deliver-great-systems/templates/codebase/architecture.md +257 -0
- package/deliver-great-systems/templates/codebase/concerns.md +312 -0
- package/deliver-great-systems/templates/codebase/conventions.md +309 -0
- package/deliver-great-systems/templates/codebase/integrations.md +282 -0
- package/deliver-great-systems/templates/codebase/stack.md +188 -0
- package/deliver-great-systems/templates/codebase/structure.md +287 -0
- package/deliver-great-systems/templates/codebase/testing.md +482 -0
- package/deliver-great-systems/templates/config.json +38 -0
- package/deliver-great-systems/templates/context.md +354 -0
- package/deliver-great-systems/templates/continue-here.md +80 -0
- package/deliver-great-systems/templates/debug-subagent-prompt.md +93 -0
- package/deliver-great-systems/templates/discovery.md +148 -0
- package/deliver-great-systems/templates/milestone-archive.md +125 -0
- package/deliver-great-systems/templates/milestone.md +117 -0
- package/deliver-great-systems/templates/phase-prompt.md +615 -0
- package/deliver-great-systems/templates/planner-subagent-prompt.md +119 -0
- package/deliver-great-systems/templates/project.md +186 -0
- package/deliver-great-systems/templates/requirements.md +233 -0
- package/deliver-great-systems/templates/research-project/ARCHITECTURE.md +206 -0
- package/deliver-great-systems/templates/research-project/FEATURES.md +149 -0
- package/deliver-great-systems/templates/research-project/PITFALLS.md +202 -0
- package/deliver-great-systems/templates/research-project/STACK.md +122 -0
- package/deliver-great-systems/templates/research-project/SUMMARY.md +172 -0
- package/deliver-great-systems/templates/research.md +554 -0
- package/deliver-great-systems/templates/retrospective.md +54 -0
- package/deliver-great-systems/templates/roadmap.md +204 -0
- package/deliver-great-systems/templates/state.md +178 -0
- package/deliver-great-systems/templates/summary-complex.md +59 -0
- package/deliver-great-systems/templates/summary-minimal.md +41 -0
- package/deliver-great-systems/templates/summary-standard.md +48 -0
- package/deliver-great-systems/templates/summary.md +253 -0
- package/deliver-great-systems/templates/user-setup.md +313 -0
- package/deliver-great-systems/templates/verification-report.md +324 -0
- package/deliver-great-systems/workflows/add-doc.md +151 -0
- package/deliver-great-systems/workflows/add-idea.md +96 -0
- package/deliver-great-systems/workflows/add-phase.md +120 -0
- package/deliver-great-systems/workflows/add-tests.md +359 -0
- package/deliver-great-systems/workflows/add-todo.md +162 -0
- package/deliver-great-systems/workflows/approve-spec.md +194 -0
- package/deliver-great-systems/workflows/audit-milestone.md +364 -0
- package/deliver-great-systems/workflows/audit-phase.md +462 -0
- package/deliver-great-systems/workflows/cancel-job.md +108 -0
- package/deliver-great-systems/workflows/check-todos.md +181 -0
- package/deliver-great-systems/workflows/cleanup.md +247 -0
- package/deliver-great-systems/workflows/codereview.md +526 -0
- package/deliver-great-systems/workflows/complete-milestone.md +1298 -0
- package/deliver-great-systems/workflows/consolidate-ideas.md +365 -0
- package/deliver-great-systems/workflows/create-milestone-job.md +177 -0
- package/deliver-great-systems/workflows/develop-idea.md +544 -0
- package/deliver-great-systems/workflows/diagnose-issues.md +231 -0
- package/deliver-great-systems/workflows/discovery-phase.md +301 -0
- package/deliver-great-systems/workflows/discuss-idea.md +263 -0
- package/deliver-great-systems/workflows/discuss-phase.md +733 -0
- package/deliver-great-systems/workflows/execute-phase.md +571 -0
- package/deliver-great-systems/workflows/execute-plan.md +592 -0
- package/deliver-great-systems/workflows/find-related-ideas.md +271 -0
- package/deliver-great-systems/workflows/health.md +173 -0
- package/deliver-great-systems/workflows/help.md +997 -0
- package/deliver-great-systems/workflows/import-spec.md +381 -0
- package/deliver-great-systems/workflows/init-product.md +767 -0
- package/deliver-great-systems/workflows/insert-phase.md +138 -0
- package/deliver-great-systems/workflows/list-docs.md +119 -0
- package/deliver-great-systems/workflows/list-ideas.md +154 -0
- package/deliver-great-systems/workflows/list-jobs.md +89 -0
- package/deliver-great-systems/workflows/list-phase-assumptions.md +192 -0
- package/deliver-great-systems/workflows/list-specs.md +101 -0
- package/deliver-great-systems/workflows/map-codebase.md +621 -0
- package/deliver-great-systems/workflows/new-milestone.md +591 -0
- package/deliver-great-systems/workflows/new-project.md +1113 -0
- package/deliver-great-systems/workflows/node-repair.md +94 -0
- package/deliver-great-systems/workflows/overlap-check.md +86 -0
- package/deliver-great-systems/workflows/pause-work.md +134 -0
- package/deliver-great-systems/workflows/plan-milestone-gaps.md +306 -0
- package/deliver-great-systems/workflows/plan-phase.md +698 -0
- package/deliver-great-systems/workflows/progress.md +386 -0
- package/deliver-great-systems/workflows/quick.md +845 -0
- package/deliver-great-systems/workflows/refine-spec.md +275 -0
- package/deliver-great-systems/workflows/reject-idea.md +109 -0
- package/deliver-great-systems/workflows/remove-doc.md +117 -0
- package/deliver-great-systems/workflows/remove-phase.md +163 -0
- package/deliver-great-systems/workflows/research-idea.md +325 -0
- package/deliver-great-systems/workflows/research-phase.md +81 -0
- package/deliver-great-systems/workflows/restore-idea.md +101 -0
- package/deliver-great-systems/workflows/resume-project.md +311 -0
- package/deliver-great-systems/workflows/rollback-job.md +130 -0
- package/deliver-great-systems/workflows/run-job.md +498 -0
- package/deliver-great-systems/workflows/search.md +130 -0
- package/deliver-great-systems/workflows/set-profile.md +83 -0
- package/deliver-great-systems/workflows/settings.md +470 -0
- package/deliver-great-systems/workflows/transition.md +563 -0
- package/deliver-great-systems/workflows/undo-consolidation.md +155 -0
- package/deliver-great-systems/workflows/update-idea.md +157 -0
- package/deliver-great-systems/workflows/update.md +242 -0
- package/deliver-great-systems/workflows/validate-phase.md +177 -0
- package/deliver-great-systems/workflows/verify-phase.md +253 -0
- package/deliver-great-systems/workflows/verify-work.md +671 -0
- package/deliver-great-systems/workflows/write-spec.md +450 -0
- package/hooks/dist/dgs-check-update.js +62 -0
- package/hooks/dist/dgs-context-monitor.js +141 -0
- package/hooks/dist/dgs-statusline.js +115 -0
- package/package.json +60 -0
- package/scripts/build-hooks.js +43 -0
package/README.md
ADDED
|
@@ -0,0 +1,851 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
# DELIVER GREAT SYSTEMS
|
|
4
|
+
|
|
5
|
+
**A light-weight and powerful meta-prompting, context engineering and spec-driven development system for Claude Code, OpenCode, and Gemini CLI.**
|
|
6
|
+
|
|
7
|
+
**Solves context rot — the quality degradation that happens as Claude fills its context window.**
|
|
8
|
+
|
|
9
|
+
[](https://www.npmjs.com/package/@ktpartners/dgs-platform)
|
|
10
|
+
[](https://www.npmjs.com/package/@ktpartners/dgs-platform)
|
|
11
|
+
[](https://discord.gg/5JJgD5svVS)
|
|
12
|
+
[](https://github.com/TraceTasks/deliver-great-systems)
|
|
13
|
+
[](LICENSE)
|
|
14
|
+
|
|
15
|
+
<br>
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx @ktpartners/dgs-platform@latest
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
**Works on Mac, Windows, and Linux.**
|
|
22
|
+
|
|
23
|
+
<br>
|
|
24
|
+
|
|
25
|
+
[Why I Built This](#why-i-built-this) · [How It Works](#how-it-works) · [Commands](#commands) · [Why It Works](#why-it-works) · [User Guide](docs/USER-GUIDE.md)
|
|
26
|
+
|
|
27
|
+
</div>
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
> **DGS is a fork of [Get Shit Done](https://github.com/glittercowboy/get-shit-done)**
|
|
32
|
+
> by [@glittercowboy](https://github.com/glittercowboy). The original project provided
|
|
33
|
+
> the foundation for this tool. DGS extends it with multi-project and multi-repo support.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Why I Built This
|
|
38
|
+
|
|
39
|
+
[Get Shit Done (GSD)](https://github.com/glittercowboy/get-shit-done) proved that context engineering and subagent orchestration could make Claude Code genuinely reliable for building software. It's excellent work, and DGS is built directly on that foundation.
|
|
40
|
+
|
|
41
|
+
But GSD targets solo developers working on a single codebase. Real-world products often span multiple repositories, involve a small team coordinating across services, and need a structured pipeline from idea to specification before any code gets written. That's the gap DGS fills.
|
|
42
|
+
|
|
43
|
+
DGS extends GSD with:
|
|
44
|
+
|
|
45
|
+
- **Product-level management** — multiple projects and repositories under one planning structure
|
|
46
|
+
- **Ideas and specs pipeline** — capture ideas, develop them into formal PRDs, run cross-LLM review with OpenAI and Gemini before committing to a project
|
|
47
|
+
- **Multi-repo orchestration** — plans reference repos by name, execution resolves paths at runtime, branches stay scoped per project
|
|
48
|
+
|
|
49
|
+
The complexity stays in the system, not in your workflow. Behind the scenes: context engineering, XML prompt formatting, subagent orchestration, state management. What you see: a few commands that produce consistent, verified results.
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
Vibecoding has a bad reputation. You describe what you want, AI generates code, and you get inconsistent garbage that falls apart at scale.
|
|
54
|
+
|
|
55
|
+
DGS fixes that. It's the context engineering layer that makes Claude Code reliable. Describe your idea, let the system structure it properly, and let Claude Code get to work.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Who This Is For
|
|
60
|
+
|
|
61
|
+
Small teams and solo developers building real products — people who want to describe what they want and have it built correctly, without the overhead of enterprise process.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Getting Started
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
npx @ktpartners/dgs-platform@latest
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
The installer prompts you to choose:
|
|
72
|
+
1. **Runtime** — Claude Code, OpenCode, Gemini, or all
|
|
73
|
+
2. **Location** — Global (all projects) or local (current project only)
|
|
74
|
+
|
|
75
|
+
Verify with `/dgs:help` inside your chosen runtime.
|
|
76
|
+
|
|
77
|
+
> [!NOTE]
|
|
78
|
+
> The npm package is called `@ktpartners/dgs-platform`, but the installed directory is `deliver-great-systems/` (the project's original name). This is cosmetic — everything works the same regardless of the directory name.
|
|
79
|
+
|
|
80
|
+
### Multi-Repo Projects
|
|
81
|
+
|
|
82
|
+
DGS manages multiple repos from a single planning repo. Repos sit as siblings in the same parent directory:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
~/projects/
|
|
86
|
+
├── my-product/ <- planning repo (run DGS here)
|
|
87
|
+
│ └── .planning/
|
|
88
|
+
├── api-service/ <- source repo (sibling)
|
|
89
|
+
├── web-app/ <- source repo (sibling)
|
|
90
|
+
└── mobile-app/ <- source repo (sibling)
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Setup:
|
|
94
|
+
```bash
|
|
95
|
+
cd ~/projects
|
|
96
|
+
mkdir my-product && cd my-product
|
|
97
|
+
/dgs:init-product
|
|
98
|
+
/dgs:add-repo api-service # registers ../api-service
|
|
99
|
+
/dgs:add-repo web-app # registers ../web-app
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Repos are registered in `.planning/REPOS.md` with `../` paths. All DGS commands run from the planning repo. See the [User Guide](docs/USER-GUIDE.md#multi-repo-setup) for detailed multi-repo setup, REPOS.md format, and migration steps.
|
|
103
|
+
|
|
104
|
+
### Staying Updated
|
|
105
|
+
|
|
106
|
+
DGS evolves fast. Update periodically:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
npx @ktpartners/dgs-platform@latest
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
<details>
|
|
113
|
+
<summary><strong>Non-interactive Install (Docker, CI, Scripts)</strong></summary>
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
# Claude Code
|
|
117
|
+
npx @ktpartners/dgs-platform --claude --global # Install to ~/.claude/
|
|
118
|
+
npx @ktpartners/dgs-platform --claude --local # Install to ./.claude/
|
|
119
|
+
|
|
120
|
+
# OpenCode (open source, free models)
|
|
121
|
+
npx @ktpartners/dgs-platform --opencode --global # Install to ~/.config/opencode/
|
|
122
|
+
|
|
123
|
+
# Gemini CLI
|
|
124
|
+
npx @ktpartners/dgs-platform --gemini --global # Install to ~/.gemini/
|
|
125
|
+
|
|
126
|
+
# All runtimes
|
|
127
|
+
npx @ktpartners/dgs-platform --all --global # Install to all directories
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Use `--global` (`-g`) or `--local` (`-l`) to skip the location prompt.
|
|
131
|
+
Use `--claude`, `--opencode`, `--gemini`, or `--all` to skip the runtime prompt.
|
|
132
|
+
|
|
133
|
+
</details>
|
|
134
|
+
|
|
135
|
+
<details>
|
|
136
|
+
<summary><strong>Development Installation</strong></summary>
|
|
137
|
+
|
|
138
|
+
Clone the repository and run the installer locally:
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
git clone https://github.com/TraceTasks/deliver-great-systems.git
|
|
142
|
+
cd deliver-great-systems
|
|
143
|
+
node bin/install.js --claude --local
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
Installs to `./.claude/` for testing modifications before contributing.
|
|
147
|
+
|
|
148
|
+
</details>
|
|
149
|
+
|
|
150
|
+
### Recommended: Skip Permissions Mode
|
|
151
|
+
|
|
152
|
+
DGS is designed for frictionless automation. Run Claude Code with:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
claude --dangerously-skip-permissions
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
> [!TIP]
|
|
159
|
+
> This is how DGS is intended to be used — stopping to approve `date` and `git commit` 50 times defeats the purpose.
|
|
160
|
+
|
|
161
|
+
<details>
|
|
162
|
+
<summary><strong>Alternative: Granular Permissions</strong></summary>
|
|
163
|
+
|
|
164
|
+
If you prefer not to use that flag, add this to your project's `.claude/settings.json`:
|
|
165
|
+
|
|
166
|
+
```json
|
|
167
|
+
{
|
|
168
|
+
"permissions": {
|
|
169
|
+
"allow": [
|
|
170
|
+
"Bash(date:*)",
|
|
171
|
+
"Bash(echo:*)",
|
|
172
|
+
"Bash(cat:*)",
|
|
173
|
+
"Bash(ls:*)",
|
|
174
|
+
"Bash(mkdir:*)",
|
|
175
|
+
"Bash(wc:*)",
|
|
176
|
+
"Bash(head:*)",
|
|
177
|
+
"Bash(tail:*)",
|
|
178
|
+
"Bash(sort:*)",
|
|
179
|
+
"Bash(grep:*)",
|
|
180
|
+
"Bash(tr:*)",
|
|
181
|
+
"Bash(git add:*)",
|
|
182
|
+
"Bash(git commit:*)",
|
|
183
|
+
"Bash(git status:*)",
|
|
184
|
+
"Bash(git log:*)",
|
|
185
|
+
"Bash(git diff:*)",
|
|
186
|
+
"Bash(git tag:*)"
|
|
187
|
+
]
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
</details>
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## How It Works
|
|
197
|
+
|
|
198
|
+
DGS operates at the **product** level. A product contains one or more **projects**, each with its own milestones and phases. Ideas and specs live at the product level and feed into project or milestone creation.
|
|
199
|
+
|
|
200
|
+
> **Already have code?** Run `/dgs:map-codebase` first. It spawns parallel agents per registered repo to analyze stack, architecture, structure, conventions, testing, integrations, and concerns. Per-repo maps are synthesized into unified top-level files. Then `/dgs:new-project` knows your codebase — questions focus on what you're adding, and planning automatically loads your patterns. Update a single repo after changes with `/dgs:map-codebase <repo-name>`.
|
|
201
|
+
|
|
202
|
+
### 1. Set Up Product
|
|
203
|
+
|
|
204
|
+
```
|
|
205
|
+
/dgs:init-product
|
|
206
|
+
/dgs:add-repo api-service
|
|
207
|
+
/dgs:add-repo web-app
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
Creates the `.planning/` directory structure with `config.json`, `PROJECTS.md`, and `REPOS.md`. Register your source repos as siblings. This is a one-time setup — everything else builds on top of it.
|
|
211
|
+
|
|
212
|
+
> **Single-repo projects** work fine too. Skip `add-repo` and DGS operates on the current directory.
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
|
|
216
|
+
### 2. Capture Ideas & Write Specs
|
|
217
|
+
|
|
218
|
+
```
|
|
219
|
+
/dgs:add-idea
|
|
220
|
+
/dgs:discuss-idea # optional: refine through conversation
|
|
221
|
+
/dgs:research-idea # optional: investigate feasibility
|
|
222
|
+
/dgs:develop-idea # optional: discuss + research in one step
|
|
223
|
+
/dgs:write-spec
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
Ideas are lightweight captures — a title, a problem statement, optional tags. Add them whenever inspiration strikes.
|
|
227
|
+
|
|
228
|
+
Before writing a spec, you can develop ideas further. `/dgs:discuss-idea` walks you through a structured conversation to refine the problem and approach. `/dgs:research-idea` investigates feasibility and the technical landscape. `/dgs:develop-idea` does both in sequence. All three are optional — go straight to `/dgs:write-spec` if the idea is already clear.
|
|
229
|
+
|
|
230
|
+
When you're ready to formalize, `/dgs:write-spec` lets you select one or more ideas and generates a 9-section PRD.
|
|
231
|
+
|
|
232
|
+
If you have OpenAI or Gemini API keys configured, the spec goes through a **cross-LLM review loop** — external models review the draft and provide feedback until convergence. The finalized spec then feeds directly into `/dgs:new-project --auto @spec.md` or `/dgs:new-milestone --auto <spec-id>`.
|
|
233
|
+
|
|
234
|
+
> **Skip this step** if you already know what you're building. Go straight to `/dgs:new-project` and answer its questions directly.
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
238
|
+
### 3. Initialize Project
|
|
239
|
+
|
|
240
|
+
```
|
|
241
|
+
/dgs:new-project
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
One command, one flow. The system:
|
|
245
|
+
|
|
246
|
+
1. **Questions** — Asks until it understands your idea completely (goals, constraints, tech preferences, edge cases)
|
|
247
|
+
2. **Research** — Spawns parallel agents to investigate the domain (optional but recommended)
|
|
248
|
+
3. **Requirements** — Extracts what's v1, v2, and out of scope
|
|
249
|
+
4. **Roadmap** — Creates phases mapped to requirements
|
|
250
|
+
|
|
251
|
+
You approve the roadmap. Now you're ready to build.
|
|
252
|
+
|
|
253
|
+
**Creates:** `PROJECT.md`, `REQUIREMENTS.md`, `ROADMAP.md`, `STATE.md`, `.planning/research/`
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
### 4. Discuss Phase
|
|
258
|
+
|
|
259
|
+
```
|
|
260
|
+
/dgs:discuss-phase 1
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
**This is where you shape the implementation.**
|
|
264
|
+
|
|
265
|
+
Your roadmap has a sentence or two per phase. That's not enough context to build something the way *you* imagine it. This step captures your preferences before anything gets researched or planned.
|
|
266
|
+
|
|
267
|
+
The system analyzes the phase and identifies gray areas based on what's being built:
|
|
268
|
+
|
|
269
|
+
- **Visual features** → Layout, density, interactions, empty states
|
|
270
|
+
- **APIs/CLIs** → Response format, flags, error handling, verbosity
|
|
271
|
+
- **Content systems** → Structure, tone, depth, flow
|
|
272
|
+
- **Organization tasks** → Grouping criteria, naming, duplicates, exceptions
|
|
273
|
+
|
|
274
|
+
For each area you select, it asks until you're satisfied. The output — `CONTEXT.md` — feeds directly into the next two steps:
|
|
275
|
+
|
|
276
|
+
1. **Researcher reads it** — Knows what patterns to investigate ("user wants card layout" → research card component libraries)
|
|
277
|
+
2. **Planner reads it** — Knows what decisions are locked ("infinite scroll decided" → plan includes scroll handling)
|
|
278
|
+
|
|
279
|
+
The deeper you go here, the more the system builds what you actually want. Skip it and you get reasonable defaults. Use it and you get *your* vision.
|
|
280
|
+
|
|
281
|
+
**Creates:** `{phase_num}-CONTEXT.md`
|
|
282
|
+
|
|
283
|
+
---
|
|
284
|
+
|
|
285
|
+
### 5. Plan Phase
|
|
286
|
+
|
|
287
|
+
```
|
|
288
|
+
/dgs:plan-phase 1
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
The system:
|
|
292
|
+
|
|
293
|
+
1. **Researches** — Investigates how to implement this phase, guided by your CONTEXT.md decisions
|
|
294
|
+
2. **Plans** — Creates 2-3 atomic task plans with XML structure
|
|
295
|
+
3. **Verifies** — Checks plans against requirements, loops until they pass
|
|
296
|
+
|
|
297
|
+
Each plan is small enough to execute in a fresh context window. No degradation, no "I'll be more concise now."
|
|
298
|
+
|
|
299
|
+
**Creates:** `{phase_num}-RESEARCH.md`, `{phase_num}-{N}-PLAN.md`
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
### 6. Execute Phase
|
|
304
|
+
|
|
305
|
+
```
|
|
306
|
+
/dgs:execute-phase 1
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
The system:
|
|
310
|
+
|
|
311
|
+
1. **Runs plans in waves** — Parallel where possible, sequential when dependent
|
|
312
|
+
2. **Fresh context per plan** — 200k tokens purely for implementation, zero accumulated garbage
|
|
313
|
+
3. **Commits per task** — Every task gets its own atomic commit
|
|
314
|
+
4. **Verifies against goals** — Checks the codebase delivers what the phase promised
|
|
315
|
+
|
|
316
|
+
Walk away, come back to completed work with clean git history.
|
|
317
|
+
|
|
318
|
+
**How Wave Execution Works:**
|
|
319
|
+
|
|
320
|
+
Plans are grouped into "waves" based on dependencies. Within each wave, plans run in parallel. Waves run sequentially.
|
|
321
|
+
|
|
322
|
+
```
|
|
323
|
+
┌─────────────────────────────────────────────────────────────────────┐
|
|
324
|
+
│ PHASE EXECUTION │
|
|
325
|
+
├─────────────────────────────────────────────────────────────────────┤
|
|
326
|
+
│ │
|
|
327
|
+
│ WAVE 1 (parallel) WAVE 2 (parallel) WAVE 3 │
|
|
328
|
+
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
|
|
329
|
+
│ │ Plan 01 │ │ Plan 02 │ → │ Plan 03 │ │ Plan 04 │ → │ Plan 05 │ │
|
|
330
|
+
│ │ │ │ │ │ │ │ │ │ │ │
|
|
331
|
+
│ │ User │ │ Product │ │ Orders │ │ Cart │ │ Checkout│ │
|
|
332
|
+
│ │ Model │ │ Model │ │ API │ │ API │ │ UI │ │
|
|
333
|
+
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
|
|
334
|
+
│ │ │ ↑ ↑ ↑ │
|
|
335
|
+
│ └───────────┴──────────────┴───────────┘ │ │
|
|
336
|
+
│ Dependencies: Plan 03 needs Plan 01 │ │
|
|
337
|
+
│ Plan 04 needs Plan 02 │ │
|
|
338
|
+
│ Plan 05 needs Plans 03 + 04 │ │
|
|
339
|
+
│ │
|
|
340
|
+
└─────────────────────────────────────────────────────────────────────┘
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
**Why waves matter:**
|
|
344
|
+
- Independent plans → Same wave → Run in parallel
|
|
345
|
+
- Dependent plans → Later wave → Wait for dependencies
|
|
346
|
+
- File conflicts → Sequential plans or same plan
|
|
347
|
+
|
|
348
|
+
This is why "vertical slices" (Plan 01: User feature end-to-end) parallelize better than "horizontal layers" (Plan 01: All models, Plan 02: All APIs).
|
|
349
|
+
|
|
350
|
+
**Creates:** `{phase_num}-{N}-SUMMARY.md`, `{phase_num}-VERIFICATION.md`
|
|
351
|
+
|
|
352
|
+
---
|
|
353
|
+
|
|
354
|
+
### 7. Verify Work
|
|
355
|
+
|
|
356
|
+
```
|
|
357
|
+
/dgs:verify-work 1
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
**This is where you confirm it actually works.**
|
|
361
|
+
|
|
362
|
+
Automated verification checks that code exists and tests pass. But does the feature *work* the way you expected? This is your chance to use it.
|
|
363
|
+
|
|
364
|
+
The system:
|
|
365
|
+
|
|
366
|
+
1. **Extracts testable deliverables** — What you should be able to do now
|
|
367
|
+
2. **Walks you through one at a time** — "Can you log in with email?" Yes/no, or describe what's wrong
|
|
368
|
+
3. **Diagnoses failures automatically** — Spawns debug agents to find root causes
|
|
369
|
+
4. **Creates verified fix plans** — Ready for immediate re-execution
|
|
370
|
+
|
|
371
|
+
If everything passes, you move on. If something's broken, you don't manually debug — you just run `/dgs:execute-phase` again with the fix plans it created.
|
|
372
|
+
|
|
373
|
+
**Automated alternative:** Use `/dgs:audit-phase` instead of interactive UAT for programmatic verification. It runs your test suite, then structurally inspects deliverables against PLAN.md. Failures trigger automatic diagnosis and fix planning. Use `--rerun-failed` after gap closure to re-verify only previously-failed items. See the [User Guide](docs/USER-GUIDE.md#phase-audit) for details.
|
|
374
|
+
|
|
375
|
+
**Creates:** `{phase_num}-UAT.md`, fix plans if issues found
|
|
376
|
+
|
|
377
|
+
---
|
|
378
|
+
|
|
379
|
+
### 8. Repeat → Complete → Next Milestone
|
|
380
|
+
|
|
381
|
+
```
|
|
382
|
+
/dgs:discuss-phase 2
|
|
383
|
+
/dgs:plan-phase 2
|
|
384
|
+
/dgs:execute-phase 2
|
|
385
|
+
/dgs:verify-work 2
|
|
386
|
+
...
|
|
387
|
+
/dgs:complete-milestone
|
|
388
|
+
/dgs:new-milestone
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
Loop **discuss → plan → execute → verify** until milestone complete.
|
|
392
|
+
|
|
393
|
+
Each phase gets your input (discuss), proper research (plan), clean execution (execute), and human verification (verify). Context stays fresh. Quality stays high.
|
|
394
|
+
|
|
395
|
+
When all phases are done, `/dgs:complete-milestone` archives the milestone and tags the release.
|
|
396
|
+
|
|
397
|
+
**Automated alternative:** Instead of running each phase command manually, use `/dgs:create-milestone-job` to generate a build job and `/dgs:run-job` to execute the entire milestone pipeline automatically with subagent isolation per step. See the [User Guide](docs/USER-GUIDE.md#milestone-jobs) for details.
|
|
398
|
+
|
|
399
|
+
Then `/dgs:new-milestone` starts the next version — same flow as `new-project` but for your existing codebase. You describe what you want to build next, the system researches the domain, you scope requirements, and it creates a fresh roadmap. Each milestone is a clean cycle: define → build → ship.
|
|
400
|
+
|
|
401
|
+
---
|
|
402
|
+
|
|
403
|
+
### Quick Mode
|
|
404
|
+
|
|
405
|
+
```
|
|
406
|
+
/dgs:quick
|
|
407
|
+
```
|
|
408
|
+
|
|
409
|
+
**For ad-hoc tasks that don't need full planning.**
|
|
410
|
+
|
|
411
|
+
Quick mode gives you DGS guarantees (atomic commits, state tracking) with a faster path:
|
|
412
|
+
|
|
413
|
+
- **Same agents** — Planner + executor, same quality
|
|
414
|
+
- **Skips optional steps** — No research, no plan checker, no verifier
|
|
415
|
+
- **Separate tracking** — Lives in `.planning/quick/`, not phases
|
|
416
|
+
|
|
417
|
+
Use for: bug fixes, small features, config changes, one-off tasks.
|
|
418
|
+
|
|
419
|
+
```
|
|
420
|
+
/dgs:quick
|
|
421
|
+
> What do you want to do? "Add dark mode toggle to settings"
|
|
422
|
+
```
|
|
423
|
+
|
|
424
|
+
**Creates:** `.planning/quick/001-add-dark-mode-toggle/PLAN.md`, `SUMMARY.md`
|
|
425
|
+
|
|
426
|
+
#### Fast Mode
|
|
427
|
+
|
|
428
|
+
```
|
|
429
|
+
/dgs:fast <description>
|
|
430
|
+
```
|
|
431
|
+
|
|
432
|
+
**For changes that don't even need a planner.**
|
|
433
|
+
|
|
434
|
+
Fast mode is the lightest DGS command — no subagents, no planning directory, just an atomic commit:
|
|
435
|
+
|
|
436
|
+
- **No subagents** — orchestrator makes edits directly
|
|
437
|
+
- **Single commit** — infers conventional prefix (fix:/feat:/chore:/docs:)
|
|
438
|
+
- **Scope guard** — warns if you exceed 3 files or 30 lines
|
|
439
|
+
|
|
440
|
+
Use for: typo fixes, config tweaks, one-line changes.
|
|
441
|
+
|
|
442
|
+
```
|
|
443
|
+
/dgs:fast fix the typo in the error message
|
|
444
|
+
```
|
|
445
|
+
|
|
446
|
+
---
|
|
447
|
+
|
|
448
|
+
## Why It Works
|
|
449
|
+
|
|
450
|
+
### Context Engineering
|
|
451
|
+
|
|
452
|
+
Claude Code is incredibly powerful *if* you give it the context it needs. Most people don't.
|
|
453
|
+
|
|
454
|
+
DGS handles it for you:
|
|
455
|
+
|
|
456
|
+
| File | What it does |
|
|
457
|
+
|------|--------------|
|
|
458
|
+
| `PROJECTS.md` | Product-level project registry |
|
|
459
|
+
| `REPOS.md` | Multi-repo registry — paths to sibling repos |
|
|
460
|
+
| `ideas/` | Lightweight idea captures with tags and notes |
|
|
461
|
+
| `specs/` | Formalized PRDs from ideas (draft → review → final) |
|
|
462
|
+
| `PROJECT.md` | Project vision, always loaded |
|
|
463
|
+
| `REQUIREMENTS.md` | Scoped v1/v2 requirements with phase traceability |
|
|
464
|
+
| `ROADMAP.md` | Where you're going, what's done |
|
|
465
|
+
| `STATE.md` | Decisions, blockers, position — memory across sessions |
|
|
466
|
+
| `docs/product/` | Product-level documents (architecture, summary) — loaded as context by write-spec, plan-phase, new-project, new-milestone |
|
|
467
|
+
| `codebase/` | Per-repo maps + unified synthesis from `/dgs:map-codebase` |
|
|
468
|
+
| `research/` | Ecosystem knowledge (stack, features, architecture, pitfalls) |
|
|
469
|
+
| `PLAN.md` | Atomic task with XML structure, verification steps |
|
|
470
|
+
| `SUMMARY.md` | What happened, what changed, committed to history |
|
|
471
|
+
|
|
472
|
+
Size limits based on where Claude's quality degrades. Stay under, get consistent excellence.
|
|
473
|
+
|
|
474
|
+
### XML Prompt Formatting
|
|
475
|
+
|
|
476
|
+
Every plan is structured XML optimized for Claude:
|
|
477
|
+
|
|
478
|
+
```xml
|
|
479
|
+
<task type="auto">
|
|
480
|
+
<name>Create login endpoint</name>
|
|
481
|
+
<files>src/app/api/auth/login/route.ts</files>
|
|
482
|
+
<action>
|
|
483
|
+
Use jose for JWT (not jsonwebtoken - CommonJS issues).
|
|
484
|
+
Validate credentials against users table.
|
|
485
|
+
Return httpOnly cookie on success.
|
|
486
|
+
</action>
|
|
487
|
+
<verify>curl -X POST localhost:3000/api/auth/login returns 200 + Set-Cookie</verify>
|
|
488
|
+
<done>Valid credentials return cookie, invalid return 401</done>
|
|
489
|
+
</task>
|
|
490
|
+
```
|
|
491
|
+
|
|
492
|
+
Precise instructions. No guessing. Verification built in.
|
|
493
|
+
|
|
494
|
+
### Multi-Agent Orchestration
|
|
495
|
+
|
|
496
|
+
Every stage uses the same pattern: a thin orchestrator spawns specialized agents, collects results, and routes to the next step.
|
|
497
|
+
|
|
498
|
+
| Stage | Orchestrator does | Agents do |
|
|
499
|
+
|-------|------------------|-----------|
|
|
500
|
+
| Research | Coordinates, presents findings | 4 parallel researchers investigate stack, features, architecture, pitfalls |
|
|
501
|
+
| Planning | Validates, manages iteration | Planner creates plans, checker verifies, loop until pass |
|
|
502
|
+
| Execution | Groups into waves, tracks progress | Executors implement in parallel, each with fresh 200k context |
|
|
503
|
+
| Verification | Presents results, routes next | Verifier checks codebase against goals, debuggers diagnose failures |
|
|
504
|
+
|
|
505
|
+
The orchestrator never does heavy lifting. It spawns agents, waits, integrates results.
|
|
506
|
+
|
|
507
|
+
**The result:** You can run an entire phase — deep research, multiple plans created and verified, thousands of lines of code written across parallel executors, automated verification against goals — and your main context window stays at 30-40%. The work happens in fresh subagent contexts. Your session stays fast and responsive.
|
|
508
|
+
|
|
509
|
+
### Atomic Git Commits
|
|
510
|
+
|
|
511
|
+
Each task gets its own commit immediately after completion:
|
|
512
|
+
|
|
513
|
+
```bash
|
|
514
|
+
abc123f docs(08-02): complete user registration plan
|
|
515
|
+
def456g feat(08-02): add email confirmation flow
|
|
516
|
+
hij789k feat(08-02): implement password hashing
|
|
517
|
+
lmn012o feat(08-02): create registration endpoint
|
|
518
|
+
```
|
|
519
|
+
|
|
520
|
+
> [!NOTE]
|
|
521
|
+
> **Benefits:** Git bisect finds exact failing task. Each task independently revertable. Clear history for Claude in future sessions. Better observability in AI-automated workflow.
|
|
522
|
+
|
|
523
|
+
Every commit is surgical, traceable, and meaningful.
|
|
524
|
+
|
|
525
|
+
### Modular by Design
|
|
526
|
+
|
|
527
|
+
- Add phases to current milestone
|
|
528
|
+
- Insert urgent work between phases
|
|
529
|
+
- Complete milestones and start fresh
|
|
530
|
+
- Adjust plans without rebuilding everything
|
|
531
|
+
|
|
532
|
+
You're never locked in. The system adapts.
|
|
533
|
+
|
|
534
|
+
### Context Tiers
|
|
535
|
+
|
|
536
|
+
Every command loads only the project files it needs. DGS uses a 5-tier system to control this, preventing unnecessary context consumption while ensuring each command has the information it requires.
|
|
537
|
+
|
|
538
|
+
| Tier | Name | What it loads | Example commands |
|
|
539
|
+
|------|------|---------------|-----------------|
|
|
540
|
+
| 0 | none | No project files | `/dgs:help`, `/dgs:update` |
|
|
541
|
+
| 1 | lite | PROJECT.md, STATE.md, config | `/dgs:progress`, `/dgs:add-idea` |
|
|
542
|
+
| 2 | planning | + ROADMAP.md, REQUIREMENTS.md, REPOS.md, codebase docs | `/dgs:plan-phase`, `/dgs:write-spec` |
|
|
543
|
+
| 3 | execution | + Phase files (CONTEXT.md, PLANs, SUMMARYs) | `/dgs:execute-phase` |
|
|
544
|
+
| 4 | verification | + VERIFICATION.md, UAT artifacts | `/dgs:verify-work` |
|
|
545
|
+
|
|
546
|
+
Each tier includes all files from lower tiers. Tier 3 (execution) loads everything from Tier 2 (planning) plus phase-specific files. Commands also accept scope flags (`--phase`, `--idea`, `--spec`) to load additional scoped files when needed.
|
|
547
|
+
|
|
548
|
+
This keeps Tier 0 commands like `/dgs:help` instant (zero files loaded) while `/dgs:execute-phase` gets the full context it needs to implement correctly. No manual file management required.
|
|
549
|
+
|
|
550
|
+
See the [User Guide](docs/USER-GUIDE.md#context-tiers) for the complete command-to-tier mapping.
|
|
551
|
+
|
|
552
|
+
---
|
|
553
|
+
|
|
554
|
+
## Commands
|
|
555
|
+
|
|
556
|
+
### Core Workflow
|
|
557
|
+
|
|
558
|
+
| Command | What it does |
|
|
559
|
+
|---------|--------------|
|
|
560
|
+
| `/dgs:new-project [--auto]` | Full initialization: questions → research → requirements → roadmap |
|
|
561
|
+
| `/dgs:discuss-phase [N] [--auto]` | Capture implementation decisions before planning |
|
|
562
|
+
| `/dgs:plan-phase [N] [--auto]` | Research + plan + verify for a phase |
|
|
563
|
+
| `/dgs:execute-phase <N>` | Execute all plans in parallel waves, verify when complete |
|
|
564
|
+
| `/dgs:verify-work [N] [--auto]` | Validate features through interactive UAT (`--auto` for rubber-stamp pass) |
|
|
565
|
+
| `/dgs:audit-phase <phase> [--rerun-failed]` | Automated phase verification: test execution + structural inspection |
|
|
566
|
+
| `/dgs:audit-milestone` | Verify milestone achieved its definition of done |
|
|
567
|
+
| `/dgs:complete-milestone` | Archive milestone, tag release |
|
|
568
|
+
| `/dgs:new-milestone [name]` | Start next version: questions → research → requirements → roadmap |
|
|
569
|
+
|
|
570
|
+
### Navigation
|
|
571
|
+
|
|
572
|
+
| Command | What it does |
|
|
573
|
+
|---------|--------------|
|
|
574
|
+
| `/dgs:progress` | Where am I? What's next? |
|
|
575
|
+
| `/dgs:help` | Show all commands and usage guide |
|
|
576
|
+
| `/dgs:update` | Update DGS with changelog preview |
|
|
577
|
+
|
|
578
|
+
### Brownfield
|
|
579
|
+
|
|
580
|
+
| Command | What it does |
|
|
581
|
+
|---------|--------------|
|
|
582
|
+
| `/dgs:map-codebase [<repo-name>]` | Map registered repos, synthesize unified codebase docs |
|
|
583
|
+
|
|
584
|
+
### Phase Management
|
|
585
|
+
|
|
586
|
+
| Command | What it does |
|
|
587
|
+
|---------|--------------|
|
|
588
|
+
| `/dgs:add-phase` | Append phase to roadmap |
|
|
589
|
+
| `/dgs:insert-phase [N]` | Insert urgent work between phases |
|
|
590
|
+
| `/dgs:remove-phase [N]` | Remove future phase, renumber |
|
|
591
|
+
| `/dgs:list-phase-assumptions [N]` | See Claude's intended approach before planning |
|
|
592
|
+
| `/dgs:plan-milestone-gaps` | Create phases to close gaps from audit |
|
|
593
|
+
|
|
594
|
+
### Session
|
|
595
|
+
|
|
596
|
+
| Command | What it does |
|
|
597
|
+
|---------|--------------|
|
|
598
|
+
| `/dgs:pause-work` | Create handoff when stopping mid-phase |
|
|
599
|
+
| `/dgs:resume-work` | Restore from last session |
|
|
600
|
+
|
|
601
|
+
### Ideas & Specs
|
|
602
|
+
|
|
603
|
+
| Command | What it does |
|
|
604
|
+
|---------|--------------|
|
|
605
|
+
| `/dgs:add-idea [--auto]` | Capture a new idea (interactive or auto-extract from context) |
|
|
606
|
+
| `/dgs:list-ideas [--tag TAG]` | View ideas by state, optionally filtered by tag |
|
|
607
|
+
| `/dgs:discuss-idea [id]` | Develop and refine an idea through structured discussion |
|
|
608
|
+
| `/dgs:research-idea [id]` | Research an idea's feasibility and technical landscape |
|
|
609
|
+
| `/dgs:develop-idea [id]` | Combined discussion then research in one flow |
|
|
610
|
+
| `/dgs:update-idea <id> [--note "text"]` | Edit idea content or append a timestamped note |
|
|
611
|
+
| `/dgs:reject-idea <id>` | Move idea to rejected |
|
|
612
|
+
| `/dgs:restore-idea <id>` | Restore a rejected/done idea to pending |
|
|
613
|
+
| `/dgs:consolidate-ideas [id...] [--title "..."]` | Merge related pending ideas into a single AI-synthesised idea |
|
|
614
|
+
| `/dgs:find-related-ideas [id] [--threshold high\|medium\|low]` | Find ideas related to a selected idea with multi-signal scoring |
|
|
615
|
+
| `/dgs:undo-consolidation [id]` | Undo a consolidation: restore source ideas and remove the merged idea |
|
|
616
|
+
| `/dgs:write-spec [id...] [--auto]` | Draft PRD from ideas with optional cross-LLM review |
|
|
617
|
+
| `/dgs:import-spec <path> [--ideas <id...>]` | Import external document (PDF, markdown, image) as DGS spec |
|
|
618
|
+
| `/dgs:list-specs [--draft\|--final]` | View specs by status with version and implementation tracking |
|
|
619
|
+
| `/dgs:refine-spec <slug> [--section <N>]` | Refine a spec through conversational editing (increments version) |
|
|
620
|
+
| `/dgs:approve-spec <slug>` | Approve a draft spec after completeness validation |
|
|
621
|
+
|
|
622
|
+
### Documents & Search
|
|
623
|
+
|
|
624
|
+
| Command | What it does |
|
|
625
|
+
|---------|--------------|
|
|
626
|
+
| `/dgs:add-doc <file> [--scope ...]` | Attach supporting document to an idea, spec, or product. Product-scoped docs are loaded as context by spec writing and planning workflows |
|
|
627
|
+
| `/dgs:list-docs` | List all supporting documents by scope |
|
|
628
|
+
| `/dgs:remove-doc [--move]` | Remove or move a document between scopes |
|
|
629
|
+
| `/dgs:search <query> [--ideas-only\|--specs-only\|--docs-only]` | Search across ideas, specs, docs, and projects |
|
|
630
|
+
|
|
631
|
+
### Project Management
|
|
632
|
+
|
|
633
|
+
| Command | What it does |
|
|
634
|
+
|---------|--------------|
|
|
635
|
+
| `/dgs:init-product` | Initialize product-level planning structure |
|
|
636
|
+
| `/dgs:add-repo [name]` | Register a sibling source repo |
|
|
637
|
+
| `/dgs:remove-repo [name]` | Unregister a repo from REPOS.md |
|
|
638
|
+
| `/dgs:list-projects` | Show all projects with status and repos |
|
|
639
|
+
| `/dgs:switch-project [name]` | Switch active project context |
|
|
640
|
+
| `/dgs:complete-project` | Mark current project as completed |
|
|
641
|
+
| `/dgs:overlap-check` | Show repos touched by multiple active projects |
|
|
642
|
+
| `/dgs:health [--repair]` | Validate `.planning/` directory integrity, auto-repair with `--repair` |
|
|
643
|
+
|
|
644
|
+
### Utilities
|
|
645
|
+
|
|
646
|
+
| Command | What it does |
|
|
647
|
+
|---------|--------------|
|
|
648
|
+
| `/dgs:settings` | Configure model profile and workflow agents |
|
|
649
|
+
| `/dgs:set-profile <profile>` | Switch model profile (quality/balanced/budget) |
|
|
650
|
+
| `/dgs:add-todo [desc]` | Capture idea for later |
|
|
651
|
+
| `/dgs:check-todos [area]` | List pending todos, optionally filtered by area |
|
|
652
|
+
| `/dgs:cleanup` | Archive accumulated phase directories |
|
|
653
|
+
| `/dgs:debug [desc]` | Systematic debugging with persistent state |
|
|
654
|
+
| `/dgs:fast <desc> [--dry-run]` | Trivial edit with single atomic commit — no subagents |
|
|
655
|
+
| `/dgs:quick [--fast\|--full]` | Execute ad-hoc task with DGS guarantees (`--fast` skips subagents; `--full` adds plan-checking and verification) |
|
|
656
|
+
|
|
657
|
+
### Milestone Jobs
|
|
658
|
+
|
|
659
|
+
| Command | What it does |
|
|
660
|
+
|---------|--------------|
|
|
661
|
+
| `/dgs:create-milestone-job [version] [--no-check]` | Generate a milestone build job from the current roadmap |
|
|
662
|
+
| `/dgs:run-job <version> [--dry-run]` | Execute a milestone build job end-to-end with subagent isolation |
|
|
663
|
+
| `/dgs:list-jobs` | List all milestone jobs grouped by status with progress |
|
|
664
|
+
| `/dgs:cancel-job <version>` | Cancel an in-progress job, reset to pending |
|
|
665
|
+
| `/dgs:rollback-job <version>` | Roll back all code changes from a job to pre-job state |
|
|
666
|
+
|
|
667
|
+
---
|
|
668
|
+
|
|
669
|
+
## Configuration
|
|
670
|
+
|
|
671
|
+
DGS stores product-level settings in `.planning/config.json`. This file is shared across all projects in the product. Configure during `/dgs:init-product` or `/dgs:new-project`, and update later with `/dgs:settings`. For the full config schema, workflow toggles, git branching options, and per-agent model breakdown, see the [User Guide](docs/USER-GUIDE.md#configuration-reference).
|
|
672
|
+
|
|
673
|
+
### Core Settings
|
|
674
|
+
|
|
675
|
+
| Setting | Options | Default | What it controls |
|
|
676
|
+
|---------|---------|---------|------------------|
|
|
677
|
+
| `mode` | `yolo`, `interactive` | `interactive` | Auto-approve vs confirm at each step |
|
|
678
|
+
| `depth` | `quick`, `standard`, `comprehensive` | `standard` | Planning thoroughness (phases × plans) |
|
|
679
|
+
|
|
680
|
+
### Model Profiles
|
|
681
|
+
|
|
682
|
+
Control which Claude model each agent uses. Balance quality vs token spend.
|
|
683
|
+
|
|
684
|
+
| Profile | Planning | Execution | Verification |
|
|
685
|
+
|---------|----------|-----------|--------------|
|
|
686
|
+
| `quality` | Opus | Opus | Sonnet |
|
|
687
|
+
| `balanced` (default) | Opus | Sonnet | Sonnet |
|
|
688
|
+
| `budget` | Sonnet | Sonnet | Haiku |
|
|
689
|
+
|
|
690
|
+
Switch profiles:
|
|
691
|
+
```
|
|
692
|
+
/dgs:set-profile budget
|
|
693
|
+
```
|
|
694
|
+
|
|
695
|
+
Or configure via `/dgs:settings`.
|
|
696
|
+
|
|
697
|
+
### Workflow Agents
|
|
698
|
+
|
|
699
|
+
These spawn additional agents during planning/execution. They improve quality but add tokens and time.
|
|
700
|
+
|
|
701
|
+
| Setting | Default | What it does |
|
|
702
|
+
|---------|---------|--------------|
|
|
703
|
+
| `workflow.research` | `true` | Researches domain before planning each phase |
|
|
704
|
+
| `workflow.plan_check` | `true` | Verifies plans achieve phase goals before execution |
|
|
705
|
+
| `workflow.verifier` | `true` | Confirms must-haves were delivered after execution |
|
|
706
|
+
| `workflow.auto_advance` | `false` | Auto-chain discuss → plan → execute without stopping |
|
|
707
|
+
| `workflow.codereview` | `false` | 3-pass, 9-agent code review after each plan execution |
|
|
708
|
+
|
|
709
|
+
Use `/dgs:settings` to toggle these, or override per-invocation:
|
|
710
|
+
- `/dgs:plan-phase --skip-research`
|
|
711
|
+
- `/dgs:plan-phase --skip-verify`
|
|
712
|
+
|
|
713
|
+
### Execution
|
|
714
|
+
|
|
715
|
+
| Setting | Default | What it controls |
|
|
716
|
+
|---------|---------|------------------|
|
|
717
|
+
| `parallelization.enabled` | `true` | Run independent plans simultaneously |
|
|
718
|
+
| `planning.commit_docs` | `true` | Track `.planning/` in git |
|
|
719
|
+
|
|
720
|
+
### Git Branching
|
|
721
|
+
|
|
722
|
+
Control how DGS handles branches during execution.
|
|
723
|
+
|
|
724
|
+
| Setting | Options | Default | What it does |
|
|
725
|
+
|---------|---------|---------|--------------|
|
|
726
|
+
| `git.branching_strategy` | `none`, `phase`, `milestone` | `none` | Branch creation strategy |
|
|
727
|
+
| `git.base_branch` | string | `main` | Integration target branch for merges |
|
|
728
|
+
| `git.phase_branch_template` | string | `dgs/{project}/phase-{phase}-{slug}` | Template for phase branches |
|
|
729
|
+
| `git.milestone_branch_template` | string | `dgs/{project}/{milestone}-{slug}` | Template for milestone branches |
|
|
730
|
+
|
|
731
|
+
**Strategies:**
|
|
732
|
+
- **`none`** — Commits to current branch (default DGS behavior)
|
|
733
|
+
- **`phase`** — Creates a branch per phase, merges at milestone completion
|
|
734
|
+
- **`milestone`** — Creates one branch for entire milestone, merges at completion
|
|
735
|
+
|
|
736
|
+
**Template variables:** `{phase}` = zero-padded number, `{slug}` = phase name, `{milestone}` = version, `{project}` = project slug (prevents branch collisions in multi-project setups).
|
|
737
|
+
|
|
738
|
+
**Base branch:** Set `git.base_branch` to your integration target (e.g., `develop`, `staging`). All branch creation and merge operations use this instead of `main`.
|
|
739
|
+
|
|
740
|
+
**Conflict resolution:** When merges produce conflicts during `/dgs:complete-milestone`, DGS automatically classifies each conflict (ADDITIVE, DIVERGENT, STRUCTURAL, DELETION), resolves high-confidence conflicts, and escalates low-confidence ones to you with context and a proposed resolution. See the [User Guide](docs/USER-GUIDE.md#conflict-resolution) for details.
|
|
741
|
+
|
|
742
|
+
---
|
|
743
|
+
|
|
744
|
+
## Security
|
|
745
|
+
|
|
746
|
+
### Protecting Sensitive Files
|
|
747
|
+
|
|
748
|
+
DGS's codebase mapping and analysis commands read files to understand your project. **Protect files containing secrets** by adding them to Claude Code's deny list:
|
|
749
|
+
|
|
750
|
+
1. Open Claude Code settings (`.claude/settings.json` or global)
|
|
751
|
+
2. Add sensitive file patterns to the deny list:
|
|
752
|
+
|
|
753
|
+
```json
|
|
754
|
+
{
|
|
755
|
+
"permissions": {
|
|
756
|
+
"deny": [
|
|
757
|
+
"Read(.env)",
|
|
758
|
+
"Read(.env.*)",
|
|
759
|
+
"Read(**/secrets/*)",
|
|
760
|
+
"Read(**/*credential*)",
|
|
761
|
+
"Read(**/*.pem)",
|
|
762
|
+
"Read(**/*.key)"
|
|
763
|
+
]
|
|
764
|
+
}
|
|
765
|
+
}
|
|
766
|
+
```
|
|
767
|
+
|
|
768
|
+
This prevents Claude from reading these files entirely, regardless of what commands you run.
|
|
769
|
+
|
|
770
|
+
> [!IMPORTANT]
|
|
771
|
+
> DGS includes built-in protections against committing secrets, but defense-in-depth is best practice. Deny read access to sensitive files as a first line of defense.
|
|
772
|
+
|
|
773
|
+
---
|
|
774
|
+
|
|
775
|
+
## Troubleshooting
|
|
776
|
+
|
|
777
|
+
**Commands not found after install?**
|
|
778
|
+
- Restart Claude Code to reload slash commands
|
|
779
|
+
- Verify files exist in `~/.claude/commands/dgs/` (global) or `./.claude/commands/dgs/` (local)
|
|
780
|
+
|
|
781
|
+
**Commands not working as expected?**
|
|
782
|
+
- Run `/dgs:help` to verify installation
|
|
783
|
+
- Re-run `npx @ktpartners/dgs-platform` to reinstall
|
|
784
|
+
|
|
785
|
+
**Updating to the latest version?**
|
|
786
|
+
```bash
|
|
787
|
+
npx @ktpartners/dgs-platform@latest
|
|
788
|
+
```
|
|
789
|
+
|
|
790
|
+
**Using Docker or containerized environments?**
|
|
791
|
+
|
|
792
|
+
If file reads fail with tilde paths (`~/.claude/...`), set `CLAUDE_CONFIG_DIR` before installing:
|
|
793
|
+
```bash
|
|
794
|
+
CLAUDE_CONFIG_DIR=/home/youruser/.claude npx @ktpartners/dgs-platform --global
|
|
795
|
+
```
|
|
796
|
+
This ensures absolute paths are used instead of `~` which may not expand correctly in containers.
|
|
797
|
+
|
|
798
|
+
### Uninstalling
|
|
799
|
+
|
|
800
|
+
To remove DGS completely:
|
|
801
|
+
|
|
802
|
+
```bash
|
|
803
|
+
# Global installs
|
|
804
|
+
npx @ktpartners/dgs-platform --claude --global --uninstall
|
|
805
|
+
npx @ktpartners/dgs-platform --opencode --global --uninstall
|
|
806
|
+
|
|
807
|
+
# Local installs (current project)
|
|
808
|
+
npx @ktpartners/dgs-platform --claude --local --uninstall
|
|
809
|
+
npx @ktpartners/dgs-platform --opencode --local --uninstall
|
|
810
|
+
```
|
|
811
|
+
|
|
812
|
+
This removes all DGS commands, agents, hooks, and settings while preserving your other configurations.
|
|
813
|
+
|
|
814
|
+
---
|
|
815
|
+
|
|
816
|
+
## Community Ports
|
|
817
|
+
|
|
818
|
+
OpenCode and Gemini CLI are now natively supported via `npx @ktpartners/dgs-platform`.
|
|
819
|
+
|
|
820
|
+
These community ports pioneered multi-runtime support for the original GSD project:
|
|
821
|
+
|
|
822
|
+
| Project | Platform | Description |
|
|
823
|
+
|---------|----------|-------------|
|
|
824
|
+
| [gsd-opencode](https://github.com/rokicool/gsd-opencode) | OpenCode | Original GSD OpenCode adaptation |
|
|
825
|
+
| gsd-gemini (archived) | Gemini CLI | Original GSD Gemini adaptation by uberfuzzy |
|
|
826
|
+
|
|
827
|
+
---
|
|
828
|
+
|
|
829
|
+
## Star History
|
|
830
|
+
|
|
831
|
+
<a href="https://star-history.com/#glittercowboy/get-shit-done&Date">
|
|
832
|
+
<picture>
|
|
833
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=glittercowboy/get-shit-done&type=Date&theme=dark" />
|
|
834
|
+
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=glittercowboy/get-shit-done&type=Date" />
|
|
835
|
+
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=glittercowboy/get-shit-done&type=Date" />
|
|
836
|
+
</picture>
|
|
837
|
+
</a>
|
|
838
|
+
|
|
839
|
+
---
|
|
840
|
+
|
|
841
|
+
## License
|
|
842
|
+
|
|
843
|
+
MIT License. See [LICENSE](LICENSE) for details.
|
|
844
|
+
|
|
845
|
+
---
|
|
846
|
+
|
|
847
|
+
<div align="center">
|
|
848
|
+
|
|
849
|
+
**Claude Code is powerful. DGS makes it reliable.**
|
|
850
|
+
|
|
851
|
+
</div>
|