The premise
What if agent orchestration was configuration, not code?
Three premises shared with other frameworks. Three inverted by Studio.
01
A pipeline is a YAML file
Declares stages and groups. Each stage references an agent (runtime config) and a contract (JSON schema + constraints). Modifiable without a programming environment, line by line.
02
The engine executes via the RALPH loop
Execute → validate → advance if contract passes, retry with enriched feedback if it fails. No stage advances until its contract is met.
03
Run it 10 times, get 10 correct outputs
That's why contracts and retries exist. Anti-theatre by construction — the agent cannot skip steps that the contract requires.
Trade-offs
Explicit trade-offs.
Not accidental ones.
LangGraph, CrewAI, Autogen share one premise: agent orchestration is code. Studio takes the inverse premise and assumes it.
| Framework | Surface | Validation | Parallelism | License |
|---|---|---|---|---|
| LangGraph | Python code | Manual | Native | MIT |
| CrewAI | Python code | Manual | Native | MIT |
| Autogen | Python code | Manual | Native | CC BY 4.0 |
| studio: | YAML config | Contract-based | Declarative | AGPL-3.0 |
If your need fits the first three, no need to write Studio. If it doesn't, you write a YAML file reviewable line by line, modifiable without programming environment.
Why Studio exists
Three patterns.
Everything is declarative. You describe what you want in YAML, the engine handles orchestration. Wiki Creator and Little Chef rely on it in production.
Pattern 01
Generation, validation groups
One stage produces, another critiques. If the critic rejects, the group restarts with accumulated feedback. Max N iterations. Anti-theatre applied to creativity.
Pattern 02
Parallel groups
Fan-out / fan-in declared in YAML. Stages run concurrently. The engine handles async/await and merge.
Pattern 03
Tool-call verification
The runner tracks tool calls. If the contract requires repo_manager.write_file minimum 1 and the agent calls none, the stage fails. Anti-theatre.
Architecture
Seven packages, one monorepo. Each fits in a context window.
The dependency graph is the architecture.
@studio/contracts
Shared types & interfaces. Zero dependencies.
@studio/anonymizer
PII detection & anonymization before LLM calls.
@studio/ralph
Execute, validate, retry. Generic executor.
@studio/runner
LLM calls, tool plugin runtime, multi-provider.
@studio/engine
Pipeline orchestration, state machine, persistence.
@studio/api
HTTP REST API (Fastify) + SSE streaming.
@studio/cli
Terminal interface for Studio pipelines.
Built on Studio
Two domains. Zero orchestration code.
Wiki Creator
Extract entities, relations, generate wiki pages from EPUB books. NLP + LLM pipelines.
Little Chef
Meal planner. Researches cuisines, develops recipes with nutritional profile, generates grocery lists.
Why a commons
Why a commons, not a startup.
Studio could have been a startup. The product shape lends itself to it. The opposite choice is deliberate. An AI agent orchestration kernel, captured by a company, becomes the bottleneck of everything flowing through it. Studio is designed so that it cannot be captured.
Read the charterThree structural mechanisms
AGPL-3.0 license
Any modification used in production must be published under the same license.
Non-profit foundation (in progress)
The kernel is intended to be owned by a non-profit, non-transferable foundation. The founder's progressive withdrawal is an explicit goal.
Three strictly separated layers
Open source kernel (commons) · Support core (hosting, maintenance) · Products powered by Studio (commercial or open source). No commercial entity has authority over the kernel.
The kernel is a commons by design. The license is the mechanism that maintains it.