ADR-0002: commands/gsd/*.md contract now enforced at two layers: LINT (scripts/lint-command-contract.cjs — new CI step): - name: present, starts with gsd: or gsd- - description: non-empty - allowed-tools: non-empty, all entries canonical - execution_context @-refs: resolve on disk, no trailing prose on same line - handles both @~/ and $HOME/ path prefixes TEST (tests/command-contract.test.cjs — 361 assertions): - Behavioral contract for all 65 command files - Replaces scattered coverage in enh-2790 + bug-3135 - Per-command per-rule test — one failure names the exact file + rule CI (.github/workflows/test.yml): - 'Lint — command contract (ADR-0002)' step added to lint-tests job PROSE @-REF CLEANUP (39 command files, ~900 tokens/invocation recovered): - Removed redundant @~/.claude/get-shit-done/... paths from <process> prose - execution_context block is now the single authoritative load declaration - Routing commands (sketch, spike, update, pause-work, etc.) keep routing instructions; only the inert path token is stripped WORKFLOW EXTRACTION (debug.md + thread.md, ~15,000 chars / ~3,750 tokens): - get-shit-done/workflows/debug.md: full process extracted from commands/gsd/debug.md - get-shit-done/workflows/thread.md: full process extracted from commands/gsd/thread.md - Command files reduced to frontmatter + objective + execution_context + context - debug.md: 9,603 → 1,703 chars; thread.md: 7,868 → 585 chars RENAME: - get-shit-done/workflows/extract_learnings.md → extract-learnings.md (aligns with hyphen convention of all other workflow files) DOCS: - docs/INVENTORY.md: count 85→87, new rows, rename row, fix add-todo --backlog attribution - docs/INVENTORY-MANIFEST.json: +debug.md +thread.md +extract-learnings.md -extract_learnings.md Closes ADR-0002 implementation.
3.3 KiB
name, description, argument-hint, agent, allowed-tools
| name | description | argument-hint | agent | allowed-tools | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| gsd:plan-phase | Create detailed phase plan (PLAN.md) with verification loop | [phase] [--auto] [--research] [--skip-research] [--research-phase <N>] [--view] [--gaps] [--skip-verify] [--prd <file>] [--reviews] [--text] [--tdd] [--mvp] | gsd-planner |
|
Default flow: Research (if needed) → Plan → Verify → Done
Research-only mode (--research-phase <N>): Spawn gsd-phase-researcher for phase N, write RESEARCH.md, then exit before the planner runs. Useful for cross-phase research, doc review before committing to a planning approach, and correction-without-replanning loops where iterating on research alone is dramatically cheaper than re-spawning the planner. Replaces the deleted /gsd-research-phase command (#3042).
Research-only modifiers:
- No flag — when
RESEARCH.mdalready exists, prompt the user to chooseupdate / view / skip. --research— force-refresh: re-spawn the researcher unconditionally, no prompt. Skips the existing-RESEARCH.md menu.--view— view-only: print existingRESEARCH.mdto stdout. Does not spawn the researcher. Cheapest mode for the correction-without-replanning loop. If noRESEARCH.mdexists yet, errors with a hint to drop--view.
Orchestrator role: Parse arguments, validate phase, research domain (unless skipped), spawn gsd-planner, verify with gsd-plan-checker, iterate until pass or max iterations, present results.
<execution_context>
@/.claude/get-shit-done/workflows/plan-phase.md
@/.claude/get-shit-done/references/ui-brand.md
</execution_context>
<runtime_note>
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. Do not skip questioning steps because AskUserQuestion appears unavailable; use vscode_askquestions instead.
</runtime_note>
Flags:
--research— Force re-research even if RESEARCH.md exists--skip-research— Skip research, go straight to planning--gaps— Gap closure mode (reads VERIFICATION.md, skips research)--skip-verify— Skip verification loop--prd <file>— Use a PRD/acceptance criteria file instead of discuss-phase. Parses requirements into CONTEXT.md automatically. Skips discuss-phase entirely.--reviews— Replan incorporating cross-AI review feedback from REVIEWS.md (produced by/gsd-review)--text— Use plain-text numbered lists instead of TUI menus (required for/rcremote sessions)--mvp— Vertical MVP mode. Planner organizes tasks as feature slices (UI→API→DB) instead of horizontal layers. On Phase 1 of a new project, also emitsSKELETON.md(Walking Skeleton). Can be persisted on a phase via**Mode:** mvpin ROADMAP.md.
Normalize phase input in step 2 before any directory lookups.
Execute end-to-end. Preserve all workflow gates (validation, research, planning, verification loop, routing).