#workflow-orchestration #agent-orchestration #graph #run-time #workflow-graph #multi-stage

car-workflow

Declarative multi-stage workflow orchestration for Common Agent Runtime

7 releases (breaking)

new 0.14.0 May 15, 2026
0.13.0 May 15, 2026
0.12.0 May 14, 2026
0.9.0 May 12, 2026
0.6.0 May 8, 2026

#147 in Science


Used in 2 crates (via car-ffi-common)

Apache-2.0

630KB
14K SLoC

car-workflow

Declarative multi-stage workflow orchestration for Common Agent Runtime.

What it does

Composes car-multi agent coordination patterns and car-engine action proposals into a named, conditional, compensable stage graph.

Key types

Type Purpose
Workflow top-level definition: stages + conditional edges
Stage / StageStep what each step does — pattern, proposal, sub-workflow
Edge conditional transition between stages (reuses car_ir::Precondition)
CompensationHandler saga-style rollback per stage
WorkflowEngine executes the workflow graph
verify_workflow static analysis before execution

Example (JSON definition)

{
  "id": "review-deploy",
  "name": "Review and Deploy",
  "start": "review",
  "stages": [
    { "id": "review", "name": "Code Review",
      "step": { "type": "pattern", ... } },
    { "id": "deploy", "name": "Deploy",
      "step": { "type": "proposal", ... } }
  ],
  "edges": [
    { "from": "review", "to": "deploy",
      "conditions": [{"key": "stage.review.succeeded", "operator": "eq", "value": true}] }
  ]
}

Where it fits

Surfaced via the WebSocket workflow.run and workflow.verify methods. Use car-multi directly for ad-hoc coordination patterns; reach for car-workflow when you want a named, persistable, compensable definition with conditional flow control.

Dependencies

~58–84MB
~1.5M SLoC