@pmelab/gtd 6.7.0 → 6.9.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 +47 -33
- package/dist/gtd.bundle.mjs +210 -89
- package/docs/cli.md +24 -21
- package/docs/configuration.md +92 -61
- package/docs/design/state-file-association.md +3 -3
- package/docs/design/state-machine-validation.md +2 -2
- package/docs/design/steering-file-loops.md +1 -1
- package/docs/design/work-packages.md +6 -7
- package/docs/development.md +5 -7
- package/docs/upgrading.md +25 -25
- package/package.json +1 -1
- package/docs/examples/advanced-workflow.md +0 -481
package/README.md
CHANGED
|
@@ -49,22 +49,28 @@ Or run without installing:
|
|
|
49
49
|
npx @pmelab/gtd
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
-
Then scaffold
|
|
52
|
+
Then scaffold the workflow for the repo — run once:
|
|
53
53
|
|
|
54
54
|
```bash
|
|
55
|
-
gtd init
|
|
55
|
+
gtd init
|
|
56
56
|
```
|
|
57
57
|
|
|
58
|
-
This writes a `.gtdrc.json` for the
|
|
59
|
-
prompt saved as an editable Markdown file under `gtd-prompts/` and
|
|
60
|
-
from the config (review and commit both). Edit a prompt by editing
|
|
61
|
-
`gtd-prompts/*.md` file — no config edit needed.
|
|
62
|
-
`
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
58
|
+
This writes a `.gtdrc.json` for the bundled unified workflow, with each agent
|
|
59
|
+
state's prompt saved as an editable Markdown file under `gtd-prompts/` and
|
|
60
|
+
referenced from the config (review and commit both). Edit a prompt by editing
|
|
61
|
+
its `gtd-prompts/*.md` file — no config edit needed. File references resolve
|
|
62
|
+
relative to **the `.gtdrc` that declares them**, so a config and its
|
|
63
|
+
`gtd-prompts/` can even live in a parent directory shared across repos while gtd
|
|
64
|
+
runs from each repo root — run `gtd init` from that parent directory (it need
|
|
65
|
+
not be a git repo) to scaffold it there (see
|
|
66
|
+
[Configuration](docs/configuration.md#content-values-inline-or-a-file-reference)).
|
|
67
|
+
It also seeds a top-level `modes:` block suggesting **Prettier** as the
|
|
68
|
+
steering-file formatter (`npx prettier --write` for the built-in `qa`/`review`
|
|
69
|
+
modes — format only, so gtd still validates); edit or drop it freely (swap in
|
|
70
|
+
dprint, a script, or delete the key). `gtd init` takes no argument. gtd ships
|
|
71
|
+
**no** default workflow: a state command run before `gtd init` fails, pointing
|
|
72
|
+
you back here. See [Configuration](docs/configuration.md#gtd-init) for the
|
|
73
|
+
template.
|
|
68
74
|
|
|
69
75
|
## How it works
|
|
70
76
|
|
|
@@ -95,27 +101,35 @@ never executes anything — the driver owns running scripts. See
|
|
|
95
101
|
[STATES.md](STATES.md) for the model and [Driving the loop](docs/loop.md) for
|
|
96
102
|
the full protocol.
|
|
97
103
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
104
|
+
The unified workflow has **two entry points into one shared tail**, chosen by
|
|
105
|
+
which steering file you create:
|
|
106
|
+
|
|
107
|
+
- Create **`.gtd/TODO.md`** with a short sketch to start the **simple** flow: an
|
|
108
|
+
agent develops your sketch into a plan — asking any open question it can't
|
|
109
|
+
settle itself via a deterministic `.gtd/TODO.md` format, validated before it
|
|
110
|
+
ever reaches you — you answer inline, then it builds the plan in one turn and
|
|
111
|
+
runs your tests (looping on failures).
|
|
112
|
+
- Create **`.gtd/REQUIREMENTS.md`** to start the **advanced** flow: two-phase
|
|
113
|
+
product then technical Q&A (`.gtd/REQUIREMENTS.md` → `.gtd/ARCHITECTURE.md`),
|
|
114
|
+
decomposition into work **packages** (each a set of independent tasks a single
|
|
115
|
+
build turn fans out to parallel subagents), a per-package test loop, and a
|
|
116
|
+
per-package **agentic review** that verifies the package against its spec.
|
|
117
|
+
|
|
118
|
+
Both flows converge on the same tail: an agent hands you a `.gtd/REVIEW.md`
|
|
119
|
+
checkbox review of the diff — tick a box to sign off an item, edit/untick for
|
|
120
|
+
feedback (which sends only the unaddressed items back to build and re-review
|
|
121
|
+
just those changes), and a full sign-off collapses the whole cycle into one
|
|
122
|
+
commit (a **squash finale** whose message an agent drafts). The same review tail
|
|
123
|
+
also has a direct entry point — `gtd review <commitish>` starts a brand new
|
|
124
|
+
process reviewing `<commitish>..HEAD` with no cycle of its own, e.g. a
|
|
125
|
+
colleague's PR branch. See
|
|
126
|
+
[STATES.md](STATES.md#10-the-bundled-workflow-template) for the full shape. The
|
|
127
|
+
workflow is just `.gtdrc` config — edit it or write your own (see
|
|
128
|
+
[Configuration](docs/configuration.md)). Every agent state routes its model
|
|
129
|
+
through two `vars` tiers — `plannerModel` (heavier planning and review) and
|
|
130
|
+
`coderModel` (the coding turns) — so you can repoint the models globally in one
|
|
131
|
+
place (a `vars:` edit or a `GTD_VAR_plannerModel` override) instead of per
|
|
132
|
+
state.
|
|
119
133
|
|
|
120
134
|
`gtd-loop`, installed alongside `gtd`, is a ready-to-run driver for the whole
|
|
121
135
|
protocol — point it at a repo and it runs the loop until it's your turn. It is
|