skills/executing-workflows/SKILL.md
Use when user provides workflow syntax with arrows (-> || ~>), says "run workflow", "execute workflow", "run this", mentions step1 -> step2 patterns. Executes orchestration workflows with real-time visualization, steering, and error recovery.
npx skillsauth add mbruhler/claude-orchestration orchestration:executing-workflowsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
I execute workflows with real-time visualization, progress tracking, and interactive steering at checkpoints.
I automatically activate when you:
Just provide workflow syntax and I'll handle the rest:
Explore:"Analyze codebase":analysis ->
implement:"Add feature based on {analysis}":code ->
general-purpose:"Run tests":results
I automatically:
I analyze your workflow:
I show you the execution plan using ASCII art:
Execution Graph:
+-----------------+
| Explore |
| (Analyze code) |
+--------+--------+
|
v
+-----------------+
| implement |
| (Add feature) |
+--------+--------+
|
v
+-----------------+
| general-purpose |
| (Run tests) |
+-----------------+
I run agents sequentially or in parallel. Crucially, I maintain a local execution state file to ensure reliability and enable "Time-Travel" recovery.
.orchestration/state.json in the current working directory.state.json with captured variables and the node's completed status.Sequential (->):
Running: Explore... [In Progress]
Result: Analysis complete -> State Saved.
Running: implement... [In Progress]
Result: Feature added -> State Saved.
If you ask me to "resume" a workflow:
./.orchestration/state.json.completed and instantly start executing from the exact node where it left off.Parallel (||):
Running: task1... [In Progress]
Running: task2... [In Progress]
Running: task3... [In Progress]
All complete! Merging results...
At checkpoints (@review), you control flow:
@review-point reached
Options:
[C]ontinue - Proceed with workflow
[R]etry - Re-run previous step
[M]odify - Adjust and continue
[A]bort - Stop workflow
Your choice?
If agent fails, I offer options:
Agent 'implement' failed: Tests not passing
Options:
- Retry with same instruction
- Modify instruction and retry
- Skip this step (continue workflow)
- Abort workflow
What would you like to do?
IMPORTANT: After workflow execution, check for temporary files and ask user before deleting.
Check for existence of temporary files in the current working directory:
# Check temp-agents
TEMP_AGENTS=$(ls ./temp-agents/*.md 2>/dev/null | wc -l)
# Check temp-scripts
TEMP_SCRIPTS=$(ls ./temp-scripts/* 2>/dev/null | wc -l)
# Check temporary JSON (NOT .flow files!)
TEMP_JSON=$(ls ./examples/*.json 2>/dev/null | wc -l)
TOTAL=$((TEMP_AGENTS + TEMP_SCRIPTS + TEMP_JSON))
Only if TOTAL > 0, use AskUserQuestion:
AskUserQuestion({
questions: [{
question: "Found ${TOTAL} temporary files. Do you want to delete them?",
header: "Cleanup",
multiSelect: false,
options: [
{label: "Yes, delete all", description: "Remove all temporary files (temp-agents, temp-scripts, temp JSON)"},
{label: "Show me first", description: "List files before deciding"},
{label: "No, keep them", description: "Leave files for manual review"}
]
}]
})
If user chose "Yes, delete all":
# Delete temp-agents (in current working directory)
rm -f ./temp-agents/*.md
# Delete temp-scripts (in current working directory)
rm -rf ./temp-scripts/*
# Delete temporary JSON only (keep .flow files!)
rm -f ./examples/*.json
Report what was deleted:
Cleaned up ${TOTAL} temporary files:
- ${TEMP_AGENTS} temp agents removed
- ${TEMP_SCRIPTS} temp scripts removed
- ${TEMP_JSON} temporary JSON files removed
If user chose "Show me first":
If TOTAL == 0, skip cleanup silently (don't bother user).
Note for Scheduled/Headless runs: If the workflow is running automatically via @schedule, the interactive cleanup prompt is suppressed. Temporary files will be left intact so they can be reused on the next run, saving computation time.
See syntax-reference.md for complete syntax documentation.
Quick reference:
| Syntax | Meaning | Example |
|--------|---------|---------|
| -> | Sequential | a -> b |
| || | Parallel | [a \|\| b] |
| ~> | Conditional | (if passed)~> next |
| @ | Checkpoint | @review |
| :var | Output capture | task:output |
| {var} | Variable interpolation | "Use {output}" |
| $agent | Temp agent | $scanner:"Scan" |
Built-in Claude Code agents (no prefix):
Explore - Fast codebase exploration and searchPlan - Planning and breaking down tasksgeneral-purpose - Versatile agent for complex multi-step tasksPlugin agents (orchestration: prefix):
orchestration:workflow-socratic-designer - Workflow creation via Socratic methodorchestration:workflow-syntax-designer - Custom syntax designExternal agents (registered via /orchestration:init):
~/.claude/agents/ can be registered and used directlyexpert-code-implementer, code-optimizer (if registered)Temp agents ($name):
./temp-agents/See variables.md for advanced variable usage.
Capture output:
Explore:"Find routes":routes ->
analyze:"Check {routes}":findings
Conditional on variables:
test:"Run tests":results ->
(if results.passed)~> deploy ->
(if results.failed)~> debug
Common error patterns:
Retry on failure:
@attempt ->
operation:"Try task" ->
(if failed)~> wait:"Wait 5s" -> @attempt ~>
(if passed)~> continue
Fallback path:
primary:"Try primary" ->
(if failed)~> backup:"Use backup" ~>
(if passed)~> process
Stop on critical error:
security-scan:"Scan" ->
(if critical-issues)~> @emergency-stop -> abort ~>
(if clean)~> deploy
See checkpoints.md for checkpoint details.
Basic checkpoint:
implement -> @review -> deploy
Labeled checkpoint:
@quality-gate:"Review code quality. Approve?"
Conditional checkpoint:
(if security-critical)~> @security-review
See parallel.md for parallel execution patterns.
Basic parallel:
[task1 || task2 || task3] -> merge
Parallel with individual variables:
[
task1:"First":result1 ||
task2:"Second":result2 ||
task3:"Third":result3
] ->
general-purpose:"Process {result1}, {result2}, {result3}"
Conditional parallel:
(if needs-full-scan)~> [security || performance || style] ~>
(if needs-quick-check)~> basic-lint
See examples/ for categorized workflow examples:
Normal mode (default):
Dry-Run Unit Tests (.flow.test / Mock Mode):
.flow.test extension or explicitly ask for a "dry-run with mocks":
mocks: section in the YAML frontmatter of the workflow (where you define fake outputs for variables).~>) or a semantic router (route() =>), I will use your provided mocked data to decide the path.Auto mode / Headless:
During execution, I show:
Workflow: TDD Implementation
Progress: [========..] 80%
Phase 1: Done - Requirements analyzed
Phase 2: Done - Tests written
Phase 3: Done - Tests verified failing
Phase 4: Paused - Checkpoint: review-test-coverage
Phase 5: In Progress - Implementing code...
Phase 6: Pending
Phase 7: Pending
Track execution metadata:
Workflow: debug-and-fix.flow
Started: 2025-01-08 14:32:10
Duration: 5m 23s
Agents used: 8
Checkpoints: 2
Status: Complete
Agents executed:
- Explore (x1)
- general-purpose (x5)
- expert-code-implementer (x2)
Resources:
- Files read: 12
- Files modified: 3
- Tests run: 1
Agent not found:
./temp-agents/Variable not found:
:varname{varname}Checkpoint skipped:
@checkpoint-nameParallel execution failed:
[a || b]/orchestration:run - Execute workflow from file or inline/orchestration:template - Execute saved template/orchestration:explain - Explain workflow execution planReady to execute? Provide your workflow syntax or template name!
data-ai
Use and customize workflow templates for common scenarios. Use when user wants to use a template, asks about available templates, or wants to customize existing workflows.
documentation
Use when user has complex multi-agent workflows, needs to coordinate sequential or parallel agent execution, wants workflow visualization and control, or mentions automating repetitive multi-agent processes - guides discovery and usage of the orchestration system
tools
Create and execute temporary scripts (Python, Node.js, shell) during workflow execution for API integrations, data processing, and custom tools. Use when user needs to interact with external APIs, process data with specific libraries, or create temporary executable code.
testing
Manages temporary and defined agents including creation, promotion, cleanup, and namespacing. Use when user creates custom agents, asks about agent lifecycle, temp agents, or agent management.