Skip to main content

Run a DIAL State Machine

Execute a state machine definition and run it to completion.

Command

npx dialai <path-to-machine.json>

Examples

Basic execution:

npx dialai examples/code-review.json

Expected Output

Machine:        code-review
Initial state: draft
Goal state: approved
Final state: approved
Session ID: a1b2c3d4-...

What Happens

  1. DIAL creates a session from the machine definition
  2. Registers all specialists defined in the machine
  3. Runs decision cycles (Propose, Arbitrate, Execute)
  4. Terminates when goalState is reached

Common Issues

ProblemSolution
Machine definition invalidValidate JSON with cat machine.json | jq .
ANTHROPIC_API_KEY not setExport your API key: export ANTHROPIC_API_KEY=sk-...
Machine exits immediatelyCheck for deterministic specialists auto-approving