meta-planning-cli-planning
CLI Planning Frameworks
Quick Guide: Specify each contract the feature actually touches — the full flag table for a new surface, the per-step prompt table for an interactive flow, a precedence table per config key, an exit code for every terminating path, and output behaviour per context (TTY, piped,
--json, quiet, verbose). Apply a framework only when the spec touches its artifact class; a config-only change needs no prompt-flow section.
<critical_requirements>
CRITICAL: Before Specifying CLI Contracts
All specifications must be grounded in the codebase's real commands, prompts, resolvers, and constants — reference specific files with line numbers
(You MUST give every prompted value a non-interactive twin — a flag or config key — and state what happens with no TTY and no flag)
(You MUST give every terminating path an exit code named as a constant, with cancellation distinct from failure)
(You MUST specify output per context — TTY, piped, --json, quiet, verbose — and state which stream carries payload versus diagnostics)
(You MUST state config precedence per key as a table with merge semantics — "merged" without a rule is not a rule)