Steer Vision
Generate or refine docs/steering/VISION.md — the product constitution. This document is the highest-level steering artifact. It captures why the product exists, who it serves, and what principles govern every decision.
The shared steering-doc flow (exists-check → research → interview → draft → review → write → wiki sync → continue) lives in ../references/steering-doc-process.md. Follow that process with the skill-specific inputs below.
- Doc path:
docs/steering/VISION.md - Template:
references/vision-template.md - Display name / wiki page:
WTF-Vision.md - Commit message:
docs: add project vision steering document
Step 2 — Research checklist
Run in parallel with the Agent tool:
Codebase signals:
- README for product description and stated goals
- Any existing
docs/files, ADRs, or architectural notes - Domain language in file names, module names, and type definitions
- Existing wiki pages or glossary files
GitHub signals (optional — skip if unavailable):
- Open and closed Epics (issues labeled
epic) for strategic intent - Any issues or discussions that reference product goals or principles
Synthesize internally. Do not dump raw research at the user.
Step 3 — Gap-topic list
Ask only about items research could not determine, in priority order. For each unanswered item, call AskUserQuestion (per ../references/questioning-style.md):
- Product purpose — question: "What problem does this product solve, and for whom?" / header: "Product purpose" / options: pre-fill with purpose statements inferred from README or codebase.
- Target users — question: "Who are the primary users? Use their domain role names." / header: "Target users" / options: pre-fill with named roles inferred from the codebase.
- Core principles — question: "What 3–5 principles guide every product decision?" / header: "Core principles" / options: pre-fill with principles inferred from
CLAUDE.mdor READMEs. - Strategic goals — question: "What does success look like in 12–18 months?" / header: "Strategic goals" / options: pre-fill with goals inferred from open Epics or README.
- Bounded contexts — question: "Which domain contexts does this product span?" / header: "Bounded contexts" / options: pre-fill with contexts inferred from module structure or Epic vocabulary.
- Out of scope — question: "What is explicitly out of scope?" / header: "Out of scope" / options: pre-fill with exclusions found in existing docs or issue discussions.
Step 4 — Writing rules
- Apply strict STE per
../references/ste-writing.mdbefore you write any durable body (shared process Step 4 also requires this). - Every sentence uses domain language — the words domain experts and stakeholders use.
- Target users are named domain actors. Never write "users" or "admins".
- Strategic goals are business outcomes. They are not features or technical tasks.
- Bounded context names stay consistent with vocabulary found in the codebase.
Step 8 — Continue options
{label: "Create TECH.md", description: "Run wtf.steer-tech to document the technical guidelines"}{label: "Create DESIGN.md", description: "Run wtf.steer-design to document the design guidelines"}{label: "Create QA.md", description: "Run wtf.steer-qa to document the QA standards"}{label: "Stop here", description: "Exit — no further action"}