-
Notifications
You must be signed in to change notification settings - Fork 2
Home
lacause edited this page Mar 29, 2026
·
10 revisions
Welcome to the OCC documentation. OCC is a workflow orchestration engine for Claude AI agents — define multi-step chains in YAML, execute them with parallel processing, and access everything via MCP or REST API.
14 modules, 437 tests, 40+ REST endpoints, 25 MCP tools.
- Getting Started — Install, configure, run your first chain in 5 minutes
-
Configuration — Environment variables,
.mcp.json, Docker, deployment
- Chain Format — Complete YAML reference for chain definitions
- Step Types — All 11 step types explained with examples
- Pre-Tools — Inject data before steps (web search, API calls, MCP servers, bash)
- Pipelines — Chain multiple chains together
- CLI — Command-line interface: run, validate, dry-run, cost estimate
- REST API — All 40+ HTTP endpoints with request/response examples
- MCP Tools — 25 MCP tools for Claude Code / Claude Desktop
- MCP Client — Consume 10,000+ external MCP servers in chains
- Architecture — 14 modules: executor, queue, storage, linter, MCP client, etc.
- Token Optimization — Minimize cost with caching, transforms, context strategies
- Cookbook — Practical recipes and patterns
- FAQ — Common questions and troubleshooting
| Concept | Description |
|---|---|
| Chain | A YAML file defining a multi-step workflow. Each step is an LLM call, data transform, or control flow. |
| Step | One unit of work in a chain. 11 types: agent, router, evaluator, gate, transform, loop, merge, browser, subchain, debate, webhook. |
| Pipeline | Multiple chains executed in sequence, with outputs passed between them. |
| Pre-tool | Data injection before a step — web search, HTTP fetch, file read, bash, env var, MCP call. Supports on_error (inject/skip/fail). |
| Variable | Outputs stored as output_var and interpolated into prompts via {variable_name}. Supports {key.subkey} and {key|"fallback"}. |
| Wave | A group of steps with no dependencies between them — they execute in parallel. |
| Gate | A step that pauses execution until a human approves or rejects via the API. |
| Queue | Persistent job queue — if all workers are busy, new executions are queued with priority instead of rejected. |
| Checkpoint | Each step result is saved to SQLite immediately. Crash recovery resumes from last completed step. |
| Execution | A running instance of a chain, with its own ID, status, step results, and SSE stream. |