Files
msd-core/commands/msd/discuss-phase.md
Jakub Zych a9a7a328e6 refactor: hard-fork GSD -> MSD (Make Software Done)
Mechanical rename produced by scripts/msd-rename.cjs: gsd/Gsd/GSD -> msd/Msd/MSD
across contents and paths, upstream package/repo coordinates -> @golem15/msd-core
and golem15com/msd-core. Deep links into upstream history, sibling upstream
packages, the GSD-2 import feature, CHANGELOG.md and .changeset/ are kept as-is.

Hand edits on top: MSD block-letter banner and logos, LICENSE copyright line,
package/plugin identity, regenerated lockfile, install-tree fixtures, derived
registries and benchmark baseline; migration checksum baseline re-locked
(MSD keeps its own install state, so no install had applied the old sums);
sort-order and regex-escaped expectations in tests adjusted.
2026-10-06 01:47:40 +02:00

4.0 KiB

name, description, argument-hint, allowed-tools, requires
name description argument-hint allowed-tools requires
msd:discuss-phase Gather phase context through adaptive questioning before planning. <phase> [--all] [--auto] [--chain] [--batch] [--analyze] [--text] [--power] [--assumptions]
Read
Write
Bash
Glob
Grep
AskUserQuestion
Agent
mcp__context7__resolve-library-id
mcp__context7__query-docs
config
phase
Extract implementation decisions that downstream agents need — researcher and planner will use CONTEXT.md to know what to investigate and what choices are locked.

How it works:

  1. Load prior context (PROJECT.md, REQUIREMENTS.md, STATE.md, prior CONTEXT.md files)
  2. Scout codebase for reusable assets and patterns
  3. Analyze phase — skip gray areas already decided in prior phases
  4. Present remaining gray areas — user selects which to discuss
  5. Deep-dive each selected area until satisfied
  6. Create CONTEXT.md with decisions that guide research and planning

Output: {phase_num}-CONTEXT.md — decisions clear enough that downstream agents can act without asking the user again

<execution_context> Workflow files are loaded on-demand in the section below — not upfront. Do not pre-load any workflow files before reading the mode routing instructions. </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. </runtime_note>

Phase number: $ARGUMENTS (required)

Context files are resolved in-workflow using init phase-op and roadmap/state tool calls.

**Mode routing:** ```bash _MSD_SHIM_NAME="msd-tools.cjs"; _MSD_RUNTIME_ROOT="${RUNTIME_DIR:-$(git rev-parse --show-toplevel 2>/dev/null || pwd)}"; MSD_TOOLS="${_MSD_RUNTIME_ROOT}/msd-core/bin/${_MSD_SHIM_NAME}"; if [ -f "$MSD_TOOLS" ]; then msd_run() { node "$MSD_TOOLS" "$@"; }; elif [ -f "${_MSD_RUNTIME_ROOT}/.claude/msd-core/bin/${_MSD_SHIM_NAME}" ]; then MSD_TOOLS="${_MSD_RUNTIME_ROOT}/.claude/msd-core/bin/${_MSD_SHIM_NAME}"; msd_run() { node "$MSD_TOOLS" "$@"; }; elif command -v msd-tools >/dev/null 2>&1; then MSD_TOOLS="$(command -v msd-tools)"; msd_run() { "$MSD_TOOLS" "$@"; }; elif [ -f "$HOME/.claude/msd-core/bin/${_MSD_SHIM_NAME}" ]; then MSD_TOOLS="$HOME/.claude/msd-core/bin/${_MSD_SHIM_NAME}"; msd_run() { node "$MSD_TOOLS" "$@"; }; else echo "ERROR: msd-tools.cjs not found at $MSD_TOOLS and msd-tools is not on PATH. Run: npx -y @golem15/msd-core@latest --claude --local" >&2; exit 1; fi DISCUSS_MODE=$(msd_run query config-get workflow.discuss_mode --raw 2>/dev/null || echo "discuss") ```

If --assumptions is in $ARGUMENTS: Read and execute ~/.claude/msd-core/workflows/list-phase-assumptions.md end-to-end. Stop here.

Otherwise, if DISCUSS_MODE is "assumptions": Read and execute ~/.claude/msd-core/workflows/discuss-phase-assumptions.md end-to-end.

Otherwise ("discuss" / unset / any other value): Read and execute ~/.claude/msd-core/workflows/discuss-phase.md end-to-end.

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.

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.

<success_criteria>

  • Prior context loaded and applied (no re-asking decided questions)
  • Gray areas identified through intelligent analysis
  • User chose which areas to discuss
  • Each selected area explored until satisfied
  • Scope creep redirected to deferred ideas
  • CONTEXT.md captures decisions, not vague vision
  • User knows next steps </success_criteria>