@opengsd/gsd-core 1.6.0-rc.2 → 1.6.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/.claude-plugin/plugin.json +2 -1
- package/agents/gsd-advisor-researcher.md +2 -0
- package/agents/gsd-ai-researcher.md +2 -0
- package/agents/gsd-assumptions-analyzer.md +2 -0
- package/agents/gsd-doc-classifier.md +2 -0
- package/agents/gsd-doc-synthesizer.md +2 -0
- package/agents/gsd-domain-researcher.md +2 -0
- package/agents/gsd-eval-auditor.md +6 -9
- package/agents/gsd-phase-researcher.md +2 -0
- package/agents/gsd-planner.md +8 -57
- package/agents/gsd-project-researcher.md +2 -0
- package/agents/gsd-research-synthesizer.md +2 -0
- package/agents/gsd-security-auditor.md +37 -18
- package/agents/gsd-ui-researcher.md +2 -0
- package/bin/install.js +370 -18
- package/gemini-extension.json +1 -1
- package/gsd-core/bin/gsd-tools.cjs +46 -4
- package/gsd-core/bin/lib/audit-command-router.cjs +52 -14
- package/gsd-core/bin/lib/capability-lifecycle.cjs +30 -7
- package/gsd-core/bin/lib/capability-registry.cjs +96 -83
- package/gsd-core/bin/lib/capability-validator.cjs +22 -0
- package/gsd-core/bin/lib/cjs-command-router-adapter.cjs +40 -2
- package/gsd-core/bin/lib/command-aliases.cjs +10 -1
- package/gsd-core/bin/lib/command-routing-hub.cjs +10 -3
- package/gsd-core/bin/lib/config-schema.cjs +1 -0
- package/gsd-core/bin/lib/config.cjs +67 -24
- package/gsd-core/bin/lib/coverage.cjs +464 -0
- package/gsd-core/bin/lib/decisions.cjs +27 -0
- package/gsd-core/bin/lib/eval-command-router.cjs +21 -0
- package/gsd-core/bin/lib/eval.cjs +60 -0
- package/gsd-core/bin/lib/frontmatter.cjs +132 -13
- package/gsd-core/bin/lib/graphify-command-router.cjs +53 -36
- package/gsd-core/bin/lib/init.cjs +139 -30
- package/gsd-core/bin/lib/install-profiles.cjs +6 -3
- package/gsd-core/bin/lib/intel-command-router.cjs +79 -60
- package/gsd-core/bin/lib/io.cjs +1 -0
- package/gsd-core/bin/lib/phase.cjs +16 -2
- package/gsd-core/bin/lib/plan-scan.cjs +2 -2
- package/gsd-core/bin/lib/planning-workspace.cjs +157 -13
- package/gsd-core/bin/lib/profile-output.cjs +18 -6
- package/gsd-core/bin/lib/runtime-artifact-conversion.cjs +53 -16
- package/gsd-core/bin/lib/runtime-artifact-layout.cjs +21 -3
- package/gsd-core/bin/lib/runtime-hooks-surface.cjs +15 -0
- package/gsd-core/bin/lib/runtime-name-policy.cjs +47 -2
- package/gsd-core/bin/lib/shell-command-projection.cjs +10 -0
- package/gsd-core/bin/lib/state.cjs +398 -60
- package/gsd-core/bin/lib/surface.cjs +42 -10
- package/gsd-core/bin/lib/uat-predicate.cjs +13 -6
- package/gsd-core/bin/lib/update-context.cjs +2 -2
- package/gsd-core/bin/lib/verification.cjs +67 -6
- package/gsd-core/bin/lib/verify.cjs +8 -1
- package/gsd-core/bin/shared/config-defaults.manifest.json +3 -0
- package/gsd-core/bin/shared/config-schema.manifest.json +2 -1
- package/gsd-core/references/planner-guidance.md +66 -0
- package/gsd-core/references/planning-config.md +2 -2
- package/gsd-core/references/security-asvs-levels.md +27 -0
- package/gsd-core/references/untrusted-input-boundary.md +13 -0
- package/gsd-core/templates/SECURITY.md +6 -4
- package/gsd-core/templates/summary-complex.md +4 -0
- package/gsd-core/templates/summary-minimal.md +3 -0
- package/gsd-core/templates/summary-standard.md +4 -0
- package/gsd-core/templates/summary.md +41 -0
- package/gsd-core/workflows/autonomous.md +53 -46
- package/gsd-core/workflows/complete-milestone.md +27 -8
- package/gsd-core/workflows/execute-phase.md +1 -1
- package/gsd-core/workflows/execute-plan.md +5 -0
- package/gsd-core/workflows/manager.md +17 -7
- package/gsd-core/workflows/new-project.md +82 -16
- package/gsd-core/workflows/plan-phase.md +15 -0
- package/gsd-core/workflows/profile-user.md +6 -2
- package/gsd-core/workflows/progress.md +37 -4
- package/gsd-core/workflows/quick.md +3 -1
- package/gsd-core/workflows/secure-phase.md +13 -7
- package/gsd-core/workflows/ship.md +3 -1
- package/gsd-core/workflows/spec-phase.md +3 -1
- package/gsd-core/workflows/transition.md +14 -12
- package/gsd-core/workflows/ui-review.md +2 -6
- package/gsd-core/workflows/verify-work.md +74 -1
- package/hooks/dist/gsd-read-injection-scanner.js +49 -25
- package/hooks/gsd-read-injection-scanner.js +49 -25
- package/hooks/hooks.json +1 -1
- package/package.json +4 -2
- package/scripts/check-alias-drift.cjs +5 -0
- package/scripts/gen-plugin-skills.cjs +117 -0
- package/scripts/lint-test-file-count.allowlist.json +2 -1
- package/scripts/prompt-injection-scan.sh +9 -0
- package/scripts/release-notes/conventional-title.cjs +88 -0
- package/scripts/release-notes/format-github-release-notes.cjs +4 -3
- package/skills/gsd-add-tests/SKILL.md +38 -0
- package/skills/gsd-ai-integration-phase/SKILL.md +37 -0
- package/skills/gsd-audit-fix/SKILL.md +33 -0
- package/skills/gsd-audit-milestone/SKILL.md +37 -0
- package/skills/gsd-audit-uat/SKILL.md +25 -0
- package/skills/gsd-autonomous/SKILL.md +51 -0
- package/skills/gsd-capture/SKILL.md +67 -0
- package/skills/gsd-cleanup/SKILL.md +24 -0
- package/skills/gsd-code-review/SKILL.md +59 -0
- package/skills/gsd-complete-milestone/SKILL.md +142 -0
- package/skills/gsd-config/SKILL.md +56 -0
- package/skills/gsd-debug/SKILL.md +53 -0
- package/skills/gsd-discuss-phase/SKILL.md +77 -0
- package/skills/gsd-docs-update/SKILL.md +49 -0
- package/skills/gsd-eval-review/SKILL.md +33 -0
- package/skills/gsd-execute-phase/SKILL.md +65 -0
- package/skills/gsd-explore/SKILL.md +28 -0
- package/skills/gsd-extract-learnings/SKILL.md +22 -0
- package/skills/gsd-fast/SKILL.md +31 -0
- package/skills/gsd-forensics/SKILL.md +56 -0
- package/skills/gsd-graphify/SKILL.md +204 -0
- package/skills/gsd-health/SKILL.md +31 -0
- package/skills/gsd-help/SKILL.md +29 -0
- package/skills/gsd-import/SKILL.md +46 -0
- package/skills/gsd-inbox/SKILL.md +39 -0
- package/skills/gsd-ingest-docs/SKILL.md +43 -0
- package/skills/gsd-manager/SKILL.md +45 -0
- package/skills/gsd-map-codebase/SKILL.md +83 -0
- package/skills/gsd-mempalace-capture/SKILL.md +71 -0
- package/skills/gsd-mempalace-recall/SKILL.md +102 -0
- package/skills/gsd-milestone-summary/SKILL.md +51 -0
- package/skills/gsd-mvp-phase/SKILL.md +45 -0
- package/skills/gsd-new-milestone/SKILL.md +45 -0
- package/skills/gsd-new-project/SKILL.md +47 -0
- package/skills/gsd-ns-context/SKILL.md +24 -0
- package/skills/gsd-ns-ideate/SKILL.md +23 -0
- package/skills/gsd-ns-manage/SKILL.md +35 -0
- package/skills/gsd-ns-project/SKILL.md +26 -0
- package/skills/gsd-ns-review/SKILL.md +28 -0
- package/skills/gsd-ns-workflow/SKILL.md +33 -0
- package/skills/gsd-pause-work/SKILL.md +43 -0
- package/skills/gsd-phase/SKILL.md +57 -0
- package/skills/gsd-plan-phase/SKILL.md +63 -0
- package/skills/gsd-plan-review-convergence/SKILL.md +60 -0
- package/skills/gsd-pr-branch/SKILL.md +26 -0
- package/skills/gsd-profile-user/SKILL.md +47 -0
- package/skills/gsd-progress/SKILL.md +49 -0
- package/skills/gsd-quick/SKILL.md +174 -0
- package/skills/gsd-resume-work/SKILL.md +31 -0
- package/skills/gsd-review/SKILL.md +42 -0
- package/skills/gsd-review-backlog/SKILL.md +63 -0
- package/skills/gsd-secure-phase/SKILL.md +36 -0
- package/skills/gsd-settings/SKILL.md +29 -0
- package/skills/gsd-ship/SKILL.md +24 -0
- package/skills/gsd-sketch/SKILL.md +60 -0
- package/skills/gsd-spec-phase/SKILL.md +63 -0
- package/skills/gsd-spike/SKILL.md +57 -0
- package/skills/gsd-stats/SKILL.md +20 -0
- package/skills/gsd-surface/SKILL.md +162 -0
- package/skills/gsd-thread/SKILL.md +24 -0
- package/skills/gsd-ui-phase/SKILL.md +35 -0
- package/skills/gsd-ui-review/SKILL.md +33 -0
- package/skills/gsd-ultraplan-phase/SKILL.md +34 -0
- package/skills/gsd-undo/SKILL.md +35 -0
- package/skills/gsd-update/SKILL.md +50 -0
- package/skills/gsd-validate-phase/SKILL.md +36 -0
- package/skills/gsd-verify-work/SKILL.md +39 -0
- package/skills/gsd-workspace/SKILL.md +53 -0
- package/skills/gsd-workstreams/SKILL.md +70 -0
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-complete-milestone
|
|
3
|
+
description: "Archive completed milestone and prepare for next version"
|
|
4
|
+
argument-hint: "<version>"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
<objective>
|
|
13
|
+
Mark milestone {{version}} complete, archive to milestones/, and update ROADMAP.md and REQUIREMENTS.md.
|
|
14
|
+
|
|
15
|
+
Purpose: Create historical record of shipped version, archive milestone artifacts (roadmap + requirements), and prepare for next milestone.
|
|
16
|
+
Output: Milestone archived (roadmap + requirements), PROJECT.md evolved, git tagged.
|
|
17
|
+
</objective>
|
|
18
|
+
|
|
19
|
+
<execution_context>
|
|
20
|
+
**Load these files NOW (before proceeding):**
|
|
21
|
+
|
|
22
|
+
- @~/.claude/gsd-core/workflows/complete-milestone.md (main workflow)
|
|
23
|
+
- @~/.claude/gsd-core/templates/milestone-archive.md (archive template)
|
|
24
|
+
</execution_context>
|
|
25
|
+
|
|
26
|
+
<context>
|
|
27
|
+
**Project files:**
|
|
28
|
+
- `.planning/ROADMAP.md`
|
|
29
|
+
- `.planning/REQUIREMENTS.md`
|
|
30
|
+
- `.planning/STATE.md`
|
|
31
|
+
- `.planning/PROJECT.md`
|
|
32
|
+
|
|
33
|
+
**User input:**
|
|
34
|
+
|
|
35
|
+
- Version: {{version}} (e.g., "1.0", "1.1", "2.0")
|
|
36
|
+
</context>
|
|
37
|
+
|
|
38
|
+
<process>
|
|
39
|
+
|
|
40
|
+
**Follow complete-milestone.md workflow:**
|
|
41
|
+
|
|
42
|
+
0. **Check for audit:**
|
|
43
|
+
|
|
44
|
+
- Look for `.planning/v{{version}}-MILESTONE-AUDIT.md`
|
|
45
|
+
- If missing or stale: recommend `/gsd-audit-milestone` first
|
|
46
|
+
- If audit status is `gaps_found`: recommend closing the gaps inline
|
|
47
|
+
(the audit output already enumerates them — insert closure phases
|
|
48
|
+
via `/gsd-phase --insert <N>` plus the standard
|
|
49
|
+
discuss/plan/execute chain) before proceeding.
|
|
50
|
+
- If audit status is `passed`: proceed to step 1
|
|
51
|
+
|
|
52
|
+
```markdown
|
|
53
|
+
## Pre-flight Check
|
|
54
|
+
|
|
55
|
+
{If no v{{version}}-MILESTONE-AUDIT.md:}
|
|
56
|
+
⚠ No milestone audit found. Run `/gsd-audit-milestone` first to verify
|
|
57
|
+
requirements coverage, cross-phase integration, and E2E flows.
|
|
58
|
+
|
|
59
|
+
{If audit has gaps:}
|
|
60
|
+
⚠ Milestone audit found gaps. The audit output already enumerates the
|
|
61
|
+
unsatisfied requirements, cross-phase issues, and broken flows — insert
|
|
62
|
+
a closure phase per gap with `/gsd-phase --insert <N>` and run the
|
|
63
|
+
standard `/gsd-discuss-phase` → `/gsd-plan-phase` → `/gsd-execute-phase`
|
|
64
|
+
chain. Or proceed anyway to accept the gaps as tech debt.
|
|
65
|
+
|
|
66
|
+
{If audit passed:}
|
|
67
|
+
✓ Milestone audit passed. Proceeding with completion.
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
1. **Verify readiness:**
|
|
71
|
+
|
|
72
|
+
- Check all phases in milestone have completed plans (SUMMARY.md exists)
|
|
73
|
+
- Present milestone scope and stats
|
|
74
|
+
- Wait for confirmation
|
|
75
|
+
|
|
76
|
+
2. **Gather stats:**
|
|
77
|
+
|
|
78
|
+
- Count phases, plans, tasks
|
|
79
|
+
- Calculate git range, file changes, LOC
|
|
80
|
+
- Extract timeline from git log
|
|
81
|
+
- Present summary, confirm
|
|
82
|
+
|
|
83
|
+
3. **Extract accomplishments:**
|
|
84
|
+
|
|
85
|
+
- Read all phase SUMMARY.md files in milestone range
|
|
86
|
+
- Extract 4-6 key accomplishments
|
|
87
|
+
- Present for approval
|
|
88
|
+
|
|
89
|
+
4. **Archive milestone:**
|
|
90
|
+
|
|
91
|
+
- Create `.planning/milestones/v{{version}}-ROADMAP.md`
|
|
92
|
+
- Extract full phase details from ROADMAP.md
|
|
93
|
+
- Fill milestone-archive.md template
|
|
94
|
+
- Update ROADMAP.md to one-line summary with link
|
|
95
|
+
|
|
96
|
+
5. **Archive requirements:**
|
|
97
|
+
|
|
98
|
+
- Create `.planning/milestones/v{{version}}-REQUIREMENTS.md`
|
|
99
|
+
- Mark all v1 requirements as complete (checkboxes checked)
|
|
100
|
+
- Note requirement outcomes (validated, adjusted, dropped)
|
|
101
|
+
- Delete `.planning/REQUIREMENTS.md` (fresh one created for next milestone)
|
|
102
|
+
|
|
103
|
+
6. **Update PROJECT.md:**
|
|
104
|
+
|
|
105
|
+
- Add "Current State" section with shipped version
|
|
106
|
+
- Add "Next Milestone Goals" section
|
|
107
|
+
- Archive previous content in `<details>` (if v1.1+)
|
|
108
|
+
|
|
109
|
+
7. **Commit and tag:**
|
|
110
|
+
|
|
111
|
+
- Stage: MILESTONES.md, PROJECT.md, ROADMAP.md, STATE.md, archive files
|
|
112
|
+
- Commit: `chore: archive v{{version}} milestone`
|
|
113
|
+
- Tag: `git tag -a v{{version}} -m "[milestone summary]"`
|
|
114
|
+
- Ask about pushing tag
|
|
115
|
+
|
|
116
|
+
8. **Offer next steps:**
|
|
117
|
+
- `/gsd-new-milestone` — start next milestone (questioning → research → requirements → roadmap)
|
|
118
|
+
|
|
119
|
+
</process>
|
|
120
|
+
|
|
121
|
+
<success_criteria>
|
|
122
|
+
|
|
123
|
+
- Milestone archived to `.planning/milestones/v{{version}}-ROADMAP.md`
|
|
124
|
+
- Requirements archived to `.planning/milestones/v{{version}}-REQUIREMENTS.md`
|
|
125
|
+
- `.planning/REQUIREMENTS.md` deleted (fresh for next milestone)
|
|
126
|
+
- ROADMAP.md collapsed to one-line entry
|
|
127
|
+
- PROJECT.md updated with current state
|
|
128
|
+
- Git tag v{{version}} created (if `git.create_tag` enabled)
|
|
129
|
+
- Commit successful
|
|
130
|
+
- User knows next steps (including need for fresh requirements)
|
|
131
|
+
</success_criteria>
|
|
132
|
+
|
|
133
|
+
<critical_rules>
|
|
134
|
+
|
|
135
|
+
- **Load workflow first:** Read complete-milestone.md before executing
|
|
136
|
+
- **Verify completion:** All phases must have SUMMARY.md files
|
|
137
|
+
- **User confirmation:** Wait for approval at verification gates
|
|
138
|
+
- **Archive before deleting:** Always create archive files before updating/deleting originals
|
|
139
|
+
- **One-line summary:** Collapsed milestone in ROADMAP.md should be single line with link
|
|
140
|
+
- **Context efficiency:** Archive keeps ROADMAP.md and REQUIREMENTS.md constant size per milestone
|
|
141
|
+
- **Fresh requirements:** Next milestone starts with `/gsd-new-milestone` which includes requirements definition
|
|
142
|
+
</critical_rules>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-config
|
|
3
|
+
description: "Configure GSD settings — workflow toggles, advanced knobs, integrations, and model profile"
|
|
4
|
+
argument-hint: "[--advanced | --integrations | --profile <name>]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- AskUserQuestion
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
<objective>
|
|
14
|
+
Configure GSD settings interactively with a single consolidated command.
|
|
15
|
+
|
|
16
|
+
Mode routing:
|
|
17
|
+
- **default** (no flag): Common-case toggles (model, research, plan_check, verifier, branching) → settings workflow
|
|
18
|
+
- **--advanced**: Power-user knobs (planning tuning, timeouts, branch templates, cross-AI execution) → settings-advanced workflow
|
|
19
|
+
- **--integrations**: Third-party API keys, code-review CLI routing, agent-skill injection → settings-integrations workflow
|
|
20
|
+
- **--profile <name>**: Switch model profile (quality|balanced|budget|inherit) → set-profile (inline)
|
|
21
|
+
</objective>
|
|
22
|
+
|
|
23
|
+
<routing>
|
|
24
|
+
|
|
25
|
+
| Flag | Action | Workflow |
|
|
26
|
+
|------|--------|----------|
|
|
27
|
+
| (none) | Interactive 5-question common-case config prompt | settings |
|
|
28
|
+
| --advanced | Power-user knobs: planning, execution, discussion, cross-AI, git, runtime | settings-advanced |
|
|
29
|
+
| --integrations | API keys (Brave/Firecrawl/Exa), review CLI routing, agent skills | settings-integrations |
|
|
30
|
+
| --profile <name> | Switch model profile without interactive prompt | gsd-tools query config-set-model-profile |
|
|
31
|
+
|
|
32
|
+
</routing>
|
|
33
|
+
|
|
34
|
+
<execution_context>
|
|
35
|
+
@~/.claude/gsd-core/workflows/settings.md
|
|
36
|
+
@~/.claude/gsd-core/workflows/settings-advanced.md
|
|
37
|
+
@~/.claude/gsd-core/workflows/settings-integrations.md
|
|
38
|
+
</execution_context>
|
|
39
|
+
|
|
40
|
+
<context>
|
|
41
|
+
Arguments: $ARGUMENTS
|
|
42
|
+
|
|
43
|
+
Parse the first token of $ARGUMENTS:
|
|
44
|
+
- If it is `--advanced`: strip the flag, execute settings-advanced workflow
|
|
45
|
+
- If it is `--integrations`: strip the flag, execute settings-integrations workflow
|
|
46
|
+
- If it starts with `--profile`: extract the profile name (remainder after `--profile`), then:
|
|
47
|
+
1. Verify `gsd-tools` is on PATH via `command -v gsd-tools`; if absent, emit the install hint `Install GSD via 'npm i -g @opengsd/gsd-core'` and stop.
|
|
48
|
+
2. Run: `gsd-tools query config-set-model-profile <profile-name> --raw` and display the output verbatim.
|
|
49
|
+
- Otherwise: execute settings workflow (no argument needed)
|
|
50
|
+
</context>
|
|
51
|
+
|
|
52
|
+
<process>
|
|
53
|
+
1. Parse the leading flag (if any) from $ARGUMENTS.
|
|
54
|
+
2. Load and execute the appropriate workflow end-to-end, or run the inline SDK command for --profile.
|
|
55
|
+
3. Preserve all workflow gates from the target workflow.
|
|
56
|
+
</process>
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-debug
|
|
3
|
+
description: "Systematic debugging with persistent state across context resets"
|
|
4
|
+
argument-hint: "[list | status <slug> | continue <slug> | --diagnose] [issue description]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Agent
|
|
10
|
+
- AskUserQuestion
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
<objective>
|
|
15
|
+
Debug issues using scientific method with subagent isolation.
|
|
16
|
+
|
|
17
|
+
**Orchestrator role:** Gather symptoms, spawn gsd-debugger agent, handle checkpoints, spawn continuations.
|
|
18
|
+
|
|
19
|
+
**Flags:**
|
|
20
|
+
- `--diagnose` — Diagnose only. Returns a Root Cause Report without applying a fix.
|
|
21
|
+
|
|
22
|
+
**Subcommands:** `list` · `status <slug>` · `continue <slug>`
|
|
23
|
+
</objective>
|
|
24
|
+
|
|
25
|
+
<available_agent_types>
|
|
26
|
+
Valid GSD subagent types (use exact names — do not fall back to 'general-purpose'):
|
|
27
|
+
- gsd-debug-session-manager — manages debug checkpoint/continuation loop in isolated context
|
|
28
|
+
- gsd-debugger — investigates bugs using scientific method
|
|
29
|
+
</available_agent_types>
|
|
30
|
+
|
|
31
|
+
<execution_context>
|
|
32
|
+
@~/.claude/gsd-core/workflows/debug.md
|
|
33
|
+
</execution_context>
|
|
34
|
+
|
|
35
|
+
<context>
|
|
36
|
+
User's input: $ARGUMENTS
|
|
37
|
+
|
|
38
|
+
Parse subcommands and flags from $ARGUMENTS BEFORE the active-session check:
|
|
39
|
+
- If $ARGUMENTS starts with "list": SUBCMD=list, no further args
|
|
40
|
+
- If $ARGUMENTS starts with "status ": SUBCMD=status, SLUG=remainder (trim whitespace)
|
|
41
|
+
- If $ARGUMENTS starts with "continue ": SUBCMD=continue, SLUG=remainder (trim whitespace)
|
|
42
|
+
- If $ARGUMENTS contains `--diagnose`: SUBCMD=debug, diagnose_only=true, strip `--diagnose` from description
|
|
43
|
+
- Otherwise: SUBCMD=debug, diagnose_only=false
|
|
44
|
+
|
|
45
|
+
Check for active sessions (used for non-list/status/continue flows):
|
|
46
|
+
```bash
|
|
47
|
+
ls .planning/debug/*.md 2>/dev/null | grep -v resolved | head -5
|
|
48
|
+
```
|
|
49
|
+
</context>
|
|
50
|
+
|
|
51
|
+
<process>
|
|
52
|
+
Execute end-to-end.
|
|
53
|
+
</process>
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-discuss-phase
|
|
3
|
+
description: "Gather phase context through adaptive questioning before planning."
|
|
4
|
+
argument-hint: "<phase> [--all] [--auto] [--chain] [--batch] [--analyze] [--text] [--power] [--assumptions]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Glob
|
|
10
|
+
- Grep
|
|
11
|
+
- AskUserQuestion
|
|
12
|
+
- Agent
|
|
13
|
+
- mcp__context7__resolve-library-id
|
|
14
|
+
- mcp__context7__query-docs
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
<objective>
|
|
19
|
+
Extract implementation decisions that downstream agents need — researcher and planner will use CONTEXT.md to know what to investigate and what choices are locked.
|
|
20
|
+
|
|
21
|
+
**How it works:**
|
|
22
|
+
1. Load prior context (PROJECT.md, REQUIREMENTS.md, STATE.md, prior CONTEXT.md files)
|
|
23
|
+
2. Scout codebase for reusable assets and patterns
|
|
24
|
+
3. Analyze phase — skip gray areas already decided in prior phases
|
|
25
|
+
4. Present remaining gray areas — user selects which to discuss
|
|
26
|
+
5. Deep-dive each selected area until satisfied
|
|
27
|
+
6. Create CONTEXT.md with decisions that guide research and planning
|
|
28
|
+
|
|
29
|
+
**Output:** `{phase_num}-CONTEXT.md` — decisions clear enough that downstream agents can act without asking the user again
|
|
30
|
+
</objective>
|
|
31
|
+
|
|
32
|
+
<execution_context>
|
|
33
|
+
Workflow files are loaded on-demand in the <process> section below — not upfront.
|
|
34
|
+
Do not pre-load any workflow files before reading the mode routing instructions.
|
|
35
|
+
</execution_context>
|
|
36
|
+
|
|
37
|
+
<runtime_note>
|
|
38
|
+
**Copilot (VS Code):** Use `vscode_askquestions` wherever this workflow calls `AskUserQuestion`. They are equivalent — `vscode_askquestions` is the VS Code Copilot implementation of the same interactive question API.
|
|
39
|
+
</runtime_note>
|
|
40
|
+
|
|
41
|
+
<context>
|
|
42
|
+
Phase number: $ARGUMENTS (required)
|
|
43
|
+
|
|
44
|
+
Context files are resolved in-workflow using `init phase-op` and roadmap/state tool calls.
|
|
45
|
+
</context>
|
|
46
|
+
|
|
47
|
+
<process>
|
|
48
|
+
**Mode routing:**
|
|
49
|
+
```bash
|
|
50
|
+
_GSD_SHIM_NAME="gsd-tools.cjs"; _GSD_RUNTIME_ROOT="${RUNTIME_DIR:-$(git rev-parse --show-toplevel 2>/dev/null || pwd)}"; GSD_TOOLS="${_GSD_RUNTIME_ROOT}/gsd-core/bin/${_GSD_SHIM_NAME}"; if [ -f "$GSD_TOOLS" ]; then gsd_run() { node "$GSD_TOOLS" "$@"; }; elif [ -f "${_GSD_RUNTIME_ROOT}/.claude/gsd-core/bin/${_GSD_SHIM_NAME}" ]; then GSD_TOOLS="${_GSD_RUNTIME_ROOT}/.claude/gsd-core/bin/${_GSD_SHIM_NAME}"; gsd_run() { node "$GSD_TOOLS" "$@"; }; elif command -v gsd-tools >/dev/null 2>&1; then GSD_TOOLS="$(command -v gsd-tools)"; gsd_run() { "$GSD_TOOLS" "$@"; }; elif [ -f "$HOME/.claude/gsd-core/bin/${_GSD_SHIM_NAME}" ]; then GSD_TOOLS="$HOME/.claude/gsd-core/bin/${_GSD_SHIM_NAME}"; gsd_run() { node "$GSD_TOOLS" "$@"; }; else echo "ERROR: gsd-tools.cjs not found at $GSD_TOOLS and gsd-tools is not on PATH. Run: npx -y @opengsd/gsd-core@latest --claude --local" >&2; exit 1; fi
|
|
51
|
+
DISCUSS_MODE=$(gsd_run query config-get workflow.discuss_mode 2>/dev/null || echo "discuss")
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
If `--assumptions` is in $ARGUMENTS:
|
|
55
|
+
Read and execute `~/.claude/gsd-core/workflows/list-phase-assumptions.md` end-to-end.
|
|
56
|
+
Stop here.
|
|
57
|
+
|
|
58
|
+
Otherwise, if `DISCUSS_MODE` is `"assumptions"`:
|
|
59
|
+
Read and execute `~/.claude/gsd-core/workflows/discuss-phase-assumptions.md` end-to-end.
|
|
60
|
+
|
|
61
|
+
Otherwise (`"discuss"` / unset / any other value):
|
|
62
|
+
Read and execute `~/.claude/gsd-core/workflows/discuss-phase.md` end-to-end.
|
|
63
|
+
|
|
64
|
+
**MANDATORY:** Read the appropriate workflow file BEFORE taking any action. The objective and success_criteria sections in this command file are summaries — the workflow file contains the complete step-by-step process with all required behaviors, config checks, and interaction patterns. Do not improvise from the summary.
|
|
65
|
+
|
|
66
|
+
**Lazy loading:** `templates/context.md` is loaded inside the `write_context` step of the active workflow. `discuss-phase-power.md` is loaded inside `discuss-phase.md` when `--power` is detected. Do not load either here.
|
|
67
|
+
</process>
|
|
68
|
+
|
|
69
|
+
<success_criteria>
|
|
70
|
+
- Prior context loaded and applied (no re-asking decided questions)
|
|
71
|
+
- Gray areas identified through intelligent analysis
|
|
72
|
+
- User chose which areas to discuss
|
|
73
|
+
- Each selected area explored until satisfied
|
|
74
|
+
- Scope creep redirected to deferred ideas
|
|
75
|
+
- CONTEXT.md captures decisions, not vague vision
|
|
76
|
+
- User knows next steps
|
|
77
|
+
</success_criteria>
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-docs-update
|
|
3
|
+
description: "Generate or update project documentation verified against the codebase"
|
|
4
|
+
argument-hint: "[--force] [--verify-only]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Edit
|
|
9
|
+
- Bash
|
|
10
|
+
- Glob
|
|
11
|
+
- Grep
|
|
12
|
+
- Agent
|
|
13
|
+
- AskUserQuestion
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
<objective>
|
|
17
|
+
Generate and update up to 9 documentation files for the current project. Each doc type is written by a gsd-doc-writer subagent that explores the codebase directly — no hallucinated paths, phantom endpoints, or stale signatures.
|
|
18
|
+
|
|
19
|
+
Flag handling rule:
|
|
20
|
+
- The optional flags documented below are available behaviors, not implied active behaviors
|
|
21
|
+
- A flag is active only when its literal token appears in `$ARGUMENTS`
|
|
22
|
+
- If a documented flag is absent from `$ARGUMENTS`, treat it as inactive
|
|
23
|
+
- `--force`: skip preservation prompts, regenerate all docs regardless of existing content or GSD markers
|
|
24
|
+
- `--verify-only`: check existing docs for accuracy against codebase, no generation (full verification requires Phase 4 verifier)
|
|
25
|
+
- If `--force` and `--verify-only` both appear in `$ARGUMENTS`, `--force` takes precedence
|
|
26
|
+
</objective>
|
|
27
|
+
|
|
28
|
+
<execution_context>
|
|
29
|
+
@~/.claude/gsd-core/workflows/docs-update.md
|
|
30
|
+
</execution_context>
|
|
31
|
+
|
|
32
|
+
<context>
|
|
33
|
+
Arguments: $ARGUMENTS
|
|
34
|
+
|
|
35
|
+
**Available optional flags (documentation only — not automatically active):**
|
|
36
|
+
- `--force` — Regenerate all docs. Overwrites hand-written and GSD docs alike. No preservation prompts.
|
|
37
|
+
- `--verify-only` — Check existing docs for accuracy against the codebase. No files are written. Reports VERIFY marker count. Full codebase fact-checking requires the gsd-doc-verifier agent (Phase 4).
|
|
38
|
+
|
|
39
|
+
**Active flags must be derived from `$ARGUMENTS`:**
|
|
40
|
+
- `--force` is active only if the literal `--force` token is present in `$ARGUMENTS`
|
|
41
|
+
- `--verify-only` is active only if the literal `--verify-only` token is present in `$ARGUMENTS`
|
|
42
|
+
- If neither token appears, run the standard full-phase generation flow
|
|
43
|
+
- Do not infer that a flag is active just because it is documented in this prompt
|
|
44
|
+
</context>
|
|
45
|
+
|
|
46
|
+
<process>
|
|
47
|
+
Execute end-to-end.
|
|
48
|
+
Preserve all workflow gates (preservation_check, flag handling, wave execution, monorepo dispatch, commit, reporting).
|
|
49
|
+
</process>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-eval-review
|
|
3
|
+
description: "Audit an executed AI phase's evaluation coverage and produce an EVAL-REVIEW.md remediation plan."
|
|
4
|
+
argument-hint: "[phase number]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Glob
|
|
10
|
+
- Grep
|
|
11
|
+
- Agent
|
|
12
|
+
- AskUserQuestion
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
<objective>
|
|
16
|
+
Conduct a retroactive evaluation coverage audit of a completed AI phase.
|
|
17
|
+
Checks whether the evaluation strategy from AI-SPEC.md was implemented.
|
|
18
|
+
Produces EVAL-REVIEW.md with score, verdict, gaps, and remediation plan.
|
|
19
|
+
</objective>
|
|
20
|
+
|
|
21
|
+
<execution_context>
|
|
22
|
+
@~/.claude/gsd-core/workflows/eval-review.md
|
|
23
|
+
@~/.claude/gsd-core/references/ai-evals.md
|
|
24
|
+
</execution_context>
|
|
25
|
+
|
|
26
|
+
<context>
|
|
27
|
+
Phase: $ARGUMENTS — optional, defaults to last completed phase.
|
|
28
|
+
</context>
|
|
29
|
+
|
|
30
|
+
<process>
|
|
31
|
+
Execute end-to-end.
|
|
32
|
+
Preserve all workflow gates.
|
|
33
|
+
</process>
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-execute-phase
|
|
3
|
+
description: "Execute all plans in a phase with wave-based parallelization"
|
|
4
|
+
argument-hint: "<phase-number> [--wave N] [--gaps-only] [--interactive] [--tdd]"
|
|
5
|
+
effort: max
|
|
6
|
+
allowed-tools:
|
|
7
|
+
- Read
|
|
8
|
+
- Write
|
|
9
|
+
- Edit
|
|
10
|
+
- Glob
|
|
11
|
+
- Grep
|
|
12
|
+
- Bash
|
|
13
|
+
- Agent
|
|
14
|
+
- TodoWrite
|
|
15
|
+
- AskUserQuestion
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
<objective>
|
|
19
|
+
Execute all plans in a phase using wave-based parallel execution.
|
|
20
|
+
|
|
21
|
+
Orchestrator stays lean: discover plans, analyze dependencies, group into waves, spawn subagents, collect results. Each subagent loads the full execute-plan context and handles its own plan.
|
|
22
|
+
|
|
23
|
+
Optional wave filter:
|
|
24
|
+
- `--wave N` executes only Wave `N` for pacing, quota management, or staged rollout
|
|
25
|
+
- phase verification/completion still only happens when no incomplete plans remain after the selected wave finishes
|
|
26
|
+
|
|
27
|
+
Flag handling rule:
|
|
28
|
+
- The optional flags documented below are available behaviors, not implied active behaviors
|
|
29
|
+
- A flag is active only when its literal token appears in `$ARGUMENTS`
|
|
30
|
+
- If a documented flag is absent from `$ARGUMENTS`, treat it as inactive
|
|
31
|
+
|
|
32
|
+
Context budget: ~15% orchestrator, 100% fresh per subagent.
|
|
33
|
+
</objective>
|
|
34
|
+
|
|
35
|
+
<execution_context>
|
|
36
|
+
@~/.claude/gsd-core/workflows/execute-phase.md
|
|
37
|
+
@~/.claude/gsd-core/references/ui-brand.md
|
|
38
|
+
</execution_context>
|
|
39
|
+
|
|
40
|
+
<runtime_note>
|
|
41
|
+
**Copilot (VS Code):** Use `vscode_askquestions` wherever this workflow calls `AskUserQuestion`. They are equivalent — `vscode_askquestions` is the VS Code Copilot implementation of the same interactive question API.
|
|
42
|
+
</runtime_note>
|
|
43
|
+
|
|
44
|
+
<context>
|
|
45
|
+
Phase: $ARGUMENTS
|
|
46
|
+
|
|
47
|
+
**Available optional flags (documentation only — not automatically active):**
|
|
48
|
+
- `--wave N` — Execute only Wave `N` in the phase. Use when you want to pace execution or stay inside usage limits.
|
|
49
|
+
- `--gaps-only` — Execute only gap closure plans (plans with `gap_closure: true` in frontmatter). Use after verify-work creates fix plans.
|
|
50
|
+
- `--interactive` — Execute plans sequentially inline (no subagents) with user checkpoints between tasks. Lower token usage, pair-programming style. Best for small phases, bug fixes, and verification gaps.
|
|
51
|
+
|
|
52
|
+
**Active flags must be derived from `$ARGUMENTS`:**
|
|
53
|
+
- `--wave N` is active only if the literal `--wave` token is present in `$ARGUMENTS`
|
|
54
|
+
- `--gaps-only` is active only if the literal `--gaps-only` token is present in `$ARGUMENTS`
|
|
55
|
+
- `--interactive` is active only if the literal `--interactive` token is present in `$ARGUMENTS`
|
|
56
|
+
- If none of these tokens appear, run the standard full-phase execution flow with no flag-specific filtering
|
|
57
|
+
- Do not infer that a flag is active just because it is documented in this prompt
|
|
58
|
+
|
|
59
|
+
Context files are resolved inside the workflow via `gsd-tools query init.execute-phase` and per-subagent `<files_to_read>` blocks.
|
|
60
|
+
</context>
|
|
61
|
+
|
|
62
|
+
<process>
|
|
63
|
+
Execute end-to-end.
|
|
64
|
+
Preserve all workflow gates (wave execution, checkpoint handling, verification, state updates, routing).
|
|
65
|
+
</process>
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-explore
|
|
3
|
+
description: "Socratic ideation and idea routing — think through ideas before committing to plans"
|
|
4
|
+
allowed-tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Write
|
|
7
|
+
- Bash
|
|
8
|
+
- Grep
|
|
9
|
+
- Glob
|
|
10
|
+
- Agent
|
|
11
|
+
- AskUserQuestion
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
<objective>
|
|
15
|
+
Open-ended Socratic ideation session. Guides the developer through exploring an idea via
|
|
16
|
+
probing questions, optionally spawns research, then routes outputs to the appropriate GSD
|
|
17
|
+
artifacts (notes, todos, seeds, research questions, requirements, or new phases).
|
|
18
|
+
|
|
19
|
+
Accepts an optional topic argument: `/gsd-explore authentication strategy`
|
|
20
|
+
</objective>
|
|
21
|
+
|
|
22
|
+
<execution_context>
|
|
23
|
+
@~/.claude/gsd-core/workflows/explore.md
|
|
24
|
+
</execution_context>
|
|
25
|
+
|
|
26
|
+
<process>
|
|
27
|
+
Execute end-to-end.
|
|
28
|
+
</process>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-extract-learnings
|
|
3
|
+
description: "Extract decisions, lessons, patterns, and surprises from completed phase artifacts"
|
|
4
|
+
argument-hint: "<phase-number>"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Grep
|
|
10
|
+
- Glob
|
|
11
|
+
- Agent
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
<objective>
|
|
15
|
+
Extract structured learnings from completed phase artifacts (PLAN.md, SUMMARY.md, VERIFICATION.md, UAT.md, STATE.md) into a LEARNINGS.md file that captures decisions, lessons learned, patterns discovered, and surprises encountered.
|
|
16
|
+
</objective>
|
|
17
|
+
|
|
18
|
+
<execution_context>
|
|
19
|
+
@~/.claude/gsd-core/workflows/extract-learnings.md
|
|
20
|
+
</execution_context>
|
|
21
|
+
|
|
22
|
+
Execute the extract-learnings workflow from @~/.claude/gsd-core/workflows/extract-learnings.md end-to-end.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-fast
|
|
3
|
+
description: "Execute a trivial task inline — no subagents, no planning overhead"
|
|
4
|
+
argument-hint: "[task description]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Edit
|
|
9
|
+
- Bash
|
|
10
|
+
- Grep
|
|
11
|
+
- Glob
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
<objective>
|
|
16
|
+
Execute a trivial task directly in the current context without spawning subagents
|
|
17
|
+
or generating PLAN.md files. For tasks too small to justify planning overhead:
|
|
18
|
+
typo fixes, config changes, small refactors, forgotten commits, simple additions.
|
|
19
|
+
|
|
20
|
+
This is NOT a replacement for /gsd-quick — use /gsd-quick for anything that
|
|
21
|
+
needs research, multi-step planning, or verification. /gsd-fast is for tasks
|
|
22
|
+
you could describe in one sentence and execute in under 2 minutes.
|
|
23
|
+
</objective>
|
|
24
|
+
|
|
25
|
+
<execution_context>
|
|
26
|
+
@~/.claude/gsd-core/workflows/fast.md
|
|
27
|
+
</execution_context>
|
|
28
|
+
|
|
29
|
+
<process>
|
|
30
|
+
Execute end-to-end.
|
|
31
|
+
</process>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gsd-forensics
|
|
3
|
+
description: "Post-mortem investigation for failed GSD workflows — diagnoses what went wrong."
|
|
4
|
+
argument-hint: "[problem description]"
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Grep
|
|
10
|
+
- Glob
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
<objective>
|
|
15
|
+
Investigate what went wrong during a GSD workflow execution. Analyzes git history, `.planning/` artifacts, and file system state to detect anomalies and generate a structured diagnostic report.
|
|
16
|
+
|
|
17
|
+
Purpose: Diagnose failed or stuck workflows so the user can understand root cause and take corrective action.
|
|
18
|
+
Output: Forensic report saved to `.planning/forensics/`, presented inline, with optional issue creation.
|
|
19
|
+
</objective>
|
|
20
|
+
|
|
21
|
+
<execution_context>
|
|
22
|
+
@~/.claude/gsd-core/workflows/forensics.md
|
|
23
|
+
</execution_context>
|
|
24
|
+
|
|
25
|
+
<context>
|
|
26
|
+
**Data sources:**
|
|
27
|
+
- `git log` (recent commits, patterns, time gaps)
|
|
28
|
+
- `git status` / `git diff` (uncommitted work, conflicts)
|
|
29
|
+
- `.planning/STATE.md` (current position, session history)
|
|
30
|
+
- `.planning/ROADMAP.md` (phase scope and progress)
|
|
31
|
+
- `.planning/phases/*/` (PLAN.md, SUMMARY.md, VERIFICATION.md, CONTEXT.md)
|
|
32
|
+
- `.planning/reports/SESSION_REPORT.md` (last session outcomes)
|
|
33
|
+
|
|
34
|
+
**User input:**
|
|
35
|
+
- Problem description: $ARGUMENTS (optional — will ask if not provided)
|
|
36
|
+
</context>
|
|
37
|
+
|
|
38
|
+
<process>
|
|
39
|
+
Execute end-to-end.
|
|
40
|
+
</process>
|
|
41
|
+
|
|
42
|
+
<success_criteria>
|
|
43
|
+
- Evidence gathered from all available data sources
|
|
44
|
+
- At least 4 anomaly types checked (stuck loop, missing artifacts, abandoned work, crash/interruption)
|
|
45
|
+
- Structured forensic report written to `.planning/forensics/report-{timestamp}.md`
|
|
46
|
+
- Report presented inline with findings, anomalies, and recommendations
|
|
47
|
+
- Interactive investigation offered for deeper analysis
|
|
48
|
+
- GitHub issue creation offered if actionable findings exist
|
|
49
|
+
</success_criteria>
|
|
50
|
+
|
|
51
|
+
<critical_rules>
|
|
52
|
+
- **Read-only investigation:** Do not modify project source files during forensics. Only write the forensic report and update STATE.md session tracking.
|
|
53
|
+
- **Redact sensitive data:** Strip absolute paths, API keys, tokens from reports and issues.
|
|
54
|
+
- **Ground findings in evidence:** Every anomaly must cite specific commits, files, or state data.
|
|
55
|
+
- **No speculation without evidence:** If data is insufficient, say so — do not fabricate root causes.
|
|
56
|
+
</critical_rules>
|