gsd-codex-cli 1.20.10 → 1.20.11
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/.codex/prompts/gsd-add-phase.md +1 -1
- package/.codex/prompts/gsd-add-todo.md +1 -1
- package/.codex/prompts/gsd-audit-milestone.md +1 -1
- package/.codex/prompts/gsd-check-todos.md +1 -1
- package/.codex/prompts/gsd-complete-milestone.md +1 -1
- package/.codex/prompts/gsd-debug.md +1 -1
- package/.codex/prompts/gsd-discuss-phase.md +1 -1
- package/.codex/prompts/gsd-doctor.md +20 -20
- package/.codex/prompts/gsd-execute-phase.md +1 -1
- package/.codex/prompts/gsd-help.md +1 -1
- package/.codex/prompts/gsd-insert-phase.md +1 -1
- package/.codex/prompts/gsd-list-phase-assumptions.md +1 -1
- package/.codex/prompts/gsd-map-codebase.md +1 -1
- package/.codex/prompts/gsd-new-milestone.md +16 -7
- package/.codex/prompts/gsd-new-project.md +1 -1
- package/.codex/prompts/gsd-pause-work.md +1 -1
- package/.codex/prompts/gsd-plan-milestone-gaps.md +1 -1
- package/.codex/prompts/gsd-plan-phase.md +1 -1
- package/.codex/prompts/gsd-progress.md +1 -1
- package/.codex/prompts/gsd-quick.md +1 -1
- package/.codex/prompts/gsd-remove-phase.md +1 -1
- package/.codex/prompts/gsd-research-phase.md +1 -1
- package/.codex/prompts/gsd-resume-work.md +1 -1
- package/.codex/prompts/gsd-set-profile.md +1 -1
- package/.codex/prompts/gsd-settings.md +1 -1
- package/.codex/prompts/gsd-update.md +2 -2
- package/.codex/prompts/gsd-verify-work.md +1 -1
- package/.codex/skills/get-shit-done-codex/SKILL.md +15 -15
- package/README.md +4 -4
- package/bin/install-codex.js +33 -33
- package/commands/gsd/new-milestone.md +4 -1
- package/get-shit-done/workflows/new-milestone.md +13 -3
- package/package.json +1 -1
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -49,5 +49,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
49
49
|
|
|
50
50
|
## Completion output
|
|
51
51
|
- Summarize key artifacts created/updated.
|
|
52
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
52
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
53
53
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command:
|
|
49
|
+
- Next recommended command: `/prompts:gsd-plan-phase [phase]` (Codex) / `/gsd:plan-phase [phase]` (Claude)
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Diagnose Codex+Claude GSD installation (engine, prompts, versions)
|
|
3
|
-
argument-hint: [none]
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
$ARGUMENTS
|
|
7
|
-
|
|
8
|
-
## Objective
|
|
9
|
-
Diagnose whether this project is set up to run GSD prompts in Codex while remaining compatible with Claude workflows on the same `.planning/` milestone/phases.
|
|
1
|
+
---
|
|
2
|
+
description: Diagnose Codex+Claude GSD installation (engine, prompts, versions)
|
|
3
|
+
argument-hint: [none]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
$ARGUMENTS
|
|
7
|
+
|
|
8
|
+
## Objective
|
|
9
|
+
Diagnose whether this project is set up to run GSD prompts in Codex while remaining compatible with Claude workflows on the same `.planning/` milestone/phases.
|
|
10
10
|
|
|
11
11
|
## Compatibility
|
|
12
12
|
- Use .codex/skills/get-shit-done-codex semantics.
|
|
@@ -28,22 +28,22 @@ Run these checks and then present a compact table: `check | status | details | f
|
|
|
28
28
|
- `.claude/get-shit-done/bin/gsd-tools.cjs` OR `.claude/get-shit-done/bin/gsd-tools.js`
|
|
29
29
|
- If only `gsd-tools.test.js` exists, treat engine as missing/incomplete.
|
|
30
30
|
|
|
31
|
-
### Project state
|
|
32
|
-
- `.planning/` exists (if missing, user hasn’t initialized a project).
|
|
33
|
-
|
|
34
|
-
## Update check
|
|
35
|
-
- Best-effort only; do not fail if offline.
|
|
36
|
-
### Update availability (best-effort)
|
|
37
|
-
- Latest Codex fork version (do not fail if offline):
|
|
38
|
-
- `npm view gsd-codex-cli version`
|
|
39
|
-
- If installed Codex fork version is known and differs from latest, surface:
|
|
31
|
+
### Project state
|
|
32
|
+
- `.planning/` exists (if missing, user hasn’t initialized a project).
|
|
33
|
+
|
|
34
|
+
## Update check
|
|
35
|
+
- Best-effort only; do not fail if offline.
|
|
36
|
+
### Update availability (best-effort)
|
|
37
|
+
- Latest Codex fork version (do not fail if offline):
|
|
38
|
+
- `npm view gsd-codex-cli version`
|
|
39
|
+
- If installed Codex fork version is known and differs from latest, surface:
|
|
40
40
|
- `Update available: {installed} -> {latest}`
|
|
41
|
-
- Next:
|
|
41
|
+
- Next: `/prompts:gsd-update` (Codex) / `/gsd:update` (Claude) or re-run `npx gsd-codex-cli@latest`.
|
|
42
42
|
|
|
43
43
|
## Recommended fixes (use the minimum)
|
|
44
44
|
- If engine missing: `npx gsd-codex-cli@latest --path .` (or `--global`)
|
|
45
45
|
- If only Claude engine exists and Codex prompts are desired in-project: `npx gsd-codex-cli@latest --path .`
|
|
46
|
-
- If `.planning/` missing: run
|
|
46
|
+
- If `.planning/` missing: run `/prompts:gsd-new-project` (Codex) / `/gsd:new-project` (Claude)
|
|
47
47
|
|
|
48
48
|
## Completion output
|
|
49
49
|
- Print the table and a single “Next recommended command”:
|
|
@@ -59,5 +59,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
59
59
|
|
|
60
60
|
## Completion output
|
|
61
61
|
- Summarize key artifacts created/updated.
|
|
62
|
-
- Next recommended command:
|
|
62
|
+
- Next recommended command: `/prompts:gsd-verify-work <phase>` (Codex) / `/gsd:verify-work <phase>` (Claude)
|
|
63
63
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Start a new milestone cycle
|
|
2
|
+
description: Start a new milestone cycle end-to-end (questioning -> requirements -> roadmap)
|
|
3
3
|
argument-hint: "[milestone name, for example v1.1 Notifications]"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
$ARGUMENTS
|
|
7
7
|
|
|
8
8
|
## Objective
|
|
9
|
-
Start a new milestone cycle
|
|
9
|
+
Start a new milestone cycle end-to-end (questioning -> requirements -> roadmap)
|
|
10
10
|
|
|
11
11
|
## Compatibility
|
|
12
12
|
- Use .codex/skills/get-shit-done-codex semantics.
|
|
@@ -22,6 +22,8 @@ Start a new milestone cycle — update PROJECT.md and route to requirements
|
|
|
22
22
|
- No jq / bash-only constructs.
|
|
23
23
|
- Accept natural-language command input; do not require an exact literal argument template.
|
|
24
24
|
- If a required argument is still missing after extraction, ask one concise clarification question.
|
|
25
|
+
- If `.planning/MILESTONE-CONTEXT.md` is missing, ask options before drafting goals; do not assume milestone scope.
|
|
26
|
+
- Do not complete successfully unless `.planning/ROADMAP.md` exists (or explicit `ROADMAP BLOCKED` is surfaced).
|
|
25
27
|
|
|
26
28
|
## Subagent lifecycle (required)
|
|
27
29
|
|
|
@@ -36,15 +38,22 @@ Start a new milestone cycle — update PROJECT.md and route to requirements
|
|
|
36
38
|
node <gsd-tools-path> init new-milestone --raw
|
|
37
39
|
|
|
38
40
|
3. Load .claude/get-shit-done/workflows/new-milestone.md and execute it step-by-step.
|
|
39
|
-
4.
|
|
41
|
+
4. If `.planning/MILESTONE-CONTEXT.md` is absent, run an explicit options question before requirements:
|
|
42
|
+
- "Ship features (Recommended)"
|
|
43
|
+
- "Stabilize quality"
|
|
44
|
+
- "Platform + ops"
|
|
45
|
+
- "Custom scope"
|
|
46
|
+
Then summarize the chosen direction and ask for confirmation.
|
|
47
|
+
5. Translate each Task(...) in workflow into:
|
|
40
48
|
- spawn_agent with the matching role file context from .claude/agents/.
|
|
41
49
|
- wait for each spawned agent and apply returned output before moving forward.
|
|
42
|
-
|
|
43
|
-
|
|
50
|
+
6. Preserve all gates and routing from upstream workflow.
|
|
51
|
+
7. Before reporting success, verify `.planning/ROADMAP.md` exists. If missing, treat as blocked and continue workflow remediation.
|
|
52
|
+
8. Preserve commit behavior using
|
|
44
53
|
node <gsd-tools-path> commit "message" --files ....
|
|
45
|
-
|
|
54
|
+
9. If commit preflight fails (no git / no commit flag), proceed in read-only mode and report clearly.
|
|
46
55
|
|
|
47
56
|
## Completion output
|
|
48
57
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
58
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
59
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command:
|
|
49
|
+
- Next recommended command: `/prompts:gsd-discuss-phase 1` (Codex) / `/gsd:discuss-phase 1` (Claude)
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command:
|
|
49
|
+
- Next recommended command: `/prompts:gsd-execute-phase [phase]` (Codex) / `/gsd:execute-phase [phase]` (Claude)
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -34,7 +34,7 @@ Update GSD to latest version with changelog display
|
|
|
34
34
|
- Best-effort only; do not fail if offline.
|
|
35
35
|
- Check installed Codex fork version from `.codex/gsd/VERSION` (or `~/.codex/gsd/VERSION`).
|
|
36
36
|
- Check latest published version with `npm view gsd-codex-cli version`.
|
|
37
|
-
- If versions differ, surface: "Update available: <installed> -> <latest>. Next: gsd-update (Codex) / /gsd:update (Claude) or re-run npx gsd-codex-cli@latest."
|
|
37
|
+
- If versions differ, surface: "Update available: <installed> -> <latest>. Next: /prompts:gsd-update (Codex) / /gsd:update (Claude) or re-run npx gsd-codex-cli@latest."
|
|
38
38
|
|
|
39
39
|
## Execution
|
|
40
40
|
1. No positional argument is required. Read flags from command text if present.
|
|
@@ -52,5 +52,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
52
52
|
|
|
53
53
|
## Completion output
|
|
54
54
|
- Summarize key artifacts created/updated.
|
|
55
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
55
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
56
56
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -46,5 +46,5 @@ node <gsd-tools-path> commit "message" --files ....
|
|
|
46
46
|
|
|
47
47
|
## Completion output
|
|
48
48
|
- Summarize key artifacts created/updated.
|
|
49
|
-
- Next recommended command: use the next user-facing GSD command (
|
|
49
|
+
- Next recommended command: use the next user-facing GSD command (`/prompts:gsd-...` for Codex + `/gsd:...` for Claude).
|
|
50
50
|
- Never recommend internal `node ... gsd-tools ...` commands to the user.
|
|
@@ -14,27 +14,27 @@ Use this skill to run `gsd-*` prompts under `Codex` while preserving upstream GS
|
|
|
14
14
|
- Keep `.claude/agents/gsd-*.md` as role contracts for subagents.
|
|
15
15
|
- Keep `.codex/prompts/gsd-*.md` as Codex-native orchestrators.
|
|
16
16
|
|
|
17
|
-
## Core rules
|
|
18
|
-
1. Do not change command semantics.
|
|
19
|
-
2. Do not change source workflow logic unless necessary for Codex command compatibility.
|
|
20
|
-
3. Use workspace-relative paths.
|
|
21
|
-
4. Preserve step ordering and gate behavior from workflow files.
|
|
22
|
-
5. User-facing guidance should recommend
|
|
17
|
+
## Core rules
|
|
18
|
+
1. Do not change command semantics.
|
|
19
|
+
2. Do not change source workflow logic unless necessary for Codex command compatibility.
|
|
20
|
+
3. Use workspace-relative paths.
|
|
21
|
+
4. Preserve step ordering and gate behavior from workflow files.
|
|
22
|
+
5. User-facing guidance should recommend `/prompts:gsd-*` prompts (Codex) and `/gsd:*` commands (Claude), not internal `node ... gsd-tools ...` plumbing.
|
|
23
23
|
|
|
24
24
|
## Mandatory codex translations
|
|
25
25
|
- Replace each `Task(...)` with: `spawn_agent` + `wait`.
|
|
26
26
|
- Replace Bash/JQ patterns with PowerShell and `ConvertFrom-Json`.
|
|
27
27
|
- Replace AskUserQuestion interactions with direct user prompts in chat.
|
|
28
28
|
|
|
29
|
-
## Subagent lifecycle (required)
|
|
30
|
-
- Spawn only when the upstream workflow explicitly defines a `Task(...)` role.
|
|
31
|
-
- For each spawned subagent:
|
|
32
|
-
- Start with `spawn_agent` and provide the role source from `.claude/agents/gsd-*.md`.
|
|
33
|
-
- Do not set `agent_type` to a GSD role. Codex only accepts `default`, `explorer`, or `worker` (or omit `agent_type`).
|
|
34
|
-
- Wait for completion before proceeding: `wait`.
|
|
35
|
-
- Explicitly close the agent after it finishes (`close_agent`) to release resources.
|
|
36
|
-
- Keep prompt-level sequencing intact; do not continue to subsequent steps until waiting + closure are complete.
|
|
37
|
-
- If an agent fails or exceeds retry policy, stop that phase of workflow and surface a clear remediation step.
|
|
29
|
+
## Subagent lifecycle (required)
|
|
30
|
+
- Spawn only when the upstream workflow explicitly defines a `Task(...)` role.
|
|
31
|
+
- For each spawned subagent:
|
|
32
|
+
- Start with `spawn_agent` and provide the role source from `.claude/agents/gsd-*.md`.
|
|
33
|
+
- Do not set `agent_type` to a GSD role. Codex only accepts `default`, `explorer`, or `worker` (or omit `agent_type`).
|
|
34
|
+
- Wait for completion before proceeding: `wait`.
|
|
35
|
+
- Explicitly close the agent after it finishes (`close_agent`) to release resources.
|
|
36
|
+
- Keep prompt-level sequencing intact; do not continue to subsequent steps until waiting + closure are complete.
|
|
37
|
+
- If an agent fails or exceeds retry policy, stop that phase of workflow and surface a clear remediation step.
|
|
38
38
|
|
|
39
39
|
## Required GSD roles (must map by name)
|
|
40
40
|
- `gsd-project-researcher`
|
package/README.md
CHANGED
|
@@ -34,11 +34,11 @@ This fork is Codex-first, but the Claude assets are kept alongside for compatibi
|
|
|
34
34
|
|
|
35
35
|
## Using the Prompts
|
|
36
36
|
|
|
37
|
-
Open your project in Codex and run these
|
|
37
|
+
Open your project in Codex and run these prompt commands:
|
|
38
38
|
|
|
39
|
-
-
|
|
40
|
-
-
|
|
41
|
-
-
|
|
39
|
+
- `/prompts:gsd-new-project`
|
|
40
|
+
- `/prompts:gsd-plan-phase`
|
|
41
|
+
- `/prompts:gsd-execute-phase`
|
|
42
42
|
|
|
43
43
|
All Codex prompts live in `.codex/prompts`.
|
|
44
44
|
|
package/bin/install-codex.js
CHANGED
|
@@ -11,18 +11,18 @@ const repoRoot = path.resolve(__dirname, '..');
|
|
|
11
11
|
const helpText = `
|
|
12
12
|
${pkg.name} v${pkg.version}
|
|
13
13
|
|
|
14
|
-
Usage:
|
|
15
|
-
${pkg.name} [--path <target-dir>] [--help]
|
|
14
|
+
Usage:
|
|
15
|
+
${pkg.name} [--path <target-dir>] [--help]
|
|
16
16
|
|
|
17
17
|
Options:
|
|
18
18
|
--path <target-dir> Install into this directory (defaults to current directory)
|
|
19
19
|
--global Also install .claude to your home directory (for manual sharing)
|
|
20
20
|
--help, -h Show this help message
|
|
21
21
|
|
|
22
|
-
Examples:
|
|
23
|
-
npx gsd-codex-cli@latest --path .
|
|
24
|
-
npx gsd-codex-cli@latest --path ./my-project
|
|
25
|
-
`;
|
|
22
|
+
Examples:
|
|
23
|
+
npx gsd-codex-cli@latest --path .
|
|
24
|
+
npx gsd-codex-cli@latest --path ./my-project
|
|
25
|
+
`;
|
|
26
26
|
|
|
27
27
|
if (args.includes('--help') || args.includes('-h')) {
|
|
28
28
|
console.log(helpText);
|
|
@@ -65,27 +65,27 @@ function resolveSourceDir(repoRelative, fallbackRelative) {
|
|
|
65
65
|
throw new Error(`Missing source directory "${repoRelative}"${fallbackMessage} in repository root ${repoRoot}`);
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
function copyCodexToDirectory(baseDir) {
|
|
69
|
-
const targetCodex = path.join(baseDir, '.codex');
|
|
70
|
-
const targetClaude = path.join(baseDir, '.claude');
|
|
71
|
-
const sourceCodex = path.join(repoRoot, '.codex');
|
|
72
|
-
const sourceGetShitDone = resolveSourceDir('get-shit-done', '.claude/get-shit-done');
|
|
73
|
-
const sourceAgents = resolveSourceDir('agents', '.claude/agents');
|
|
74
|
-
const versionDest = path.join(targetClaude, 'get-shit-done', 'VERSION');
|
|
75
|
-
const codexVersionDest = path.join(targetCodex, 'gsd', 'VERSION');
|
|
76
|
-
|
|
77
|
-
ensureDir(baseDir);
|
|
78
|
-
ensureDir(targetCodex);
|
|
79
|
-
ensureDir(targetClaude);
|
|
80
|
-
|
|
81
|
-
copyRecursive(sourceCodex, targetCodex);
|
|
82
|
-
copyRecursive(sourceGetShitDone, path.join(targetClaude, 'get-shit-done'));
|
|
83
|
-
copyRecursive(sourceAgents, path.join(targetClaude, 'agents'));
|
|
84
|
-
ensureDir(path.dirname(versionDest));
|
|
85
|
-
fs.writeFileSync(versionDest, `${pkg.version}\n`);
|
|
86
|
-
ensureDir(path.dirname(codexVersionDest));
|
|
87
|
-
fs.writeFileSync(codexVersionDest, `${pkg.version}\n`);
|
|
88
|
-
}
|
|
68
|
+
function copyCodexToDirectory(baseDir) {
|
|
69
|
+
const targetCodex = path.join(baseDir, '.codex');
|
|
70
|
+
const targetClaude = path.join(baseDir, '.claude');
|
|
71
|
+
const sourceCodex = path.join(repoRoot, '.codex');
|
|
72
|
+
const sourceGetShitDone = resolveSourceDir('get-shit-done', '.claude/get-shit-done');
|
|
73
|
+
const sourceAgents = resolveSourceDir('agents', '.claude/agents');
|
|
74
|
+
const versionDest = path.join(targetClaude, 'get-shit-done', 'VERSION');
|
|
75
|
+
const codexVersionDest = path.join(targetCodex, 'gsd', 'VERSION');
|
|
76
|
+
|
|
77
|
+
ensureDir(baseDir);
|
|
78
|
+
ensureDir(targetCodex);
|
|
79
|
+
ensureDir(targetClaude);
|
|
80
|
+
|
|
81
|
+
copyRecursive(sourceCodex, targetCodex);
|
|
82
|
+
copyRecursive(sourceGetShitDone, path.join(targetClaude, 'get-shit-done'));
|
|
83
|
+
copyRecursive(sourceAgents, path.join(targetClaude, 'agents'));
|
|
84
|
+
ensureDir(path.dirname(versionDest));
|
|
85
|
+
fs.writeFileSync(versionDest, `${pkg.version}\n`);
|
|
86
|
+
ensureDir(path.dirname(codexVersionDest));
|
|
87
|
+
fs.writeFileSync(codexVersionDest, `${pkg.version}\n`);
|
|
88
|
+
}
|
|
89
89
|
|
|
90
90
|
copyCodexToDirectory(targetDir);
|
|
91
91
|
|
|
@@ -95,13 +95,13 @@ if (installGlobal) {
|
|
|
95
95
|
copyCodexToDirectory(globalBase);
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
console.log(`\n${pkg.name}@${pkg.version} installed to:`);
|
|
98
|
+
console.log(`\n${pkg.name}@${pkg.version} installed to:`);
|
|
99
99
|
console.log(` local: ${targetDir}`);
|
|
100
100
|
if (installGlobal) {
|
|
101
101
|
console.log(' global: ~/.codex');
|
|
102
102
|
}
|
|
103
|
-
console.log('\nNext steps:');
|
|
104
|
-
console.log(' 1) Open your project in Codex');
|
|
105
|
-
console.log(' 2) Run
|
|
106
|
-
console.log(' 3) If something looks off, run
|
|
107
|
-
console.log(' 4) Use .codex/prompts/* for all GSD commands in this fork');
|
|
103
|
+
console.log('\nNext steps:');
|
|
104
|
+
console.log(' 1) Open your project in Codex');
|
|
105
|
+
console.log(' 2) Run /prompts:gsd-new-project, then /prompts:gsd-discuss-phase, /prompts:gsd-plan-phase, /prompts:gsd-execute-phase');
|
|
106
|
+
console.log(' 3) If something looks off, run /prompts:gsd-doctor');
|
|
107
|
+
console.log(' 4) Use .codex/prompts/* for all GSD commands in this fork');
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gsd:new-milestone
|
|
3
|
-
description: Start a new milestone cycle
|
|
3
|
+
description: Start a new milestone cycle end-to-end (questioning -> requirements -> roadmap)
|
|
4
4
|
argument-hint: "[milestone name, e.g., 'v1.1 Notifications']"
|
|
5
5
|
allowed-tools:
|
|
6
6
|
- Read
|
|
@@ -48,4 +48,7 @@ Milestone name: $ARGUMENTS (optional - will prompt if not provided)
|
|
|
48
48
|
<process>
|
|
49
49
|
Execute the new-milestone workflow from @~/.claude/get-shit-done/workflows/new-milestone.md end-to-end.
|
|
50
50
|
Preserve all workflow gates (validation, questioning, research, requirements, roadmap approval, commits).
|
|
51
|
+
Hard gates:
|
|
52
|
+
- If `.planning/MILESTONE-CONTEXT.md` is missing, present milestone direction options and capture user confirmation before defining requirements.
|
|
53
|
+
- Do not finish successfully unless `.planning/ROADMAP.md` exists (or explicit blocked reason is reported).
|
|
51
54
|
</process>
|
|
@@ -26,9 +26,15 @@ Read all files referenced by the invoking prompt's execution_context before star
|
|
|
26
26
|
- Present summary for confirmation
|
|
27
27
|
|
|
28
28
|
**If no context file:**
|
|
29
|
-
- Present what shipped in last milestone
|
|
30
|
-
-
|
|
31
|
-
-
|
|
29
|
+
- Present what shipped in last milestone plus pending todos/blockers.
|
|
30
|
+
- Run an explicit AskUserQuestion with milestone direction options before drafting scope:
|
|
31
|
+
- "Ship features (Recommended)" — Build the next user-facing capability set
|
|
32
|
+
- "Stabilize quality" — Focus on bug fixes, reliability, and hardening
|
|
33
|
+
- "Platform + ops" — Improve architecture, performance, tooling, and observability
|
|
34
|
+
- "Custom scope" — User provides bespoke milestone goals
|
|
35
|
+
- If "Custom scope", ask one focused follow-up question and capture the goals verbatim.
|
|
36
|
+
- Summarize the selected direction as draft milestone goals and ask for confirm/adjust.
|
|
37
|
+
- Hard gate: do not continue to Step 3 until user confirms goals.
|
|
32
38
|
|
|
33
39
|
## 3. Determine Milestone Version
|
|
34
40
|
|
|
@@ -319,6 +325,9 @@ Success criteria:
|
|
|
319
325
|
**If "Adjust":** Get notes, re-spawn roadmapper with revision context, loop until approved.
|
|
320
326
|
**If "Review":** Display raw ROADMAP.md, re-ask.
|
|
321
327
|
|
|
328
|
+
**Hard gate before completion:** verify `.planning/ROADMAP.md` exists on disk.
|
|
329
|
+
- If missing, treat as `## ROADMAP BLOCKED` (agent returned success without writing file), explain the issue, and re-spawn roadmapper with explicit instruction to write `.planning/ROADMAP.md`, `.planning/STATE.md`, and REQUIREMENTS traceability updates before returning.
|
|
330
|
+
|
|
322
331
|
**Commit roadmap** (after approval):
|
|
323
332
|
```bash
|
|
324
333
|
node ~/.claude/get-shit-done/bin/gsd-tools.cjs commit "docs: create milestone v[X.Y] roadmap ([N] phases)" --files .planning/ROADMAP.md .planning/STATE.md .planning/REQUIREMENTS.md
|
|
@@ -364,6 +373,7 @@ Also: `/gsd:plan-phase [N]` — skip discussion, plan directly
|
|
|
364
373
|
- [ ] REQUIREMENTS.md created with REQ-IDs
|
|
365
374
|
- [ ] gsd-roadmapper spawned with phase numbering context
|
|
366
375
|
- [ ] Roadmap files written immediately (not draft)
|
|
376
|
+
- [ ] `.planning/ROADMAP.md` exists on disk before Done
|
|
367
377
|
- [ ] User feedback incorporated (if any)
|
|
368
378
|
- [ ] ROADMAP.md phases continue from previous milestone
|
|
369
379
|
- [ ] All commits made (if planning docs committed)
|