/cs-workflow-build¶
Command: /cs:workflow-build <task-description>
Designs a deterministic multi-agent workflow for Claude Code's Workflow tool. Always opens with intake; never writes a file before the topology is confirmed.
When to Run¶
- Building a new
.claude/workflows/*.jsfile - Automating a repeatable, multi-step task across fresh-context sub-agents
- Deciding whether a task even warrants a workflow (vs. a single agent or a skill)
Step 1 — Intake (always first)¶
Ask the opening question set. Lead with #1.
- What repeatable, multi-step task do you want to automate?
- What is the one unit of work a single sub-agent does once?
- How many units — a known list, or discovered by looping?
- Do later steps need all prior results at once, or can each item flow on its own?
- Does any step need structured data back (a verdict, a list, scores)?
- Roughly how deep / how many tokens?
Step 2 — If the user is vague, infer and propose (don't loop on questions)¶
python ../skills/workflow-builder/scripts/workflow_intake.py --task "<their request>" \
--units unknown --stages unknown --needs-all unknown --structured unknown
Present the result as "here's what I'd build and why": recommended topology (+ runner-up), per-stage model picks, a budget guard, and the rationale for each choice. Then ask only "what should I change?"
Step 3 — Confirm the shape, then scaffold¶
python ../skills/workflow-builder/scripts/scaffold_workflow.py \
--topology <fan-out|pipeline|barrier|loop|judge-panel> --name <name> --description "..." \
> .claude/workflows/<name>.js
Step 4 — Validate before running¶
Fix every FAIL. WARNs need a one-line justification.
Step 5 — Run¶
export CLAUDE_CODE_WORKFLOWS=1 # the feature is off by default
# Save under .claude/workflows/, then launch + monitor via /workflows.
# P = pause/resume, X = skip a sub-agent. Failed agents retry automatically.
The Hard Rules (validator enforces)¶
metais a pure literal and the first statement — no variables, spreads, template strings, or calls.- No
Date.now(),Math.random(), or arglessnew Date()— they break resume. - No filesystem / Node APIs in the orchestrator — that work goes inside
agent(). parallel()takes thunks (() => agent(...)); default topipeline()unless a stage needs the whole prior set.- Guard every open-ended loop with a counter or
budget.remaining(). results.filter(Boolean)before using parallel/pipeline output.
Output Format¶
# Workflow Build: <name>
## The Decision
[intake | recommend | scaffold | validate | run]
## Recommended Topology
[fan-out | pipeline | barrier | loop | judge-panel] — why
## Model Plan
[per-stage model + reason]
## Validator Verdict
🟢 PASS | 🟡 WARN (justified) | 🔴 FAIL (with line numbers)
## Next Steps
[3 concrete actions]
Related¶
- Agent:
cs-workflow-architect - Skill:
workflow-builder - Adjacent:
/cs:write-a-skill(authoring skills, not workflows)
Version: 1.0.0