AI workflows your whole team can read.
Define your AI workflows in plain language. Readable by everyone on your team and enforceable in production.
Python 3.11+ required
Features
YAML-first. Zero boilerplate.
Stop wrestling with framework abstractions. Define exactly what you want your agents to do — in plain text.
The whole workflow on one screen
Agents, nodes, edges, and guardrails — one file anyone on the team can open, read, and review. Your PM can audit it. Your security lead can verify the cost cap is there. Your git diffs make sense.
Agent Factory
Point for_each at any runtime list and it spawns one agent per item. Each spawned agent can be a swrm, so you get a parallel fan-out for every item — no loop code, no manual wiring.
Guardrails in the file, not the footnotes
Cost caps, PII detection, and injection protection live right next to your agent definition — one line each. If the cap isn't there, it's visible. If it is, anyone can confirm it.
Swrm Fan-out
Run multiple agents concurrently with a single type: swrm node. Define a synthesis step to combine outputs. Concurrency without callbacks.
Conditional Edges
Route workflow execution with when: conditions on edges. Branch on LLM output, context values, or any runtime expression.
CLI-first
Run sirenspec run workflow.yaml and get a JSON trace on stdout. Pipe to jq. Drop into any CI/CD pipeline that can run a shell command.
How It Works
Compose. Run. Ship.
Define agents in YAML
Give each agent a model, a system prompt, and optional guardrails. Mix providers freely — one file, any backend.
Compose nodes and edges
Chain agents with nodes. Wire up data flow with template expressions like {{ working.research }}. Add conditional edges with when:.
Run anywhere
sirenspec run workflow.yaml --input 'topic' — that's it. Get a JSON trace back. Pipe it, log it, test it.
# → JSON execution trace to stdout
vs the Field
Readable by default. Auditable by anyone.
The same two-agent pipeline, written four ways. You decide which one you'd rather maintain.
| Capability | SirenSpec← you are here | Big Agent Frameworks | Raw SDK |
|---|---|---|---|
| Workflow format | YAML | Python | Python |
| Lines for 2-agent pipeline | ~23 | ~35+ | ~40+ |
| Human-readable by default | |||
| Git-diffable workflows | |||
| Built-in guardrails | |||
| Multi-provider in one file | |||
| Fan-out concurrency | |||
| CLI-first execution | |||
| Open source (MIT) | |||
| Audit trail non-engineers can read | |||
AI orchestration you can actually read
SirenSpec is a workflow format and runtime for AI pipelines. Write it in YAML. Version it in git. Hand it to anyone on your team and they'll understand it — no Python required.