Files
get-shit-done/commands/gsd/spec-phase.md
Tom Boucher 73c1af5168 fix(#2543): replace legacy /gsd-<cmd> syntax with /gsd:<cmd> across all source files (#2595)
Commands are now installed as commands/gsd/<name>.md and invoked as
/gsd:<name> in Claude Code. The old hyphen form /gsd-<name> was still
hardcoded in hundreds of places across workflows, references, templates,
lib modules, and command files — causing "Unknown command" errors
whenever GSD suggested a command to the user.

Replace all /gsd-<cmd> occurrences where <cmd> is a known command name
(derived at runtime from commands/gsd/*.md) using a targeted Node.js
script. Agent names, tool names (gsd-sdk, gsd-tools), directory names,
and path fragments are not touched.

Adds regression test tests/bug-2543-gsd-slash-namespace.test.cjs that
enforces zero legacy occurrences going forward. Removes inverted
tests/stale-colon-refs.test.cjs (bug #1748) which enforced the now-obsolete
hyphen form; the new bug-2543 test supersedes it. Updates 5 assertion
tests that hardcoded the old hyphen form to accept the new colon form.

Closes #2543

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 12:04:25 -04:00

2.6 KiB

name, description, argument-hint, allowed-tools
name description argument-hint allowed-tools
gsd:spec-phase Socratic spec refinement — clarify WHAT a phase delivers with ambiguity scoring before discuss-phase. Produces a SPEC.md with falsifiable requirements locked before implementation decisions begin. <phase> [--auto] [--text]
Read
Write
Bash
Glob
Grep
AskUserQuestion
Clarify phase requirements through structured Socratic questioning with quantitative ambiguity scoring.

Position in workflow: spec-phase → discuss-phase → plan-phase → execute-phase → verify

How it works:

  1. Load phase context (PROJECT.md, REQUIREMENTS.md, ROADMAP.md, STATE.md)
  2. Scout the codebase — understand current state before asking questions
  3. Run Socratic interview loop (up to 6 rounds, rotating perspectives)
  4. Score ambiguity across 4 weighted dimensions after each round
  5. Gate: ambiguity ≤ 0.20 AND all dimensions meet minimums → write SPEC.md
  6. Commit SPEC.md — discuss-phase picks it up automatically on next run

Output: {phase_dir}/{padded_phase}-SPEC.md — falsifiable requirements that lock "what/why" before discuss-phase handles "how"

<execution_context> @/.claude/get-shit-done/workflows/spec-phase.md @/.claude/get-shit-done/templates/spec.md </execution_context>

<runtime_note> Copilot (VS Code): Use vscode_askquestions wherever this workflow calls AskUserQuestion. They are equivalent. </runtime_note>

Phase number: $ARGUMENTS (required)

Flags:

  • --auto — Skip interactive questions; Claude selects recommended defaults and writes SPEC.md
  • --text — Use plain-text numbered lists instead of TUI menus (required for /rc remote sessions)

Context files are resolved in-workflow using init phase-op.

Execute the spec-phase workflow from @~/.claude/get-shit-done/workflows/spec-phase.md end-to-end.

MANDATORY: Read the workflow file BEFORE taking any action. The workflow contains the complete step-by-step process including the Socratic interview loop, ambiguity scoring gate, and SPEC.md generation. Do not improvise from the objective summary above.

<success_criteria>

  • Codebase scouted for current state before questioning begins
  • All 4 ambiguity dimensions scored after each interview round
  • Gate passed: ambiguity ≤ 0.20 AND all dimension minimums met
  • SPEC.md written with falsifiable requirements, explicit boundaries, and acceptance criteria
  • SPEC.md committed atomically
  • User knows they can now run /gsd:discuss-phase which will load SPEC.md automatically </success_criteria>