LLM workflow execution engine
Each agent runs inside its own Docker container with isolated filesystems, dependencies, execution entrypoints, and persistent identity.
Every model request passes through an enforcement gateway that manages budgets, auditing, logging, and provider routing.
Every interaction is stored as an immutable transaction for reproducibility, auditing, and spend tracking.
Every LLM request is routed through a per-agent gateway. The gateway enforces token budgets, blocks requests once limits are exceeded, records complete audit logs, and attributes usage at both the agent and model level.
Agent
│
▼
LLM Gateway
│
▼
Claude / GPT / Ollama Every interaction becomes a transaction, enabling reproducible execution histories and accurate spend tracking.
type LLMTransaction struct {
ID int
AgentId int
InputTokens int
OutputTokens int
Model string
Timestamp time.Time
} workflow.yml
└── WorkflowVisor
├── Task Dependency DAG
└── Scheduler
├── researcher
│ ├── Docker Container
│ ├── LLM Gateway
│ └── Persistent State
├── writer
│ ├── Docker Container
│ ├── LLM Gateway
│ └── Output Artifact
└── finalizer
├── Docker Container
├── LLM Gateway
└── Persistent State agent:
name: researcher
model: claude-sonnet-4
secret: claude_key
runtime:
wd: /var/agents/researcher
exec:
- python3
- agent.py
budget:
max_input_tokens: 30000
max_output_tokens: 60000 workflow:
name: research-and-write
steps:
- id: research
agent: researcher.yml
- id: write
agent: writer.yml
Budget limits are enforced structurally at the LLM Gateway. If
an agent exceeds its configured limit during execution, the
gateway terminates the stream and returns a
402 Payment Required
response.