test: replace deny-list parity tests with polarity-inverted live-registry (#3049) (#3284)

* test: reproduce Windows SDK not found after fresh npx install (#3211)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test: red — docs-parity live-registry tests fail against stub helper (#3049)

Adds:
- tests/helpers/live-command-registry.cjs (stub: returns empty Set)
- tests/docs-parity-live-registry.test.cjs (new polarity-inverted test)
- tests/fixtures/live-command-registry/ (fixture .md files)

All parity and helper-contract tests fail because the stub returns an
empty registry. This is the intentional RED state before GREEN
implementation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat(test-helpers): live-command-registry derives canonical tokens from commands/gsd/*.md (#3049)

Implements GREEN phase:
- tests/helpers/live-command-registry.cjs: walks commands/gsd/*.md, parses
  YAML frontmatter name: field, emits /gsd-slug, /gsd:slug, $gsd-slug per
  command. Memoized per process. Fails loud on malformed frontmatter (k302).
- tests/docs-parity-live-registry.test.cjs: updated with INTERNAL_COMPONENT_SLUGS
  exemption for path-component and placeholder tokens (gsd-build from GitHub
  org URLs, gsd-workspaces from ~/gsd-workspaces/ paths, gsd-tools from
  bin/gsd-tools.cjs paths, etc.)

Docs drift caught and fixed:
- ns-* rename: /gsd-ns-workflow→/gsd-workflow etc. in COMMANDS, FEATURES,
  INVENTORY, USER-GUIDE (6 commands across 4 English files)
- /gsd-scan → /gsd-map-codebase --fast (FEATURES, INVENTORY, USER-GUIDE)
- /gsd-note → /gsd-capture (FEATURES, issue-driven-orchestration, ja-JP, ko-KR)
- /gsd-do → /gsd-fast (FEATURES, ja-JP, ko-KR)
- /gsd-from-gsd2 → /gsd-import --from-gsd2 (CLI-TOOLS, FEATURES, INVENTORY)
- /gsd-verify-phase → /gsd-validate-phase (STATE-MD-LIFECYCLE)
- /gsd-settings-integrations → /gsd-settings or /gsd-config --integrations (CLI-TOOLS)
- /gsd-dev-preferences removed from profile-user artifact lists (AGENTS, COMMANDS,
  FEATURES in English, ja-JP, ko-KR)
- /gsd-select-framework removed from gsd-framework-selector spawner list
  (AGENTS, INVENTORY)

All 28 new tests pass.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* refactor(test): replace deny-list parity tests with polarity-inverted live-registry approach (#3049)

- Delete bug-3010-reapply-patches-references.test.cjs (hardcoded deny-list)
- Delete bug-3029-3034-stale-command-routes.test.cjs (hardcoded deny-list)
- Delete bug-3042-3044-research-flag-and-stale-refs.test.cjs (deny-list + frontmatter checks)
- Add tests/skill-frontmatter-contract.test.cjs (frontmatter structural checks extracted from deleted file)
- Update tests/commands-doc-parity.test.cjs to derive slug from name: frontmatter field
  instead of filename, so ns-* commands resolve to their actual deployed tokens

Closes #3049

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test: annotate commands-doc-parity with source-text-is-the-product exemption (#3049 lint fix)

The readFileSync on commands/gsd/*.md reads product markdown whose deployed
text IS what the user sees — content.startsWith('---') detects YAML frontmatter
in those files, not source-code structure. Add the allow-test-rule exemption
matching the same rationale used in docs-parity-live-registry.test.cjs.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test: walk docs/** recursively to cover nested locale trees (CR finding 7)

Replaced the non-recursive listMdFiles() with a hand-rolled DFS walker
compatible with Node 20+. Surfaces unreadable-directory errors as stderr
warnings (PRED.k302) rather than silently skipping.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test: annotate live-command-registry helper and commands-doc-parity with source-text exemptions (CR findings 6, 8)

Adds allow-test-rule comments to suppress lint-no-source-grep false
positives on YAML frontmatter structure checks in both files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test: anchor --research-phase assertions to arg-parsing section and verify combined refresh (CR findings 9, 10)

Finding 9: scopes --research-phase check to within 1200 chars of the flag
description section header, preventing false positives from prose mentions.

Finding 10: tightens the force-refresh assertion to require BOTH --research
and force/refresh semantics within the --research-phase description section,
verifying the combined-mode contract rather than standalone --research presence.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test: fix execSync mock to accept opts parameter, forward to saved implementation (CR finding 5)

The mock at line 212 dropped the options parameter when delegating to
savedExecSync. Updated to (cmd, opts) signature and pass opts through.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: correct routing entrypoint, --fast default, /gsd-review collision, verifying-stage mapping (CR findings 1-4)

Finding 1: Change Freeform Routing command from /gsd-fast to /gsd-progress --do.
/gsd-fast is the inline trivial-task executor, not the routing entrypoint.

Finding 2: Clarify that /gsd-map-codebase --fast REQ-SCAN-02 default (tech+arch)
runs as a single combined-focus agent, resolving the contradiction with REQ-SCAN-01.

Finding 3: Rename the namespace router /gsd-review to /gsd-quality across all docs,
command file, and help.md to eliminate the naming collision with the concrete
cross-AI peer-review command (review.md, name: gsd:review).

Finding 4: Replace /gsd-validate-phase with /gsd-verify-work in the STATE-MD-LIFECYCLE.md
verifying-stage table. /gsd-validate-phase is the retroactive Nyquist-validation
flow, not the normal phase-verification step.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs+test: fix locale doc drift surfaced by recursive walker (CR finding 7 follow-up)

The recursive listMdFiles() walker newly covered docs/**/*.md subdirs.
Stale command references in locale docs are now caught and fixed:

- docs/zh-CN/references/model-profiles.md: remove /gsd-set-profile (deleted command);
  config.json is the current mechanism
- docs/zh-CN/references/ui-brand.md: remove /gsd-alternative-1/2 template placeholders
- docs/{ja-JP,ko-KR,pt-BR}/superpowers/specs/2026-03-20-*: replace
  /gsd-new-workspace, /gsd-list-workspaces, /gsd-remove-workspace with
  /gsd-workspace --new / --list / --remove (consolidated in #2790)

Also adds smoke- and alternative-{1,2} to INTERNAL_COMPONENT_SLUGS (filesystem
path and template placeholder patterns, not slash commands) and introduces
listEnglishMdFiles() to scope the English parity check to docs/ excluding
locale subdirectories (which have their own per-locale describe blocks).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: add bash language tag to fenced code blocks in ja-JP and ko-KR workspace specs (CR round 2)

Satisfies MD040 fenced-code-language requirement. These blocks contain
shell commands and were missing the language specifier.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Tom Boucher
2026-05-09 02:49:19 -04:00
committed by GitHub
parent d241227129
commit 3aaed8f5d7
33 changed files with 937 additions and 1014 deletions

View File

@@ -401,7 +401,7 @@ runs its default whole-repo scan.
| **Tools** | Read |
| **Model (balanced)** | Sonnet |
| **Color** | Magenta |
| **Produces** | `USER-PROFILE.md`, `/gsd-dev-preferences`, `CLAUDE.md` profile section |
| **Produces** | `USER-PROFILE.md`, `CLAUDE.md` profile section |
**Behavioral Dimensions:**
Communication style, decision patterns, debugging approach, UX preferences, vendor choices, frustration triggers, learning style, explanation depth.
@@ -480,7 +480,7 @@ Communication style, decision patterns, debugging approach, UX preferences, vend
## Advanced and Specialized Agents
Twelve additional agents ship under `agents/gsd-*.md` and are used by specialty workflows (`/gsd-ai-integration-phase`, `/gsd-eval-review`, `/gsd-code-review`, `/gsd-code-review --fix`, `/gsd-debug`, `/gsd-map-codebase --query`, `/gsd-select-framework`, `/gsd-ingest-docs`) and by the planner pipeline. Each carries full frontmatter in its agent file; the stubs below are concise by design. The authoritative roster (with spawner and primary-doc status per agent) lives in [`docs/INVENTORY.md`](INVENTORY.md).
Twelve additional agents ship under `agents/gsd-*.md` and are used by specialty workflows (`/gsd-ai-integration-phase`, `/gsd-eval-review`, `/gsd-code-review`, `/gsd-code-review --fix`, `/gsd-debug`, `/gsd-map-codebase --query`, `/gsd-ingest-docs`) and by the planner pipeline. Each carries full frontmatter in its agent file; the stubs below are concise by design. The authoritative roster (with spawner and primary-doc status per agent) lives in [`docs/INVENTORY.md`](INVENTORY.md).
### gsd-pattern-mapper
@@ -648,7 +648,7 @@ Twelve additional agents ship under `agents/gsd-*.md` and are used by specialty
| Property | Value |
|----------|-------|
| **Spawned by** | `/gsd-ai-integration-phase`, `/gsd-select-framework` |
| **Spawned by** | `/gsd-ai-integration-phase` |
| **Parallelism** | Single instance (interactive) |
| **Tools** | Read, Bash, Grep, Glob, WebSearch, AskUserQuestion |
| **Model (balanced)** | Sonnet |

View File

@@ -122,7 +122,7 @@ User-facing entry points. Each file contains YAML frontmatter (name, description
#### Two-stage hierarchical routing (v1.40, [#2792](https://github.com/gsd-build/get-shit-done/issues/2792))
To keep the eager skill-listing token cost low, v1.40 introduces six namespace **meta-skills** (`gsd-workflow`, `gsd-project`, `gsd-review`, `gsd-context`, `gsd-manage`, `gsd-ideate` — sourced from `commands/gsd/ns-*.md`, but the invocable `name:` is the bare form shown here) layered above the concrete sub-skills. The model sees 6 namespace routers (~120 tokens) instead of a flat 86-skill listing (~2,150 tokens), selects a namespace, then routes to the concrete sub-skill via a routing table embedded in the namespace router's body. Namespace skills are **additive** — every concrete command is still directly invocable.
To keep the eager skill-listing token cost low, v1.40 introduces six namespace **meta-skills** (`gsd-workflow`, `gsd-project`, `gsd-quality`, `gsd-context`, `gsd-manage`, `gsd-ideate` — sourced from `commands/gsd/ns-*.md`, but the invocable `name:` is the bare form shown here) layered above the concrete sub-skills. The model sees 6 namespace routers (~120 tokens) instead of a flat 86-skill listing (~2,150 tokens), selects a namespace, then routes to the concrete sub-skill via a routing table embedded in the namespace router's body. Namespace skills are **additive** — every concrete command is still directly invocable.
The router descriptions use pipe-separated keyword tags (≤ 60 chars) per the Tool Attention research showing keyword-dense tags outperform prose for routing at ~40 % the token cost.

View File

@@ -418,7 +418,7 @@ node gsd-tools.cjs audit-uat
# Cross-artifact audit queue — scan `.planning/` for unresolved audit items
node gsd-tools.cjs audit-open [--json]
# Reverse-migrate a GSD-2 project into the current structure (backs `/gsd-from-gsd2`)
# Reverse-migrate a GSD-2 project into the current structure (backs `/gsd-import --from-gsd2`)
node gsd-tools.cjs from-gsd2 [--path <dir>] [--force] [--dry-run]
# Git commit with config checks
@@ -481,14 +481,14 @@ User-facing entry point: `/gsd-graphify` (see [Command Reference](COMMANDS.md#gs
| Graphify | `lib/graphify.cjs` | Knowledge graph build/query/status/diff/snapshot (backs `/gsd-graphify`) |
| Learnings | `lib/learnings.cjs` | Extract learnings from phases/SUMMARY artifacts (backs `/gsd-extract-learnings`) |
| Audit | `lib/audit.cjs` | Phase/milestone audit queue handlers; `audit-open` helper |
| GSD2 Import | `lib/gsd2-import.cjs` | Reverse-migration importer from GSD-2 projects (backs `/gsd-from-gsd2`) |
| GSD2 Import | `lib/gsd2-import.cjs` | Reverse-migration importer from GSD-2 projects (backs `/gsd-import --from-gsd2`) |
| Intel | `lib/intel.cjs` | Queryable codebase intelligence index (backs `/gsd-map-codebase --query`) |
---
## Reviewer CLI Routing
`review.models.<cli>` maps a reviewer flavor to a shell command invoked by the code-review workflow. Set via [`/gsd-settings-integrations`](COMMANDS.md#gsd-settings-integrations) or directly:
`review.models.<cli>` maps a reviewer flavor to a shell command invoked by the code-review workflow. Set via [`/gsd-config --integrations`](COMMANDS.md#gsd-config) or directly:
```bash
gsd-sdk query config-set review.models.codex "codex exec --model gpt-5"
@@ -501,7 +501,7 @@ Slugs are validated against `[a-zA-Z0-9_-]+`; empty or path-containing slugs are
## Secret Handling
API keys configured via `/gsd-settings-integrations` (`brave_search`, `firecrawl`, `exa_search`) are written plaintext to `.planning/config.json` but are masked (`****<last-4>`) in every `config-set` / `config-get` output, confirmation table, and interactive prompt. See `get-shit-done/bin/lib/secrets.cjs` for the masking implementation. The `config.json` file itself is the security boundary — protect it with filesystem permissions and keep it out of git (`.planning/` is gitignored by default).
API keys configured via `/gsd-settings` (`brave_search`, `firecrawl`, `exa_search`) are written plaintext to `.planning/config.json` but are masked (`****<last-4>`) in every `config-set` / `config-get` output, confirmation table, and interactive prompt. See `get-shit-done/bin/lib/secrets.cjs` for the masking implementation. The `config.json` file itself is the security boundary — protect it with filesystem permissions and keep it out of git (`.planning/` is gitignored by default).
---

View File

@@ -20,12 +20,12 @@ Six namespace routers ship as the first-stage entry points in v1.40. They keep t
| Command | Routes to |
|---------|-----------|
| `/gsd-ns-workflow` | Phase pipeline — discuss / plan / execute / verify / phase / progress |
| `/gsd-ns-project` | Project lifecycle — milestones, audits, summary |
| `/gsd-ns-review` | Quality gates — code review, debug, audit, security, eval, ui |
| `/gsd-ns-context` | Codebase intelligence — map, graphify, docs, learnings |
| `/gsd-ns-manage` | Management — config, workspace, workstreams, thread, update, ship, inbox |
| `/gsd-ns-ideate` | Exploration & capture — explore, sketch, spike, spec, capture |
| `/gsd-workflow` | Phase pipeline — discuss / plan / execute / verify / phase / progress |
| `/gsd-project` | Project lifecycle — milestones, audits, summary |
| `/gsd-quality` | Quality gates — code review, debug, audit, security, eval, ui |
| `/gsd-context` | Codebase intelligence — map, graphify, docs, learnings |
| `/gsd-manage` | Management — config, workspace, workstreams, thread, update, ship, inbox |
| `/gsd-ideate` | Exploration & capture — explore, sketch, spike, spec, capture |
The namespace skills are **additive** — every existing concrete command (e.g. `/gsd-plan-phase`, `/gsd-code-review --fix`) is still invocable directly.
@@ -732,7 +732,6 @@ Generate a developer behavioral profile from Claude Code session analysis across
**Generated artifacts:**
- `USER-PROFILE.md` — Full behavioral profile
- `/gsd-dev-preferences` command — Load preferences in any session
- `CLAUDE.md` profile section — Auto-discovered by Claude Code
```bash

View File

@@ -517,7 +517,7 @@
### 12. Freeform Routing
**Command:** `/gsd-do`
**Command:** `/gsd-progress --do` (see also `/gsd-manager` for interactive routing)
**Purpose:** Analyze freeform text and route to the appropriate GSD command.
@@ -531,7 +531,7 @@
### 13. Note Capture
**Command:** `/gsd-note`
**Command:** `/gsd-capture`
**Purpose:** Zero-friction idea capture without interrupting workflow. Append timestamped notes, list all notes, or promote notes to structured todos.
@@ -1080,7 +1080,6 @@ The banner is silent when up-to-date and rate-limits "check failed" diagnostics
**Generated Artifacts:**
- `USER-PROFILE.md` — Full behavioral profile with evidence citations
- `/gsd-dev-preferences` command — Load preferences in any session
- `CLAUDE.md` profile section — Auto-discovered by Claude Code
**Flags:**
@@ -2198,13 +2197,13 @@ Test suite that scans all agent, workflow, and command files for embedded inject
### 97. Rapid Codebase Scan
**Command:** `/gsd-scan [--focus tech|arch|quality|concerns|tech+arch]`
**Command:** `/gsd-map-codebase --fast [--focus tech|arch|quality|concerns]`
**Purpose:** Lightweight alternative to `/gsd-map-codebase` that spawns a single mapper agent for a specific focus area, producing targeted output in `.planning/codebase/` without the overhead of 4 parallel agents.
**Purpose:** Lightweight alternative to `/gsd-map-codebase` that spawns a single mapper agent for one or two combined focus areas, producing targeted output in `.planning/codebase/` without the overhead of 4 parallel agents.
**Requirements:**
- REQ-SCAN-01: Scan MUST spawn exactly one mapper agent (not four parallel agents)
- REQ-SCAN-02: Focus area MUST be one of: `tech`, `arch`, `quality`, `concerns`, `tech+arch` (default)
- REQ-SCAN-02: Focus area MUST be one of: `tech`, `arch`, `quality`, `concerns`, or the combined `tech+arch` shorthand (default: `tech+arch`); combined focus runs as a single agent covering both areas in one pass
- REQ-SCAN-03: Output MUST be written to `.planning/codebase/` in the same format as `/gsd-map-codebase`
---
@@ -2322,7 +2321,7 @@ Test suite that scans all agent, workflow, and command files for embedded inject
### 105. GSD-2 Reverse Migration
**Command:** `/gsd-from-gsd2 [--dry-run] [--force] [--path <dir>]`
**Command:** `/gsd-import --from-gsd2 [--dry-run] [--force] [--path <dir>]`
**Purpose:** Migrate a project from GSD-2 format (`.gsd/` directory with Milestone→Slice→Task hierarchy) back to the v1 `.planning/` format, restoring full compatibility with all GSD v1 commands.
@@ -2653,12 +2652,12 @@ Users who run a memory / knowledge-base MCP server (for example, ExoCortex-style
**Purpose:** Replace the flat eager skill listing with a two-stage hierarchical routing layer. The model sees 6 namespace routers instead of 86 entries, selects a namespace, then routes to the sub-skill. Descriptions use pipe-separated keyword tags (≤ 60 chars) for routing density.
**Commands:**
- `/gsd-ns-workflow` — phase pipeline router (discuss / plan / execute / verify / phase / progress)
- `/gsd-ns-project` — project lifecycle (milestones, audits, summary)
- `/gsd-ns-review` — quality gates (code review, debug, audit, security, eval, ui)
- `/gsd-ns-context` — codebase intelligence (map, graphify, docs, learnings)
- `/gsd-ns-manage` — config / workspace / workstreams / thread / update / ship / inbox
- `/gsd-ns-ideate` — exploration & capture (explore, sketch, spike, spec, capture)
- `/gsd-workflow` — phase pipeline router (discuss / plan / execute / verify / phase / progress)
- `/gsd-project` — project lifecycle (milestones, audits, summary)
- `/gsd-quality` — quality gates (code review, debug, audit, security, eval, ui)
- `/gsd-context` — codebase intelligence (map, graphify, docs, learnings)
- `/gsd-manage` — config / workspace / workstreams / thread / update / ship / inbox
- `/gsd-ideate` — exploration & capture (explore, sketch, spike, spec, capture)
**Token cost:**

View File

@@ -45,7 +45,7 @@ Full roster at `agents/gsd-*.md`. The "Primary doc" column flags whether [`docs/
| gsd-domain-researcher | Surfaces domain-expert evaluation criteria and failure modes for an AI system (AI-SPEC.md §1b). | `/gsd-ai-integration-phase` | advanced stub |
| gsd-eval-planner | Designs structured evaluation strategy for an AI phase (AI-SPEC.md §5–§7). | `/gsd-ai-integration-phase` | advanced stub |
| gsd-eval-auditor | Retroactive audit of an AI phase's evaluation coverage; produces EVAL-REVIEW.md (COVERED/PARTIAL/MISSING). | `/gsd-eval-review` | advanced stub |
| gsd-framework-selector | ≤6-question interactive decision matrix that scores and recommends an AI/LLM framework. | `/gsd-ai-integration-phase`, `/gsd-select-framework` | advanced stub |
| gsd-framework-selector | ≤6-question interactive decision matrix that scores and recommends an AI/LLM framework. | `/gsd-ai-integration-phase` | advanced stub |
| gsd-intel-updater | Writes structured intel files (`.planning/intel/*.json`) used as a queryable codebase knowledge base. | `/gsd-map-codebase --query` | advanced stub |
| gsd-doc-classifier | Classifies a single planning document as ADR, PRD, SPEC, DOC, or UNKNOWN; spawned in parallel to process the doc corpus. | `/gsd-ingest-docs` | advanced stub |
| gsd-doc-synthesizer | Synthesizes classified planning docs into a single consolidated context with precedence rules, cycle detection, and three-bucket conflicts report. | `/gsd-ingest-docs` | advanced stub |
@@ -64,12 +64,12 @@ These six routers are descriptor-only entries that the model picks first; the bo
| Command | Role | Source |
|---------|------|--------|
| `/gsd-ns-workflow` | Phase pipeline router — discuss / plan / execute / verify / phase / progress. | [commands/gsd/ns-workflow.md](../commands/gsd/ns-workflow.md) |
| `/gsd-ns-project` | Project lifecycle router — milestones, audits, summary. | [commands/gsd/ns-project.md](../commands/gsd/ns-project.md) |
| `/gsd-ns-review` | Quality-gate router — code review, debug, audit, security, eval, ui. | [commands/gsd/ns-review.md](../commands/gsd/ns-review.md) |
| `/gsd-ns-context` | Codebase-intelligence router — map, graphify, docs, learnings. | [commands/gsd/ns-context.md](../commands/gsd/ns-context.md) |
| `/gsd-ns-manage` | Management router — config, workspace, workstreams, thread, update, ship, inbox. | [commands/gsd/ns-manage.md](../commands/gsd/ns-manage.md) |
| `/gsd-ns-ideate` | Exploration & capture router — explore, sketch, spike, spec, capture. | [commands/gsd/ns-ideate.md](../commands/gsd/ns-ideate.md) |
| `/gsd-workflow` | Phase pipeline router — discuss / plan / execute / verify / phase / progress. | [commands/gsd/ns-workflow.md](../commands/gsd/ns-workflow.md) |
| `/gsd-project` | Project lifecycle router — milestones, audits, summary. | [commands/gsd/ns-project.md](../commands/gsd/ns-project.md) |
| `/gsd-quality` | Quality-gate router — code review, debug, audit, security, eval, ui. | [commands/gsd/ns-review.md](../commands/gsd/ns-review.md) |
| `/gsd-context` | Codebase-intelligence router — map, graphify, docs, learnings. | [commands/gsd/ns-context.md](../commands/gsd/ns-context.md) |
| `/gsd-manage` | Management router — config, workspace, workstreams, thread, update, ship, inbox. | [commands/gsd/ns-manage.md](../commands/gsd/ns-manage.md) |
| `/gsd-ideate` | Exploration & capture router — explore, sketch, spike, spec, capture. | [commands/gsd/ns-ideate.md](../commands/gsd/ns-ideate.md) |
### Core Workflow
@@ -232,7 +232,7 @@ Full roster at `get-shit-done/workflows/*.md`. Workflows are thin orchestrators
| `remove-workspace.md` | Remove a GSD workspace and clean up worktrees. | `/gsd-workspace --remove` |
| `resume-project.md` | Resume work — restore full context from STATE.md, HANDOFF.json, and artifacts. | `/gsd-resume-work` |
| `review.md` | Cross-AI plan review via external CLIs; produces REVIEWS.md. | `/gsd-review` |
| `scan.md` | Rapid single-focus codebase scan — lightweight alternative to map-codebase. | `/gsd-scan` |
| `scan.md` | Rapid single-focus codebase scan — lightweight alternative to map-codebase. | `/gsd-map-codebase --fast` |
| `secure-phase.md` | Retroactive threat-mitigation audit for a completed phase. | `/gsd-secure-phase` |
| `session-report.md` | Session report — token usage, work summary, outcomes. | `/gsd-pause-work --report` |
| `settings.md` | Configure GSD workflow toggles and model profile. | `/gsd-settings`, `/gsd-config --profile` |
@@ -379,7 +379,7 @@ Full listing: `get-shit-done/bin/lib/*.cjs`.
| `frontmatter.cjs` | YAML frontmatter CRUD operations |
| `gap-checker.cjs` | Post-planning gap analysis (#2493): unified REQUIREMENTS.md + CONTEXT.md decisions vs PLAN.md coverage report (`gsd-tools gap-analysis`) |
| `graphify.cjs` | Knowledge-graph build/query/status/diff for `/gsd-graphify` |
| `gsd2-import.cjs` | External-plan ingest for `/gsd-from-gsd2` |
| `gsd2-import.cjs` | External-plan ingest for `/gsd-import --from-gsd2` |
| `init-command-router.cjs` | Thin CJS subcommand router adapter for `gsd-tools init` |
| `init.cjs` | Compound context loading for each workflow type |
| `install-profiles.cjs` | Install profile allowlist + skill staging for `--minimal` install (#2762); single source of truth for which `gsd-*` skills/agents land in runtime config dirs |

View File

@@ -107,7 +107,7 @@ is to use the lifecycle stage:
| `/gsd-discuss-phase` | `discussing` |
| `/gsd-plan-phase` | `planning` |
| `/gsd-execute-phase` | `executing` |
| `/gsd-verify-phase` | `verifying` |
| `/gsd-verify-work` | `verifying` |
If `status` is left at `in_progress` (the milestone-level value), Scene 1
renders just `Phase 4.5` without the stage suffix.

View File

@@ -40,12 +40,12 @@ v1.40 ships six **namespace meta-skills** as the first-stage entry points for hi
| Namespace | Router | Routes to |
|-----------|--------|-----------|
| Phase pipeline | `/gsd-ns-workflow` | discuss / plan / execute / verify / phase / progress |
| Project lifecycle | `/gsd-ns-project` | milestones, audits, summary |
| Quality gates | `/gsd-ns-review` | code review, debug, audit, security, eval, ui |
| Codebase intelligence | `/gsd-ns-context` | map, graphify, docs, learnings |
| Management | `/gsd-ns-manage` | config, workspace, workstreams, thread, update, ship, inbox |
| Exploration & capture | `/gsd-ns-ideate` | explore, sketch, spike, spec, capture |
| Phase pipeline | `/gsd-workflow` | discuss / plan / execute / verify / phase / progress |
| Project lifecycle | `/gsd-project` | milestones, audits, summary |
| Quality gates | `/gsd-quality` | code review, debug, audit, security, eval, ui |
| Codebase intelligence | `/gsd-context` | map, graphify, docs, learnings |
| Management | `/gsd-manage` | config, workspace, workstreams, thread, update, ship, inbox |
| Exploration & capture | `/gsd-ideate` | explore, sketch, spike, spec, capture |
You almost never need to type a namespace router yourself. Their value is in the routing layer the model uses to discover the right sub-skill — they exist so the system prompt can list 6 entries instead of 86. If you already know the concrete command (e.g. `/gsd-plan-phase`), call it directly.
@@ -915,9 +915,9 @@ Intel files cover stack, API surface, dependency graph, file roles, and architec
For a focused assessment without full `/gsd-map-codebase` overhead:
```bash
/gsd-scan # Quick tech + arch overview
/gsd-scan --focus quality # Quality and code health only
/gsd-scan --focus concerns # Risk areas and concerns
/gsd-map-codebase --fast # Quick tech + arch overview
/gsd-map-codebase --fast --focus quality # Quality and code health only
/gsd-map-codebase --fast --focus concerns # Risk areas and concerns
```
---

View File

@@ -53,7 +53,7 @@ Symphony docs, blog posts, or third-party orchestration write-ups.
| Proof-of-work / test evidence | `/gsd-verify-work` (UAT.md persisted across `/clear`) |
| Adversarial review | `/gsd-review` (cross-AI peer review of plans) |
| Human merge gate | `/gsd-ship` (creates PR, optional code review, prepares merge) |
| Follow-up capture | `/gsd-note`, `/gsd-capture --seed`, `/gsd-new-milestone`, or a manually opened tracker issue |
| Follow-up capture | `/gsd-capture`, `/gsd-capture --seed`, `/gsd-new-milestone`, or a manually opened tracker issue |
| Concurrency control | Manager / background-agent semantics (no always-on poller) |
The mapping is one-way: GSD owns the safety gates (verification, human
@@ -97,7 +97,7 @@ tracker issue end-to-end. Replace bracketed placeholders before running.
blind spots model-by-model), then `/gsd-ship` to open the PR with a
rich body assembled from the planning artifacts. Both gates require a
human decision before anything reaches the remote.
7. **Capture follow-up work explicitly.** Use `/gsd-note` for inline
7. **Capture follow-up work explicitly.** Use `/gsd-capture` for inline
notes, `/gsd-capture --seed` for ideas worth a future phase, or
`/gsd-new-milestone` for a coherent group of follow-ups. Creating a
tracker issue from a discovered follow-up requires explicit user

View File

@@ -386,7 +386,7 @@ GSD はマルチエージェントアーキテクチャを採用しており、
| **ツール** | Read |
| **モデル (balanced)** | Sonnet |
| **カラー** | Magenta |
| **生成物** | `USER-PROFILE.md`、`/gsd-dev-preferences`、`CLAUDE.md` プロファイルセクション |
| **生成物** | `USER-PROFILE.md`、`CLAUDE.md` プロファイルセクション |
**行動ディメンション:**
コミュニケーションスタイル、意思決定パターン、デバッグアプローチ、UXの好み、ベンダー選択、フラストレーショントリガー、学習スタイル、説明の深度。

View File

@@ -546,15 +546,15 @@ GSDの保証付きでアドホックタスクを実行します。
/gsd-autonomous --only 4 # フェーズ4のみを自律実行
```
### `/gsd-do`
### `/gsd-fast`
フリーテキストを適切なGSDコマンドにルーティングします。
```bash
/gsd-do # その後、やりたいことを説明
/gsd-fast # その後、やりたいことを説明
```
### `/gsd-note`
### `/gsd-capture`
手軽にアイデアをキャプチャ — メモの追加、一覧表示、またはTodoへの昇格。
@@ -569,9 +569,9 @@ GSDの保証付きでアドホックタスクを実行します。
| `--global` | メモ操作にグローバルスコープを使用 |
```bash
/gsd-note "Consider caching strategy for API responses"
/gsd-note list
/gsd-note promote 3
/gsd-capture "Consider caching strategy for API responses"
/gsd-capture list
/gsd-capture promote 3
```
### `/gsd-debug`
@@ -642,7 +642,6 @@ Claude Codeのセッション分析から8つの次元(コミュニケーシ
**生成されるアーティファクト:**
- `USER-PROFILE.md` — 完全な行動プロファイル
- `/gsd-dev-preferences` コマンド — 任意のセッションでプリファレンスをロード
- `CLAUDE.md` プロファイルセクション — Claude Codeが自動検出
```bash

View File

@@ -442,7 +442,7 @@
### 12. フリーフォームルーティング
**コマンド:** `/gsd-do`
**コマンド:** `/gsd-fast`
**目的:** 自由形式のテキストを分析し、適切な GSD コマンドにルーティングします。
@@ -456,7 +456,7 @@
### 13. ノートキャプチャ
**コマンド:** `/gsd-note`
**コマンド:** `/gsd-capture`
**目的:** ワークフローを中断することなくアイデアを記録する、摩擦ゼロのメモ機能。タイムスタンプ付きメモの追加、全メモの一覧表示、または構造化された Todo へのプロモーションが可能です。
@@ -953,7 +953,6 @@ fix(03-01): correct auth token expiry
**生成される成果物:**
- `USER-PROFILE.md` — 証拠引用付きの完全な行動プロファイル
- `/gsd-dev-preferences` コマンド — 任意のセッションで好みを読み込み
- `CLAUDE.md` プロファイルセクション — Claude Code により自動検出
**フラグ:**

View File

@@ -1,4 +1,4 @@
# マルチプロジェクトワークスペース (`/gsd-new-workspace`)
# マルチプロジェクトワークスペース (`/gsd-workspace --new`)
**Issue:** #1241
**Date:** 2026-03-20
@@ -18,13 +18,13 @@ GSD は作業ディレクトリごとに1つの `.planning/` ディレクトリ
## コマンド
### `/gsd-new-workspace`
### `/gsd-workspace --new`
リポジトリのコピーと独自の `.planning/` を持つワークスペースディレクトリを作成します。
```
/gsd-new-workspace --name feature-b --repos hr-ui,ZeymoAPI --path ~/workspaces/feature-b
/gsd-new-workspace --name feature-b --repos . --strategy worktree # same-repo isolation
```bash
/gsd-workspace --new --name feature-b --repos hr-ui,ZeymoAPI --path ~/workspaces/feature-b
/gsd-workspace --new --name feature-b --repos . --strategy worktree # same-repo isolation
```
**引数:**
@@ -38,11 +38,11 @@ GSD は作業ディレクトリごとに1つの `.planning/` ディレクトリ
| `--branch` | いいえ | `workspace/<name>` | チェックアウトするブランチ |
| `--auto` | いいえ | false | 対話的な質問をスキップし、デフォルト値を使用 |
### `/gsd-list-workspaces`
### `/gsd-workspace --list`
`~/gsd-workspaces/*/WORKSPACE.md` をスキャンしてワークスペースマニフェストを検索します。名前、パス、リポジトリ数、GSD ステータス(PROJECT.md の有無、現在のフェーズ)をテーブル形式で表示します。
### `/gsd-remove-workspace`
### `/gsd-workspace --remove`
確認後にワークスペースディレクトリを削除します。worktree 戦略の場合、まず各メンバーリポジトリに対して `git worktree remove` を実行します。コミットされていない変更があるリポジトリがある場合は削除を拒否します。
@@ -89,7 +89,7 @@ Strategy: worktree
## ワークフロー
### `/gsd-new-workspace` のワークフロー手順
### `/gsd-workspace --new` のワークフロー手順
1. **セットアップ** — `init new-workspace` を呼び出し、JSON コンテキストを解析する
2. **入力の収集** — `--name`/`--repos`/`--path` が指定されていない場合、対話的に質問する。リポジトリの選択時は、カレントディレクトリ内の子 `.git` ディレクトリを選択肢として表示する

View File

@@ -386,7 +386,7 @@ GSD는 멀티 에이전트 아키텍처를 사용합니다. 가벼운 오케스
| **도구** | Read |
| **모델 (balanced)** | Sonnet |
| **색상** | Magenta |
| **생성물** | `USER-PROFILE.md`, `/gsd-dev-preferences`, `CLAUDE.md` 프로필 섹션 |
| **생성물** | `USER-PROFILE.md`, `CLAUDE.md` 프로필 섹션 |
**행동 차원.**
커뮤니케이션 스타일, 결정 패턴, 디버깅 접근 방식, UX 선호도, 벤더 선택, 불만 요인, 학습 스타일, 설명 깊이.

View File

@@ -546,15 +546,15 @@ GSD 보증을 갖춘 임시 작업을 실행합니다.
/gsd-autonomous --only 4 # 페이즈 4만 자율 실행
```
### `/gsd-do`
### `/gsd-fast`
자유 형식 텍스트를 적절한 GSD 명령어로 라우팅합니다.
```bash
/gsd-do # 원하는 작업을 설명합니다
/gsd-fast # 원하는 작업을 설명합니다
```
### `/gsd-note`
### `/gsd-capture`
마찰 없는 아이디어 캡처 — 노트 추가, 목록 조회, 또는 노트를 할 일로 승격합니다.
@@ -569,9 +569,9 @@ GSD 보증을 갖춘 임시 작업을 실행합니다.
| `--global` | 노트 작업에 전역 범위 사용 |
```bash
/gsd-note "Consider caching strategy for API responses"
/gsd-note list
/gsd-note promote 3
/gsd-capture "Consider caching strategy for API responses"
/gsd-capture list
/gsd-capture promote 3
```
### `/gsd-debug`
@@ -642,7 +642,6 @@ Claude Code 세션 분석을 통해 8개 차원(커뮤니케이션 스타일,
**생성 아티팩트.**
- `USER-PROFILE.md` — 전체 행동 프로필
- `/gsd-dev-preferences` 명령어 — 모든 세션에서 선호도를 로드합니다
- `CLAUDE.md` 프로필 섹션 — Claude Code에 의해 자동으로 인식됩니다
```bash

View File

@@ -442,7 +442,7 @@
### 12. Freeform Routing
**명령어:** `/gsd-do`
**명령어:** `/gsd-fast`
**목적:** 자유형 텍스트를 분석하고 적절한 GSD 명령어로 라우팅합니다.
@@ -456,7 +456,7 @@
### 13. Note Capture
**명령어:** `/gsd-note`
**명령어:** `/gsd-capture`
**목적:** 워크플로우를 방해하지 않고 아이디어를 즉시 캡처합니다. 타임스탬프가 있는 노트를 추가하거나, 모든 노트를 나열하거나, 노트를 구조화된 할 일로 승격합니다.
@@ -953,7 +953,6 @@ fix(03-01): correct auth token expiry
**생성 산출물.**
- `USER-PROFILE.md` — 증거 인용이 포함된 전체 행동 프로파일
- `/gsd-dev-preferences` 명령어 — 모든 세션에서 선호도 로드
- `CLAUDE.md` 프로파일 섹션 — Claude Code가 자동으로 검색
**플래그.**

View File

@@ -1,4 +1,4 @@
# 멀티 프로젝트 워크스페이스 (`/gsd-new-workspace`)
# 멀티 프로젝트 워크스페이스 (`/gsd-workspace --new`)
**Issue:** #1241
**Date:** 2026-03-20
@@ -18,13 +18,13 @@ GSD는 작업 디렉토리당 하나의 `.planning/` 디렉토리에 종속되
## 명령어
### `/gsd-new-workspace`
### `/gsd-workspace --new`
저장소 복사본과 자체 `.planning/`이 있는 워크스페이스 디렉토리를 생성합니다.
```
/gsd-new-workspace --name feature-b --repos hr-ui,ZeymoAPI --path ~/workspaces/feature-b
/gsd-new-workspace --name feature-b --repos . --strategy worktree # 동일 저장소 격리
```bash
/gsd-workspace --new --name feature-b --repos hr-ui,ZeymoAPI --path ~/workspaces/feature-b
/gsd-workspace --new --name feature-b --repos . --strategy worktree # 동일 저장소 격리
```
**인수.**
@@ -38,11 +38,11 @@ GSD는 작업 디렉토리당 하나의 `.planning/` 디렉토리에 종속되
| `--branch` | 아니오 | `workspace/<name>` | 체크아웃할 브랜치 |
| `--auto` | 아니오 | false | 대화형 질문 건너뛰고 기본값 사용 |
### `/gsd-list-workspaces`
### `/gsd-workspace --list`
워크스페이스 매니페스트를 위해 `~/gsd-workspaces/*/WORKSPACE.md`를 스캔합니다. 이름, 경로, 저장소 수, GSD 상태(PROJECT.md 존재 여부, 현재 페이즈)가 있는 표를 표시합니다.
### `/gsd-remove-workspace`
### `/gsd-workspace --remove`
확인 후 워크스페이스 디렉토리를 제거합니다. worktree 전략의 경우 먼저 각 멤버 저장소에 대해 `git worktree remove`를 실행합니다. 저장소에 커밋되지 않은 변경사항이 있으면 거부합니다.
@@ -89,7 +89,7 @@ Strategy: worktree
## 워크플로우
### `/gsd-new-workspace` 워크플로우 단계
### `/gsd-workspace --new` 워크플로우 단계
1. **설정** — `init new-workspace` 호출, JSON 컨텍스트 파싱
2. **입력 수집** — `--name`/`--repos`/`--path`가 제공되지 않으면 대화형으로 질문합니다. 저장소의 경우 cwd의 하위 `.git` 디렉토리를 옵션으로 표시합니다.

View File

@@ -66,7 +66,7 @@
## 切换配置
运行时:`/gsd-set-profile <profile>`
在 `.planning/config.json` 中设置 `model_profile` 键以更改配置文件。
项目默认值:在 `.planning/config.json` 中设置:
```json

View File

@@ -115,8 +115,7 @@
───────────────────────────────────────────────────────────────
**也可选:**
- `/gsd-alternative-1` — 描述
- `/gsd-alternative-2` — 描述
- (根据工作流选填可选命令,例如 `/gsd-progress --next`)
───────────────────────────────────────────────────────────────
```