gsd-antigravity-kit 1.21.1 → 1.22.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/.agent/skills/gsd/SKILL.md +2 -2
- package/.agent/skills/gsd/assets/templates/context.md +14 -0
- package/.agent/skills/gsd/bin/lib/core.cjs +2 -0
- package/.agent/skills/gsd/bin/lib/phase.cjs +14 -7
- package/.agent/skills/gsd/bin/lib/state.cjs +2 -1
- package/.agent/skills/gsd/references/agents/gsd-debugger.md +2 -2
- package/.agent/skills/gsd/references/agents/gsd-executor.md +22 -12
- package/.agent/skills/gsd/references/agents/gsd-phase-researcher.md +4 -4
- package/.agent/skills/gsd/references/agents/gsd-plan-checker.md +8 -6
- package/.agent/skills/gsd/references/agents/gsd-planner.md +27 -7
- package/.agent/skills/gsd/references/agents/gsd-project-researcher.md +1 -1
- package/.agent/skills/gsd/references/agents/gsd-research-synthesizer.md +1 -1
- package/.agent/skills/gsd/references/agents/gsd-verifier.md +7 -7
- package/.agent/skills/gsd/references/commands/debug.md +2 -2
- package/.agent/skills/gsd/references/commands/discuss-phase.md +8 -5
- package/.agent/skills/gsd/references/commands/research-phase.md +3 -3
- package/.agent/skills/gsd/references/docs/decimal-phase-calculation.md +4 -4
- package/.agent/skills/gsd/references/docs/git-integration.md +3 -3
- package/.agent/skills/gsd/references/docs/git-planning-commit.md +2 -2
- package/.agent/skills/gsd/references/docs/phase-argument-parsing.md +3 -3
- package/.agent/skills/gsd/references/docs/planning-config.md +6 -6
- package/.agent/skills/gsd/references/workflows/add-phase.md +2 -2
- package/.agent/skills/gsd/references/workflows/add-tests.md +2 -2
- package/.agent/skills/gsd/references/workflows/add-todo.md +3 -3
- package/.agent/skills/gsd/references/workflows/audit-milestone.md +5 -5
- package/.agent/skills/gsd/references/workflows/check-todos.md +2 -2
- package/.agent/skills/gsd/references/workflows/cleanup.md +1 -1
- package/.agent/skills/gsd/references/workflows/complete-milestone.md +6 -6
- package/.agent/skills/gsd/references/workflows/diagnose-issues.md +1 -1
- package/.agent/skills/gsd/references/workflows/discuss-phase.md +93 -20
- package/.agent/skills/gsd/references/workflows/execute-phase.md +9 -9
- package/.agent/skills/gsd/references/workflows/execute-plan.md +12 -12
- package/.agent/skills/gsd/references/workflows/health.md +2 -2
- package/.agent/skills/gsd/references/workflows/insert-phase.md +2 -2
- package/.agent/skills/gsd/references/workflows/map-codebase.md +2 -2
- package/.agent/skills/gsd/references/workflows/new-milestone.md +6 -6
- package/.agent/skills/gsd/references/workflows/new-project.md +7 -7
- package/.agent/skills/gsd/references/workflows/pause-work.md +2 -2
- package/.agent/skills/gsd/references/workflows/plan-milestone-gaps.md +2 -2
- package/.agent/skills/gsd/references/workflows/plan-phase.md +9 -9
- package/.agent/skills/gsd/references/workflows/progress.md +6 -6
- package/.agent/skills/gsd/references/workflows/quick.md +4 -4
- package/.agent/skills/gsd/references/workflows/remove-phase.md +4 -4
- package/.agent/skills/gsd/references/workflows/research-phase.md +2 -2
- package/.agent/skills/gsd/references/workflows/resume-project.md +1 -1
- package/.agent/skills/gsd/references/workflows/set-profile.md +2 -2
- package/.agent/skills/gsd/references/workflows/settings.md +2 -2
- package/.agent/skills/gsd/references/workflows/transition.md +4 -4
- package/.agent/skills/gsd/references/workflows/update.md +2 -6
- package/.agent/skills/gsd/references/workflows/verify-phase.md +6 -6
- package/.agent/skills/gsd/references/workflows/verify-work.md +2 -2
- package/.agent/skills/release-manager/SKILL.md +2 -2
- package/.claude/agents/gsd-debugger.md +2 -2
- package/.claude/agents/gsd-executor.md +22 -12
- package/.claude/agents/gsd-phase-researcher.md +4 -4
- package/.claude/agents/gsd-plan-checker.md +8 -6
- package/.claude/agents/gsd-planner.md +27 -7
- package/.claude/agents/gsd-project-researcher.md +1 -1
- package/.claude/agents/gsd-research-synthesizer.md +1 -1
- package/.claude/agents/gsd-verifier.md +7 -7
- package/.claude/commands/gsd/debug.md +2 -2
- package/.claude/commands/gsd/discuss-phase.md +8 -5
- package/.claude/commands/gsd/research-phase.md +3 -3
- package/.claude/get-shit-done/VERSION +1 -1
- package/.claude/get-shit-done/bin/lib/core.cjs +2 -0
- package/.claude/get-shit-done/bin/lib/phase.cjs +14 -7
- package/.claude/get-shit-done/bin/lib/state.cjs +2 -1
- package/.claude/get-shit-done/references/decimal-phase-calculation.md +4 -4
- package/.claude/get-shit-done/references/git-integration.md +3 -3
- package/.claude/get-shit-done/references/git-planning-commit.md +2 -2
- package/.claude/get-shit-done/references/phase-argument-parsing.md +3 -3
- package/.claude/get-shit-done/references/planning-config.md +6 -6
- package/.claude/get-shit-done/templates/context.md +14 -0
- package/.claude/get-shit-done/workflows/add-phase.md +2 -2
- package/.claude/get-shit-done/workflows/add-tests.md +2 -2
- package/.claude/get-shit-done/workflows/add-todo.md +3 -3
- package/.claude/get-shit-done/workflows/audit-milestone.md +5 -5
- package/.claude/get-shit-done/workflows/check-todos.md +2 -2
- package/.claude/get-shit-done/workflows/cleanup.md +1 -1
- package/.claude/get-shit-done/workflows/complete-milestone.md +6 -6
- package/.claude/get-shit-done/workflows/diagnose-issues.md +1 -1
- package/.claude/get-shit-done/workflows/discuss-phase.md +93 -20
- package/.claude/get-shit-done/workflows/execute-phase.md +9 -9
- package/.claude/get-shit-done/workflows/execute-plan.md +12 -12
- package/.claude/get-shit-done/workflows/health.md +2 -2
- package/.claude/get-shit-done/workflows/insert-phase.md +2 -2
- package/.claude/get-shit-done/workflows/map-codebase.md +2 -2
- package/.claude/get-shit-done/workflows/new-milestone.md +6 -6
- package/.claude/get-shit-done/workflows/new-project.md +7 -7
- package/.claude/get-shit-done/workflows/pause-work.md +2 -2
- package/.claude/get-shit-done/workflows/plan-milestone-gaps.md +2 -2
- package/.claude/get-shit-done/workflows/plan-phase.md +9 -9
- package/.claude/get-shit-done/workflows/progress.md +6 -6
- package/.claude/get-shit-done/workflows/quick.md +4 -4
- package/.claude/get-shit-done/workflows/remove-phase.md +4 -4
- package/.claude/get-shit-done/workflows/research-phase.md +2 -2
- package/.claude/get-shit-done/workflows/resume-project.md +1 -1
- package/.claude/get-shit-done/workflows/set-profile.md +2 -2
- package/.claude/get-shit-done/workflows/settings.md +2 -2
- package/.claude/get-shit-done/workflows/transition.md +4 -4
- package/.claude/get-shit-done/workflows/update.md +2 -6
- package/.claude/get-shit-done/workflows/verify-phase.md +6 -6
- package/.claude/get-shit-done/workflows/verify-work.md +2 -2
- package/.claude/gsd-file-manifest.json +53 -53
- package/CHANGELOG.md +13 -3
- package/README.md +1 -1
- package/docs/DEV_KNOWLEDGEBASE.md +9 -8
- package/gsd-antigravity-kit_v1.22.0.zip +0 -0
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gsd
|
|
3
|
-
version: 1.
|
|
3
|
+
version: 1.22.0
|
|
4
4
|
description: "Antigravity GSD (Get Stuff Done) - A spec-driven hierarchical planning and execution system. Triggers on project planning, phase management, and GSD slash commands."
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -130,4 +130,4 @@ General documentation on the GSD philosophy, usage patterns, and configuration.
|
|
|
130
130
|
4. **One Context**: Keep separate contexts (channels/threads) for Planning vs Execution to avoid contamination.
|
|
131
131
|
|
|
132
132
|
---
|
|
133
|
-
*Generated by gsd-converter on 2026-
|
|
133
|
+
*Generated by gsd-converter on 2026-03-01*
|
|
@@ -54,6 +54,20 @@ Template for `.planning/phases/XX-name/{phase_num}-CONTEXT.md` - captures implem
|
|
|
54
54
|
|
|
55
55
|
</specifics>
|
|
56
56
|
|
|
57
|
+
<code_context>
|
|
58
|
+
## Existing Code Insights
|
|
59
|
+
|
|
60
|
+
### Reusable Assets
|
|
61
|
+
- [Component/hook/utility]: [How it could be used in this phase]
|
|
62
|
+
|
|
63
|
+
### Established Patterns
|
|
64
|
+
- [Pattern]: [How it constrains/enables this phase]
|
|
65
|
+
|
|
66
|
+
### Integration Points
|
|
67
|
+
- [Where new code connects to existing system]
|
|
68
|
+
|
|
69
|
+
</code_context>
|
|
70
|
+
|
|
57
71
|
<deferred>
|
|
58
72
|
## Deferred Ideas
|
|
59
73
|
|
|
@@ -76,6 +76,7 @@ function loadConfig(cwd) {
|
|
|
76
76
|
research: true,
|
|
77
77
|
plan_checker: true,
|
|
78
78
|
verifier: true,
|
|
79
|
+
nyquist_validation: false,
|
|
79
80
|
parallelization: true,
|
|
80
81
|
brave_search: false,
|
|
81
82
|
};
|
|
@@ -109,6 +110,7 @@ function loadConfig(cwd) {
|
|
|
109
110
|
research: get('research', { section: 'workflow', field: 'research' }) ?? defaults.research,
|
|
110
111
|
plan_checker: get('plan_checker', { section: 'workflow', field: 'plan_check' }) ?? defaults.plan_checker,
|
|
111
112
|
verifier: get('verifier', { section: 'workflow', field: 'verifier' }) ?? defaults.verifier,
|
|
113
|
+
nyquist_validation: get('nyquist_validation', { section: 'workflow', field: 'nyquist_validation' }) ?? defaults.nyquist_validation,
|
|
112
114
|
parallelization,
|
|
113
115
|
brave_search: get('brave_search') ?? defaults.brave_search,
|
|
114
116
|
model_overrides: parsed.model_overrides || null,
|
|
@@ -193,6 +193,11 @@ function cmdFindPhase(cwd, phase, raw) {
|
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
+
function extractObjective(content) {
|
|
197
|
+
const m = content.match(/<objective>\s*\n?\s*(.+)/);
|
|
198
|
+
return m ? m[1].trim() : null;
|
|
199
|
+
}
|
|
200
|
+
|
|
196
201
|
function cmdPhasePlanIndex(cwd, phase, raw) {
|
|
197
202
|
if (!phase) {
|
|
198
203
|
error('phase required for phase-plan-index');
|
|
@@ -242,9 +247,10 @@ function cmdPhasePlanIndex(cwd, phase, raw) {
|
|
|
242
247
|
const content = fs.readFileSync(planPath, 'utf-8');
|
|
243
248
|
const fm = extractFrontmatter(content);
|
|
244
249
|
|
|
245
|
-
// Count tasks (## Task N
|
|
246
|
-
const
|
|
247
|
-
const
|
|
250
|
+
// Count tasks: XML <task> tags (canonical) or ## Task N markdown (legacy)
|
|
251
|
+
const xmlTasks = content.match(/<task[\s>]/gi) || [];
|
|
252
|
+
const mdTasks = content.match(/##\s*Task\s*\d+/gi) || [];
|
|
253
|
+
const taskCount = xmlTasks.length || mdTasks.length;
|
|
248
254
|
|
|
249
255
|
// Parse wave as integer
|
|
250
256
|
const wave = parseInt(fm.wave, 10) || 1;
|
|
@@ -259,10 +265,11 @@ function cmdPhasePlanIndex(cwd, phase, raw) {
|
|
|
259
265
|
hasCheckpoints = true;
|
|
260
266
|
}
|
|
261
267
|
|
|
262
|
-
// Parse
|
|
268
|
+
// Parse files_modified (underscore is canonical; also accept hyphenated for compat)
|
|
263
269
|
let filesModified = [];
|
|
264
|
-
|
|
265
|
-
|
|
270
|
+
const fmFiles = fm['files_modified'] || fm['files-modified'];
|
|
271
|
+
if (fmFiles) {
|
|
272
|
+
filesModified = Array.isArray(fmFiles) ? fmFiles : [fmFiles];
|
|
266
273
|
}
|
|
267
274
|
|
|
268
275
|
const hasSummary = completedPlanIds.has(planId);
|
|
@@ -274,7 +281,7 @@ function cmdPhasePlanIndex(cwd, phase, raw) {
|
|
|
274
281
|
id: planId,
|
|
275
282
|
wave,
|
|
276
283
|
autonomous,
|
|
277
|
-
objective: fm.objective || null,
|
|
284
|
+
objective: extractObjective(content) || fm.objective || null,
|
|
278
285
|
files_modified: filesModified,
|
|
279
286
|
task_count: taskCount,
|
|
280
287
|
has_summary: hasSummary,
|
|
@@ -151,7 +151,8 @@ function cmdStateUpdate(cwd, field, value) {
|
|
|
151
151
|
// ─── State Progression Engine ────────────────────────────────────────────────
|
|
152
152
|
|
|
153
153
|
function stateExtractField(content, fieldName) {
|
|
154
|
-
const
|
|
154
|
+
const escaped = fieldName.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
155
|
+
const pattern = new RegExp(`\\*\\*${escaped}:\\*\\*\\s*(.+)`, 'i');
|
|
155
156
|
const match = content.match(pattern);
|
|
156
157
|
return match ? match[1].trim() : null;
|
|
157
158
|
}
|
|
@@ -1027,7 +1027,7 @@ mv .planning/debug/{slug}.md .planning/debug/resolved/
|
|
|
1027
1027
|
**Check planning config using state load (commit_docs is available from the output):**
|
|
1028
1028
|
|
|
1029
1029
|
```bash
|
|
1030
|
-
INIT=$(node .agent/skills/gsd/bin/gsd-tools.cjs state load)
|
|
1030
|
+
INIT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" state load)
|
|
1031
1031
|
# commit_docs is in the JSON output
|
|
1032
1032
|
```
|
|
1033
1033
|
|
|
@@ -1044,7 +1044,7 @@ Root cause: {root_cause}"
|
|
|
1044
1044
|
|
|
1045
1045
|
Then commit planning docs via CLI (respects `commit_docs` config automatically):
|
|
1046
1046
|
```bash
|
|
1047
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "docs: resolve debug {slug}" --files .planning/debug/resolved/{slug}.md
|
|
1047
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "docs: resolve debug {slug}" --files .planning/debug/resolved/{slug}.md
|
|
1048
1048
|
```
|
|
1049
1049
|
|
|
1050
1050
|
Report completion and offer next steps.
|
|
@@ -21,7 +21,7 @@ Before executing, discover project context:
|
|
|
21
21
|
|
|
22
22
|
**Project instructions:** Read `./ANTIGRAVITY.md` if it exists in the working directory. Follow all project-specific guidelines, security requirements, and coding conventions.
|
|
23
23
|
|
|
24
|
-
**Project skills:** Check `.agents/skills/` directory if
|
|
24
|
+
**Project skills:** Check `.antigravity/skills/` or `.agents/skills/` directory if either exists:
|
|
25
25
|
1. List available skills (subdirectories)
|
|
26
26
|
2. Read `SKILL.md` for each skill (lightweight index ~130 lines)
|
|
27
27
|
3. Load specific `rules/*.md` files as needed during implementation
|
|
@@ -37,7 +37,7 @@ This ensures project-specific patterns, conventions, and best practices are appl
|
|
|
37
37
|
Load execution context:
|
|
38
38
|
|
|
39
39
|
```bash
|
|
40
|
-
INIT=$(node .agent/skills/gsd/bin/gsd-tools.cjs init execute-phase "${PHASE}")
|
|
40
|
+
INIT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" init execute-phase "${PHASE}")
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
Extract from init JSON: `executor_model`, `commit_docs`, `phase_dir`, `plans`, `incomplete_plans`.
|
|
@@ -171,6 +171,16 @@ Track auto-fix attempts per task. After 3 auto-fix attempts on a single task:
|
|
|
171
171
|
- Do NOT restart the build to find more issues
|
|
172
172
|
</deviation_rules>
|
|
173
173
|
|
|
174
|
+
<analysis_paralysis_guard>
|
|
175
|
+
**During task execution, if you make 5+ consecutive Read/Grep/Glob calls without any Edit/Write/Bash action:**
|
|
176
|
+
|
|
177
|
+
STOP. State in one sentence why you haven't written anything yet. Then either:
|
|
178
|
+
1. Write code (you have enough context), or
|
|
179
|
+
2. Report "blocked" with the specific missing information.
|
|
180
|
+
|
|
181
|
+
Do NOT continue reading. Analysis without action is a stuck signal.
|
|
182
|
+
</analysis_paralysis_guard>
|
|
183
|
+
|
|
174
184
|
<authentication_gates>
|
|
175
185
|
**Auth errors during `type="auto"` execution are gates, not failures.**
|
|
176
186
|
|
|
@@ -190,7 +200,7 @@ Track auto-fix attempts per task. After 3 auto-fix attempts on a single task:
|
|
|
190
200
|
Check if auto mode is active at executor start:
|
|
191
201
|
|
|
192
202
|
```bash
|
|
193
|
-
AUTO_CFG=$(node .agent/skills/gsd/bin/gsd-tools.cjs config-get workflow.auto_advance 2>/dev/null || echo "false")
|
|
203
|
+
AUTO_CFG=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" config-get workflow.auto_advance 2>/dev/null || echo "false")
|
|
194
204
|
```
|
|
195
205
|
|
|
196
206
|
Store the result for checkpoint handling below.
|
|
@@ -379,34 +389,34 @@ After SUMMARY.md, update STATE.md using gsd-tools:
|
|
|
379
389
|
|
|
380
390
|
```bash
|
|
381
391
|
# Advance plan counter (handles edge cases automatically)
|
|
382
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs state advance-plan
|
|
392
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" state advance-plan
|
|
383
393
|
|
|
384
394
|
# Recalculate progress bar from disk state
|
|
385
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs state update-progress
|
|
395
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" state update-progress
|
|
386
396
|
|
|
387
397
|
# Record execution metrics
|
|
388
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs state record-metric \
|
|
398
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" state record-metric \
|
|
389
399
|
--phase "${PHASE}" --plan "${PLAN}" --duration "${DURATION}" \
|
|
390
400
|
--tasks "${TASK_COUNT}" --files "${FILE_COUNT}"
|
|
391
401
|
|
|
392
402
|
# Add decisions (extract from SUMMARY.md key-decisions)
|
|
393
403
|
for decision in "${DECISIONS[@]}"; do
|
|
394
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs state add-decision \
|
|
404
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" state add-decision \
|
|
395
405
|
--phase "${PHASE}" --summary "${decision}"
|
|
396
406
|
done
|
|
397
407
|
|
|
398
408
|
# Update session info
|
|
399
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs state record-session \
|
|
409
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" state record-session \
|
|
400
410
|
--stopped-at "Completed ${PHASE}-${PLAN}-PLAN.md"
|
|
401
411
|
```
|
|
402
412
|
|
|
403
413
|
```bash
|
|
404
414
|
# Update ROADMAP.md progress for this phase (plan counts, status)
|
|
405
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs roadmap update-plan-progress "${PHASE_NUMBER}"
|
|
415
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" roadmap update-plan-progress "${PHASE_NUMBER}"
|
|
406
416
|
|
|
407
417
|
# Mark completed requirements from PLAN.md frontmatter
|
|
408
418
|
# Extract the `requirements` array from the plan's frontmatter, then mark each complete
|
|
409
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs requirements mark-complete ${REQ_IDS}
|
|
419
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" requirements mark-complete ${REQ_IDS}
|
|
410
420
|
```
|
|
411
421
|
|
|
412
422
|
**Requirement IDs:** Extract from the PLAN.md frontmatter `requirements:` field (e.g., `requirements: [AUTH-01, AUTH-02]`). Pass all IDs to `requirements mark-complete`. If the plan has no requirements field, skip this step.
|
|
@@ -424,13 +434,13 @@ node .agent/skills/gsd/bin/gsd-tools.cjs requirements mark-complete ${REQ_IDS}
|
|
|
424
434
|
|
|
425
435
|
**For blockers found during execution:**
|
|
426
436
|
```bash
|
|
427
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs state add-blocker "Blocker description"
|
|
437
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" state add-blocker "Blocker description"
|
|
428
438
|
```
|
|
429
439
|
</state_updates>
|
|
430
440
|
|
|
431
441
|
<final_commit>
|
|
432
442
|
```bash
|
|
433
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "docs({phase}-{plan}): complete [plan-name] plan" --files .planning/phases/XX-name/{phase}-{plan}-SUMMARY.md .planning/STATE.md .planning/ROADMAP.md .planning/REQUIREMENTS.md
|
|
443
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "docs({phase}-{plan}): complete [plan-name] plan" --files .planning/phases/XX-name/{phase}-{plan}-SUMMARY.md .planning/STATE.md .planning/ROADMAP.md .planning/REQUIREMENTS.md
|
|
434
444
|
```
|
|
435
445
|
|
|
436
446
|
Separate from per-task commits — captures execution results only.
|
|
@@ -26,7 +26,7 @@ Before researching, discover project context:
|
|
|
26
26
|
|
|
27
27
|
**Project instructions:** Read `./ANTIGRAVITY.md` if it exists in the working directory. Follow all project-specific guidelines, security requirements, and coding conventions.
|
|
28
28
|
|
|
29
|
-
**Project skills:** Check `.agents/skills/` directory if
|
|
29
|
+
**Project skills:** Check `.antigravity/skills/` or `.agents/skills/` directory if either exists:
|
|
30
30
|
1. List available skills (subdirectories)
|
|
31
31
|
2. Read `SKILL.md` for each skill (lightweight index ~130 lines)
|
|
32
32
|
3. Load specific `rules/*.md` files as needed during research
|
|
@@ -120,7 +120,7 @@ When researching "best library for X": find what the ecosystem actually uses, do
|
|
|
120
120
|
Check `brave_search` from init context. If `true`, use Brave Search for higher quality results:
|
|
121
121
|
|
|
122
122
|
```bash
|
|
123
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs websearch "your query" --limit 10
|
|
123
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" websearch "your query" --limit 10
|
|
124
124
|
```
|
|
125
125
|
|
|
126
126
|
**Options:**
|
|
@@ -359,7 +359,7 @@ Orchestrator provides: phase number/name, description/goal, requirements, constr
|
|
|
359
359
|
|
|
360
360
|
Load phase context using init command:
|
|
361
361
|
```bash
|
|
362
|
-
INIT=$(node .agent/skills/gsd/bin/gsd-tools.cjs init phase-op "${PHASE}")
|
|
362
|
+
INIT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" init phase-op "${PHASE}")
|
|
363
363
|
```
|
|
364
364
|
|
|
365
365
|
Extract from init JSON: `phase_dir`, `padded_phase`, `phase_number`, `commit_docs`.
|
|
@@ -461,7 +461,7 @@ Write to: `$PHASE_DIR/$PADDED_PHASE-RESEARCH.md`
|
|
|
461
461
|
## Step 7: Commit Research (optional)
|
|
462
462
|
|
|
463
463
|
```bash
|
|
464
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "docs($PHASE): research phase domain" --files "$PHASE_DIR/$PADDED_PHASE-RESEARCH.md"
|
|
464
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "docs($PHASE): research phase domain" --files "$PHASE_DIR/$PADDED_PHASE-RESEARCH.md"
|
|
465
465
|
```
|
|
466
466
|
|
|
467
467
|
## Step 8: Return Structured Result
|
|
@@ -31,7 +31,7 @@ Before verifying, discover project context:
|
|
|
31
31
|
|
|
32
32
|
**Project instructions:** Read `./ANTIGRAVITY.md` if it exists in the working directory. Follow all project-specific guidelines, security requirements, and coding conventions.
|
|
33
33
|
|
|
34
|
-
**Project skills:** Check `.agents/skills/` directory if
|
|
34
|
+
**Project skills:** Check `.antigravity/skills/` or `.agents/skills/` directory if either exists:
|
|
35
35
|
1. List available skills (subdirectories)
|
|
36
36
|
2. Read `SKILL.md` for each skill (lightweight index ~130 lines)
|
|
37
37
|
3. Load specific `rules/*.md` files as needed during verification
|
|
@@ -365,7 +365,7 @@ If FAIL: return to planner with specific fixes. Same revision loop as other dime
|
|
|
365
365
|
|
|
366
366
|
Load phase operation context:
|
|
367
367
|
```bash
|
|
368
|
-
INIT=$(node .agent/skills/gsd/bin/gsd-tools.cjs init phase-op "${PHASE_ARG}")
|
|
368
|
+
INIT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" init phase-op "${PHASE_ARG}")
|
|
369
369
|
```
|
|
370
370
|
|
|
371
371
|
Extract from init JSON: `phase_dir`, `phase_number`, `has_plans`, `plan_count`.
|
|
@@ -376,7 +376,7 @@ Orchestrator provides CONTEXT.md content in the verification prompt. If provided
|
|
|
376
376
|
ls "$phase_dir"/*-PLAN.md 2>/dev/null
|
|
377
377
|
# Read research for Nyquist validation data
|
|
378
378
|
cat "$phase_dir"/*-RESEARCH.md 2>/dev/null
|
|
379
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs roadmap get-phase "$phase_number"
|
|
379
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" roadmap get-phase "$phase_number"
|
|
380
380
|
ls "$phase_dir"/*-BRIEF.md 2>/dev/null
|
|
381
381
|
```
|
|
382
382
|
|
|
@@ -389,7 +389,7 @@ Use gsd-tools to validate plan structure:
|
|
|
389
389
|
```bash
|
|
390
390
|
for plan in "$PHASE_DIR"/*-PLAN.md; do
|
|
391
391
|
echo "=== $plan ==="
|
|
392
|
-
PLAN_STRUCTURE=$(node .agent/skills/gsd/bin/gsd-tools.cjs verify plan-structure "$plan")
|
|
392
|
+
PLAN_STRUCTURE=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" verify plan-structure "$plan")
|
|
393
393
|
echo "$PLAN_STRUCTURE"
|
|
394
394
|
done
|
|
395
395
|
```
|
|
@@ -407,7 +407,7 @@ Map errors/warnings to verification dimensions:
|
|
|
407
407
|
Extract must_haves from each plan using gsd-tools:
|
|
408
408
|
|
|
409
409
|
```bash
|
|
410
|
-
MUST_HAVES=$(node .agent/skills/gsd/bin/gsd-tools.cjs frontmatter get "$PLAN_PATH" --field must_haves)
|
|
410
|
+
MUST_HAVES=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" frontmatter get "$PLAN_PATH" --field must_haves)
|
|
411
411
|
```
|
|
412
412
|
|
|
413
413
|
Returns JSON: `{ truths: [...], artifacts: [...], key_links: [...] }`
|
|
@@ -445,12 +445,14 @@ Session persists | 01 | 3 | COVERED
|
|
|
445
445
|
|
|
446
446
|
For each requirement: find covering task(s), verify action is specific, flag gaps.
|
|
447
447
|
|
|
448
|
+
**Exhaustive cross-check:** Also read PROJECT.md requirements (not just phase goal). Verify no PROJECT.md requirement relevant to this phase is silently dropped. Any unmapped requirement is an automatic blocker — list it explicitly in issues.
|
|
449
|
+
|
|
448
450
|
## Step 5: Validate Task Structure
|
|
449
451
|
|
|
450
452
|
Use gsd-tools plan-structure verification (already run in Step 2):
|
|
451
453
|
|
|
452
454
|
```bash
|
|
453
|
-
PLAN_STRUCTURE=$(node .agent/skills/gsd/bin/gsd-tools.cjs verify plan-structure "$PLAN_PATH")
|
|
455
|
+
PLAN_STRUCTURE=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" verify plan-structure "$PLAN_PATH")
|
|
454
456
|
```
|
|
455
457
|
|
|
456
458
|
The `tasks` array in the result shows each task's completeness:
|
|
@@ -33,7 +33,7 @@ Before planning, discover project context:
|
|
|
33
33
|
|
|
34
34
|
**Project instructions:** Read `./ANTIGRAVITY.md` if it exists in the working directory. Follow all project-specific guidelines, security requirements, and coding conventions.
|
|
35
35
|
|
|
36
|
-
**Project skills:** Check `.agents/skills/` directory if
|
|
36
|
+
**Project skills:** Check `.antigravity/skills/` or `.agents/skills/` directory if either exists:
|
|
37
37
|
1. List available skills (subdirectories)
|
|
38
38
|
2. Read `SKILL.md` for each skill (lightweight index ~130 lines)
|
|
39
39
|
3. Load specific `rules/*.md` files as needed during planning
|
|
@@ -234,6 +234,26 @@ This prevents the "scavenger hunt" anti-pattern where executors explore the code
|
|
|
234
234
|
|
|
235
235
|
**Why TDD gets own plan:** TDD requires RED→GREEN→REFACTOR cycles consuming 40-50% context. Embedding in multi-task plans degrades quality.
|
|
236
236
|
|
|
237
|
+
**Task-level TDD** (for code-producing tasks in standard plans): When a task creates or modifies production code, add `tdd="true"` and a `<behavior>` block to make test expectations explicit before implementation:
|
|
238
|
+
|
|
239
|
+
```xml
|
|
240
|
+
<task type="auto" tdd="true">
|
|
241
|
+
<name>Task: [name]</name>
|
|
242
|
+
<files>src/feature.ts, src/feature.test.ts</files>
|
|
243
|
+
<behavior>
|
|
244
|
+
- Test 1: [expected behavior]
|
|
245
|
+
- Test 2: [edge case]
|
|
246
|
+
</behavior>
|
|
247
|
+
<action>[Implementation after tests pass]</action>
|
|
248
|
+
<verify>
|
|
249
|
+
<automated>npm test -- --filter=feature</automated>
|
|
250
|
+
</verify>
|
|
251
|
+
<done>[Criteria]</done>
|
|
252
|
+
</task>
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
Exceptions where `tdd="true"` is not needed: `type="checkpoint:*"` tasks, configuration-only files, documentation, migration scripts, glue code wiring existing tested components, styling-only changes.
|
|
256
|
+
|
|
237
257
|
## User Setup Detection
|
|
238
258
|
|
|
239
259
|
For tasks involving external services, identify human-required configuration:
|
|
@@ -900,7 +920,7 @@ Group by plan, dimension, severity.
|
|
|
900
920
|
### Step 6: Commit
|
|
901
921
|
|
|
902
922
|
```bash
|
|
903
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "fix($PHASE): revise plans based on checker feedback" --files .planning/phases/$PHASE-*/$PHASE-*-PLAN.md
|
|
923
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "fix($PHASE): revise plans based on checker feedback" --files .planning/phases/$PHASE-*/$PHASE-*-PLAN.md
|
|
904
924
|
```
|
|
905
925
|
|
|
906
926
|
### Step 7: Return Revision Summary
|
|
@@ -939,7 +959,7 @@ node .agent/skills/gsd/bin/gsd-tools.cjs commit "fix($PHASE): revise plans based
|
|
|
939
959
|
Load planning context:
|
|
940
960
|
|
|
941
961
|
```bash
|
|
942
|
-
INIT=$(node .agent/skills/gsd/bin/gsd-tools.cjs init plan-phase "${PHASE}")
|
|
962
|
+
INIT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" init plan-phase "${PHASE}")
|
|
943
963
|
```
|
|
944
964
|
|
|
945
965
|
Extract from init JSON: `planner_model`, `researcher_model`, `checker_model`, `commit_docs`, `research_enabled`, `phase_dir`, `phase_number`, `has_research`, `has_context`.
|
|
@@ -995,7 +1015,7 @@ Apply discovery level protocol (see discovery_levels section).
|
|
|
995
1015
|
|
|
996
1016
|
**Step 1 — Generate digest index:**
|
|
997
1017
|
```bash
|
|
998
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs history-digest
|
|
1018
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" history-digest
|
|
999
1019
|
```
|
|
1000
1020
|
|
|
1001
1021
|
**Step 2 — Select relevant phases (typically 2-4):**
|
|
@@ -1123,7 +1143,7 @@ Include all frontmatter fields.
|
|
|
1123
1143
|
Validate each created PLAN.md using gsd-tools:
|
|
1124
1144
|
|
|
1125
1145
|
```bash
|
|
1126
|
-
VALID=$(node .agent/skills/gsd/bin/gsd-tools.cjs frontmatter validate "$PLAN_PATH" --schema plan)
|
|
1146
|
+
VALID=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" frontmatter validate "$PLAN_PATH" --schema plan)
|
|
1127
1147
|
```
|
|
1128
1148
|
|
|
1129
1149
|
Returns JSON: `{ valid, missing, present, schema }`
|
|
@@ -1136,7 +1156,7 @@ Required plan frontmatter fields:
|
|
|
1136
1156
|
Also validate plan structure:
|
|
1137
1157
|
|
|
1138
1158
|
```bash
|
|
1139
|
-
STRUCTURE=$(node .agent/skills/gsd/bin/gsd-tools.cjs verify plan-structure "$PLAN_PATH")
|
|
1159
|
+
STRUCTURE=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" verify plan-structure "$PLAN_PATH")
|
|
1140
1160
|
```
|
|
1141
1161
|
|
|
1142
1162
|
Returns JSON: `{ valid, errors, warnings, task_count, tasks }`
|
|
@@ -1173,7 +1193,7 @@ Plans:
|
|
|
1173
1193
|
|
|
1174
1194
|
<step name="git_commit">
|
|
1175
1195
|
```bash
|
|
1176
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "docs($PHASE): create phase plan" --files .planning/phases/$PHASE-*/$PHASE-*-PLAN.md .planning/ROADMAP.md
|
|
1196
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "docs($PHASE): create phase plan" --files .planning/phases/$PHASE-*/$PHASE-*-PLAN.md .planning/ROADMAP.md
|
|
1177
1197
|
```
|
|
1178
1198
|
</step>
|
|
1179
1199
|
|
|
@@ -99,7 +99,7 @@ Always include current year. Use multiple query variations. Mark WebSearch-only
|
|
|
99
99
|
Check `brave_search` from orchestrator context. If `true`, use Brave Search for higher quality results:
|
|
100
100
|
|
|
101
101
|
```bash
|
|
102
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs websearch "your query" --limit 10
|
|
102
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" websearch "your query" --limit 10
|
|
103
103
|
```
|
|
104
104
|
|
|
105
105
|
**Options:**
|
|
@@ -131,7 +131,7 @@ Write to `.planning/research/SUMMARY.md`
|
|
|
131
131
|
The 4 parallel researcher agents write files but do NOT commit. You commit everything together.
|
|
132
132
|
|
|
133
133
|
```bash
|
|
134
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "docs: complete project research" --files .planning/research/
|
|
134
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "docs: complete project research" --files .planning/research/
|
|
135
135
|
```
|
|
136
136
|
|
|
137
137
|
## Step 8: Return Summary
|
|
@@ -21,7 +21,7 @@ Before verifying, discover project context:
|
|
|
21
21
|
|
|
22
22
|
**Project instructions:** Read `./ANTIGRAVITY.md` if it exists in the working directory. Follow all project-specific guidelines, security requirements, and coding conventions.
|
|
23
23
|
|
|
24
|
-
**Project skills:** Check `.agents/skills/` directory if
|
|
24
|
+
**Project skills:** Check `.antigravity/skills/` or `.agents/skills/` directory if either exists:
|
|
25
25
|
1. List available skills (subdirectories)
|
|
26
26
|
2. Read `SKILL.md` for each skill (lightweight index ~130 lines)
|
|
27
27
|
3. Load specific `rules/*.md` files as needed during verification
|
|
@@ -72,7 +72,7 @@ Set `is_re_verification = false`, proceed with Step 1.
|
|
|
72
72
|
```bash
|
|
73
73
|
ls "$PHASE_DIR"/*-PLAN.md 2>/dev/null
|
|
74
74
|
ls "$PHASE_DIR"/*-SUMMARY.md 2>/dev/null
|
|
75
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs roadmap get-phase "$PHASE_NUM"
|
|
75
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" roadmap get-phase "$PHASE_NUM"
|
|
76
76
|
grep -E "^| $PHASE_NUM" .planning/REQUIREMENTS.md 2>/dev/null
|
|
77
77
|
```
|
|
78
78
|
|
|
@@ -109,7 +109,7 @@ must_haves:
|
|
|
109
109
|
If no must_haves in frontmatter, check for Success Criteria:
|
|
110
110
|
|
|
111
111
|
```bash
|
|
112
|
-
PHASE_DATA=$(node .agent/skills/gsd/bin/gsd-tools.cjs roadmap get-phase "$PHASE_NUM" --raw)
|
|
112
|
+
PHASE_DATA=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" roadmap get-phase "$PHASE_NUM" --raw)
|
|
113
113
|
```
|
|
114
114
|
|
|
115
115
|
Parse the `success_criteria` array from the JSON output. If non-empty:
|
|
@@ -152,7 +152,7 @@ For each truth:
|
|
|
152
152
|
Use gsd-tools for artifact verification against must_haves in PLAN frontmatter:
|
|
153
153
|
|
|
154
154
|
```bash
|
|
155
|
-
ARTIFACT_RESULT=$(node .agent/skills/gsd/bin/gsd-tools.cjs verify artifacts "$PLAN_PATH")
|
|
155
|
+
ARTIFACT_RESULT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" verify artifacts "$PLAN_PATH")
|
|
156
156
|
```
|
|
157
157
|
|
|
158
158
|
Parse JSON result: `{ all_passed, passed, total, artifacts: [{path, exists, issues, passed}] }`
|
|
@@ -201,7 +201,7 @@ Key links are critical connections. If broken, the goal fails even with all arti
|
|
|
201
201
|
Use gsd-tools for key link verification against must_haves in PLAN frontmatter:
|
|
202
202
|
|
|
203
203
|
```bash
|
|
204
|
-
LINKS_RESULT=$(node .agent/skills/gsd/bin/gsd-tools.cjs verify key-links "$PLAN_PATH")
|
|
204
|
+
LINKS_RESULT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" verify key-links "$PLAN_PATH")
|
|
205
205
|
```
|
|
206
206
|
|
|
207
207
|
Parse JSON result: `{ all_verified, verified, total, links: [{from, to, via, verified, detail}] }`
|
|
@@ -283,12 +283,12 @@ Identify files modified in this phase from SUMMARY.md key-files section, or extr
|
|
|
283
283
|
|
|
284
284
|
```bash
|
|
285
285
|
# Option 1: Extract from SUMMARY frontmatter
|
|
286
|
-
SUMMARY_FILES=$(node .agent/skills/gsd/bin/gsd-tools.cjs summary-extract "$PHASE_DIR"/*-SUMMARY.md --fields key-files)
|
|
286
|
+
SUMMARY_FILES=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" summary-extract "$PHASE_DIR"/*-SUMMARY.md --fields key-files)
|
|
287
287
|
|
|
288
288
|
# Option 2: Verify commits exist (if commit hashes documented)
|
|
289
289
|
COMMIT_HASHES=$(grep -oE "[a-f0-9]{7,40}" "$PHASE_DIR"/*-SUMMARY.md | head -10)
|
|
290
290
|
if [ -n "$COMMIT_HASHES" ]; then
|
|
291
|
-
COMMITS_VALID=$(node .agent/skills/gsd/bin/gsd-tools.cjs verify commits $COMMIT_HASHES)
|
|
291
|
+
COMMITS_VALID=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" verify commits $COMMIT_HASHES)
|
|
292
292
|
fi
|
|
293
293
|
|
|
294
294
|
# Fallback: grep for files
|
|
@@ -31,12 +31,12 @@ ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5
|
|
|
31
31
|
## 0. Initialize Context
|
|
32
32
|
|
|
33
33
|
```bash
|
|
34
|
-
INIT=$(node .agent/skills/gsd/bin/gsd-tools.cjs state load)
|
|
34
|
+
INIT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" state load)
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
Extract `commit_docs` from init JSON. Resolve debugger model:
|
|
38
38
|
```bash
|
|
39
|
-
|
|
39
|
+
debugger_model=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" resolve-model gsd-debugger --raw)
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
## 1. Check Active Sessions
|
|
@@ -10,6 +10,8 @@ allowed-tools:
|
|
|
10
10
|
- Grep
|
|
11
11
|
- AskUserQuestion
|
|
12
12
|
- Task
|
|
13
|
+
- mcp__context7__resolve-library-id
|
|
14
|
+
- mcp__context7__query-docs
|
|
13
15
|
---
|
|
14
16
|
|
|
15
17
|
<objective>
|
|
@@ -38,11 +40,12 @@ Context files are resolved in-workflow using `init phase-op` and roadmap/state t
|
|
|
38
40
|
<process>
|
|
39
41
|
1. Validate phase number (error if missing or not in roadmap)
|
|
40
42
|
2. Check if CONTEXT.md exists (offer update/view/skip if yes)
|
|
41
|
-
3. **
|
|
42
|
-
4. **
|
|
43
|
-
5. **
|
|
44
|
-
6. **
|
|
45
|
-
7.
|
|
43
|
+
3. **Scout codebase** — Find reusable assets, patterns, and integration points
|
|
44
|
+
4. **Analyze phase** — Identify domain and generate code-informed gray areas
|
|
45
|
+
5. **Present gray areas** — Multi-select: which to discuss? (NO skip option)
|
|
46
|
+
6. **Deep-dive each area** — 4 questions per area, code-informed options, Context7 for library choices
|
|
47
|
+
7. **Write CONTEXT.md** — Sections match areas discussed + code_context section
|
|
48
|
+
8. Offer next steps (research or plan)
|
|
46
49
|
|
|
47
50
|
**CRITICAL: Scope guardrail**
|
|
48
51
|
- Phase boundary from ROADMAP.md is FIXED
|
|
@@ -34,20 +34,20 @@ Normalize phase input in step 1 before any directory lookups.
|
|
|
34
34
|
## 0. Initialize Context
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
INIT=$(node .agent/skills/gsd/bin/gsd-tools.cjs init phase-op "$ARGUMENTS")
|
|
37
|
+
INIT=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" init phase-op "$ARGUMENTS")
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
Extract from init JSON: `phase_dir`, `phase_number`, `phase_name`, `phase_found`, `commit_docs`, `has_research`, `state_path`, `requirements_path`, `context_path`, `research_path`.
|
|
41
41
|
|
|
42
42
|
Resolve researcher model:
|
|
43
43
|
```bash
|
|
44
|
-
RESEARCHER_MODEL=$(node .agent/skills/gsd/bin/gsd-tools.cjs resolve-model gsd-phase-researcher --raw)
|
|
44
|
+
RESEARCHER_MODEL=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" resolve-model gsd-phase-researcher --raw)
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
## 1. Validate Phase
|
|
48
48
|
|
|
49
49
|
```bash
|
|
50
|
-
PHASE_INFO=$(node .agent/skills/gsd/bin/gsd-tools.cjs roadmap get-phase "${phase_number}")
|
|
50
|
+
PHASE_INFO=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" roadmap get-phase "${phase_number}")
|
|
51
51
|
```
|
|
52
52
|
|
|
53
53
|
**If `found` is false:** Error and exit. **If `found` is true:** Extract `phase_number`, `phase_name`, `goal` from JSON.
|
|
@@ -6,7 +6,7 @@ Calculate the next decimal phase number for urgent insertions.
|
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
8
|
# Get next decimal phase after phase 6
|
|
9
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs phase next-decimal 6
|
|
9
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" phase next-decimal 6
|
|
10
10
|
```
|
|
11
11
|
|
|
12
12
|
Output:
|
|
@@ -32,14 +32,14 @@ With existing decimals:
|
|
|
32
32
|
## Extract Values
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
|
-
DECIMAL_INFO=$(node .agent/skills/gsd/bin/gsd-tools.cjs phase next-decimal "${AFTER_PHASE}")
|
|
35
|
+
DECIMAL_INFO=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" phase next-decimal "${AFTER_PHASE}")
|
|
36
36
|
DECIMAL_PHASE=$(echo "$DECIMAL_INFO" | jq -r '.next')
|
|
37
37
|
BASE_PHASE=$(echo "$DECIMAL_INFO" | jq -r '.base_phase')
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
Or with --raw flag:
|
|
41
41
|
```bash
|
|
42
|
-
DECIMAL_PHASE=$(node .agent/skills/gsd/bin/gsd-tools.cjs phase next-decimal "${AFTER_PHASE}" --raw)
|
|
42
|
+
DECIMAL_PHASE=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" phase next-decimal "${AFTER_PHASE}" --raw)
|
|
43
43
|
# Returns just: 06.1
|
|
44
44
|
```
|
|
45
45
|
|
|
@@ -57,7 +57,7 @@ DECIMAL_PHASE=$(node .agent/skills/gsd/bin/gsd-tools.cjs phase next-decimal "${A
|
|
|
57
57
|
Decimal phase directories use the full decimal number:
|
|
58
58
|
|
|
59
59
|
```bash
|
|
60
|
-
SLUG=$(node .agent/skills/gsd/bin/gsd-tools.cjs generate-slug "$DESCRIPTION" --raw)
|
|
60
|
+
SLUG=$(node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" generate-slug "$DESCRIPTION" --raw)
|
|
61
61
|
PHASE_DIR=".planning/phases/${DECIMAL_PHASE}-${SLUG}"
|
|
62
62
|
mkdir -p "$PHASE_DIR"
|
|
63
63
|
```
|
|
@@ -51,7 +51,7 @@ Phases:
|
|
|
51
51
|
What to commit:
|
|
52
52
|
|
|
53
53
|
```bash
|
|
54
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "docs: initialize [project-name] ([N] phases)" --files .planning/
|
|
54
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "docs: initialize [project-name] ([N] phases)" --files .planning/
|
|
55
55
|
```
|
|
56
56
|
|
|
57
57
|
</format>
|
|
@@ -129,7 +129,7 @@ SUMMARY: .planning/phases/XX-name/{phase}-{plan}-SUMMARY.md
|
|
|
129
129
|
What to commit:
|
|
130
130
|
|
|
131
131
|
```bash
|
|
132
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "docs({phase}-{plan}): complete [plan-name] plan" --files .planning/phases/XX-name/{phase}-{plan}-PLAN.md .planning/phases/XX-name/{phase}-{plan}-SUMMARY.md .planning/STATE.md .planning/ROADMAP.md
|
|
132
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "docs({phase}-{plan}): complete [plan-name] plan" --files .planning/phases/XX-name/{phase}-{plan}-PLAN.md .planning/phases/XX-name/{phase}-{plan}-SUMMARY.md .planning/STATE.md .planning/ROADMAP.md
|
|
133
133
|
```
|
|
134
134
|
|
|
135
135
|
**Note:** Code files NOT included - already committed per-task.
|
|
@@ -149,7 +149,7 @@ Current: [task name]
|
|
|
149
149
|
What to commit:
|
|
150
150
|
|
|
151
151
|
```bash
|
|
152
|
-
node .agent/skills/gsd/bin/gsd-tools.cjs commit "wip: [phase-name] paused at task [X]/[Y]" --files .planning/
|
|
152
|
+
node "$HOME.agent/skills/gsd/bin/gsd-tools.cjs" commit "wip: [phase-name] paused at task [X]/[Y]" --files .planning/
|
|
153
153
|
```
|
|
154
154
|
|
|
155
155
|
</format>
|