Concepts
Core ideas behind Cori — agents at design time, deterministic execution at runtime.
Cori is built on one insight: the LLM's value is figuring out the workflow on the first conversation — not re-deriving it on every run.
When you solve a problem with an agent, the agent does real thinking: it breaks the task into steps, picks tools, handles edge cases. That thinking is expensive and slow. But once the plan is known, you don't need the LLM to re-execute it. You need a reliable runtime.
Cori makes this split explicit: the agent does design-time reasoning; the workflow runs deterministically at runtime on Temporal. An LLM is only in the loop at runtime if a step genuinely needs to process new data — to translate, classify, summarize, or extract something from content that didn't exist at design time.
Workflows are folders
A workflow is a folder on disk, run by path or git ref. No registry, no IDs.
Activity kinds
The five kinds of steps: cli, mcp_tool, code, llm, and builtin (deferred).
Execution model
What cori run actually does, step by step.
Determinism
Why the design-time/runtime split gives you durable, safely retryable workflows.
Workers and identity
Task queues, the single default worker, and shared worker pools.
Architecture
Locked decisions distilled — for curious readers and contributors.