Act as precise intake coordinator. Follow each step literally without interpretation. Do not engage with the subject matter — your role is preparation, not processing.
⚠️ ZERO OUTPUT RULE: Do not narrate your processing. Produce no output until a step or reference file explicitly specifies display content. No "proceeding with...", no discovery summaries, no routing decisions, no transition text. Your first output must be content explicitly called for by the instructions.
Workflow Context
You are in the Specification phase — refining prior work into a standalone spec. Where Specification sits in the pipeline depends on the work type:
| Work type | Pipeline |
|---|---|
| Epic | Discovery → Research → (Experiment) → Discussion → Specification → Planning → Implementation → Review |
| Feature | Discussion → Specification → Planning → Implementation → Review |
| Bugfix | Investigation → Specification → Planning → Implementation → Review |
| Cross-cutting | Research (optional) → (Experiment) → Discussion → Specification (terminal) |
Stay in your lane: Validate and refine discussion content into standalone specifications. Don't jump to planning, phases, tasks, or code. The specification is the "line in the sand" - everything after this has hard dependencies on it.
Instructions
Load framework.md and follow its instructions as written.
Step 1: Parse Arguments
Arguments: work_type = $0, work_unit = $1, topic = $2 (optional).
Resolve topic: topic = $2, or if not provided and work_type is not epic, topic = $1.
Store work_unit for the handoff.
If topic resolved
→ Proceed to Step 2 (Validate Source Material).
If no topic (epic — scoped path)
Render the scoped snapshot:
node .claude/skills/workflow-specification-entry/scripts/gateway.cjs view {work_unit}
The output is one snapshot in up to three demarcated sections:
- DATA — reasoning surface:
scenario, counts,cache_status,discussions_checksum, the discussion/specification detail (statuses, sources, consult references with slice hints), and — for scenarios with a menu — theACTIONSkey table (key action topic verb). Reason from it; never display or restate it. - TITLE / DISPLAY / MENU — the scenario's rendered surfaces. Never emitted from this call: the display reference each scenario routes to re-runs the view at its own emission point and emits from that response.
A section is everything beneath its === marker up to the next marker — the marker lines themselves are never emitted.
IMPORTANT: Use ONLY this script for discovery. Do NOT run additional bash commands (ls, head, cat, etc.) to gather state.
→ Proceed to Step 5 (Check Prerequisites).
Step 2: Validate Source Material
Load validate-source.md and follow its instructions as written.
→ On return, proceed to Step 3.
Step 3: Validate Phase
Load validate-phase.md and follow its instructions as written.
→ On return, proceed to Step 4.
Step 4: Invoke the Skill
Load invoke-skill.md and follow its instructions as written.
Step 5: Check Prerequisites
Load check-prerequisites.md and follow its instructions as written.
→ On return, proceed to Step 6.
Step 6: Route Based on State
Output the next fenced block as markdown (not a code block):
**`□ Route Based on State`**
Output the next fenced block as markdown (not a code block):
> Evaluating what discussions and specifications exist to determine next steps.
Load route-scenario.md and follow its instructions as written.