Close the drive‑thru.Open a kitchen.
kitchn is the workflow layer for your coding agents: who picks up an issue, who builds it, who checks it and what's allowed to ship. Work with it in your session or put it on autopilot, on top of the orchestrator you already use.
curl -fsSL https://getkitchn.com/install.sh | shcargo install kitchn --lockedBoth arrive with the first release (#18). Until then, build from source, then set up your first house.
Right now, you're the whole kitchen.
Six agents, one of you. You take every order, read every diff, decide what's good enough, merge at midnight and clean up worktrees in the morning.
You're not running a software factory.
Factories count units shipped. A good kitchen serves a full room every night and still sends back any plate that isn't right. Your agents should work to that standard, as a brigade where everyone knows their station.
Meet the brigade
Eight stations, each with one job. Every station owes evidence and has a line it can't cross. Stations open only when there's work for them.
Follow one order
Here's issue #58 going through the kitchen. Every station hands over evidence, and nothing moves on without it.
- Order inGitHub issue
- Sous-chefOrca + Claude Code
- Station cookOrca + Codex
- ExpediterOrca + Claude Code
- Chef-ownerYou
- 09:12Order in#58 Add a retry budget to pickup. Blocked by #57, which is done.
- 09:12Sous-chefClaimed #58. Capacity 2 of 3. Sole writer on kitchn/58.
- 09:13CookWorking in an isolated worktree on Orca with Codex.
- 09:39CookTests pass. Evidence attached. Opened PR #61.
- 09:41ExpediterChecking exact head 7c1e9a2 with Claude Code.
- 09:44ExpediterSent back: retry count can overflow. Round 1 of 3.
- 09:52CookFixed. New head 3b04d17.
- 09:53ExpediterHead moved, old approval void. Rechecking 3b04d17.
- 09:57ExpediterChecks green, reviewer approved, no open findings.
- 09:58Chef-ownerHouse rule: merges need your sign-off. Approved 3b04d17.
- 10:03Order upMerged. Worktree kept until cleanup can prove it's done.
Each station runs on the orchestrator and model you chose for it.
Start from your session
Open an Orca workspace, type /kitchn and point it at an issue. It reads the sub-issues and their dependencies, then runs the whole tree through Orca's worktrees, terminals and messaging while you watch and answer.
› /kitchn let's work on #14House acme, guidance pinned at 4f2a9c1. #14 has 4 sub-issues: #15 Task contracts ready #16 Pickup workflow blocked by #15 #17 Merge gate blocked by #15 #19 Docs readyStart cooks on #15 and #19 now, then #16 and #17 when #15 merges?› yes, goOrca: 2 worktrees, Codex cooking, Claude Code at the pass.11:40 #15 merged. Started #16 and #17.11:52 Cook on #17 asks: keep the legacy flag? Waiting for your answer.You stay the chef-owner. Merges wait for your sign-off.
Don't memorize any of this
The /kitchn skill knows every command. Ask in plain words and it runs the right one, shows you the preview and asks before anything changes.
what's still missing for this repo?
Repository access for acme isn't observed yet, and the gate needs a backend with scheduling. Want me to walk you through both?
Coming soon
The dashboard
Every order on the line, what's waiting on you, and what each station has earned, for your whole house in one place.
Coming soon
Roger
When a station needs a decision, Roger brings the question to you wherever you are. Your answer goes straight back to the task and revision that asked, once, and never to another house.
Put it on autopilot
Once a station has earned it, close the laptop. The brigade keeps cooking on the stations you've trusted, stays inside the house budget, and leaves the calls that need you on the pass for the morning.
Watch
Run a station next to you from your worktree. Nothing runs on a schedule until you turn it on.
Correct
Fix what's off and write it into house guidance, pinned by revision.
Record
Each outcome links station, project, model, rules revision, PR and evidence.
Hand over
Grant autonomy per station, project and kind of work. Never silently, never across houses.
- 22:04Sous-chefPicked up 3 ready issues. #81 waits: blocked by #80.
- 22:06CooksTwo worktrees on Orca with Codex, one writer each.
- 23:10Expediter#84 sent back: no test for empty input. Round 1 of 3.
- 23:52Expediter#84 passes at exact head e41b2c0.
- 23:53Order upMerged #84 under the bugfix grant this station earned.
- 00:40CookQuestion on #86: keep the old flag or remove it? Parked for you.
- 02:15InspectorSampled merged #79. No findings.
- 03:00DishwasherCleared 3 finished worktrees. Kept 1 with untracked files.
Service report07:30
Good morning. Here's last night at acme.
- Merged
- #84, #85
- Needs your sign-off
- #87 (feature work isn't trusted to merge alone yet)
- Question for you
- #86
- Sent back and fixed
- 1
- Cleaned up
- 3 worktrees
- Budget
- 11 of 40 agent-hours this week
One house at a time
Trust earned in one house is never authority in another. Keys never cross.
Bounded
Minimum intervals, weekly budgets, one consumer per repository, capped retries.
Stops cleanly
Pause any schedule at any time. Uncertain work and human-only issues wait for you.
Your house in one file
A house is the organization kitchn works for. Its policy says which repositories it may touch, where it may post, and which reviewers and checks every change needs.
kitchn writes nothing into your repositories. Bindings, grants and state live in your private registry, so teammates running their own agents never find a kitchn file. Doctor treats anything it can't observe as unknown, never as fine.
How houses work{
"house": "acme",
"repositories": ["acme/app"],
"postingDestinations": ["acme/app"],
"requiredReviewers": ["desktop-reviewer"],
"requiredChecks": ["tauri-check", "specta-types"],
"grants": [],
"policyLimits": []
}kitchn house doctor
acme/app: setup incomplete
- House-scoped repository accessUnobserved
- Label agent-readyUnobserved
- Scheduled gate capabilities5 required
- Pinned instructionsVerified
- Workers, schedules, labelsNone activated
Templates that never clobber
Each house can define what a repository should look like. kitchn previews every file first, adds only what's missing and leaves your edits alone, even with --yes.
Template variables are validated before they reach TOML, Rust or a shell command, and every managed file records which guidance revision produced it.
Templates guideschema = 1
name = "example"
house = "acme"
revision = 1
[variables.project_name]
description = "Human-readable project name"
[[files]]
source = "AGENTS.md.tera"
provenance = "html-comment"kitchn adopt . --template example
Existing directory, preview only
- README.mdDiffers, left untouched
- AGENTS.mdAdd
- CLAUDE.mdAdd
- .gitignoreAdd
kitchn doesn't launch agents itself. It sits on top of the orchestrators you already run and asks each one for the capabilities a workflow needs. If a backend can't provide one, the workflow refuses to start instead of guessing. Pick the orchestrator and model per station or per use case: one to cook, another to check.
37coding agents, one brigade
Anything Orca can launch can take a station. Put Codex on the line and Claude Code at the pass, or pick per project and kind of work.
Source: Orca's supported agents
We looked for this before building it
Coding agents
A strong cook.
One cook isn't a brigade. Nobody independent checks the plate.
Orchestrators
Many agents in parallel worktrees.
They run the line. Who may ship what, and why, is still up to you.
Agent frameworks
Build your own agents in code.
You'd be building the kitchen from scratch.
Review bots
A second opinion on a pull request.
It doesn't hold the merge until the exact head passes your checks and approvals.
Governance layers
Policy and evidence around agent work.
Worth watching. None we found combined portable roles, per-house isolation and earned autonomy across orchestrators.
So we built the kitchen.
Who it's for
You run more agents than you can watch
An expediter takes the first pass on every pull request and sends back what fails, with the evidence.
You work for more than one house
A day job, a client, an open-source project. Each gets its own rules, keys and history, and none of them leak into the others.
Your team wants one bar for everyone
Agent pull requests meet the same checks, reviewers and approvals as a person's, on the exact revision that merges.
You want to hand off more over time
Start supervised. Widen a station when its record says it's ready, and not before.
One agent, one chat, one repository? You don't need a brigade to make toast. Come back when the orders pile up.
Kitchen talk
The kitchen words kitchn uses, in plain terms.
- House
- The organization kitchn works for: a company, a client or an open-source project. It owns the rules, allowed repositories, reviewers and credentials. Houses never share keys, context or history.
- Station
- One job with one owner, such as the cook who implements or the expediter who checks. Each station owes evidence and has a line it can't cross.
- Order
- A task, usually a GitHub issue, moving from station to station.
- The pass
- The independent check before anything ships: the exact revision, the required checks and reviewers, and no open findings.
- Pinned guidance
- The house's written rules, imported as a verified snapshot and locked to a revision. A task keeps the rules it started with.
- Orchestrator
- The tool that launches and supervises agents, such as Orca. kitchn sits on top of it.
- Evidence
- What a station hands over: tests run, the exact revision, findings and what's still unknown. Missing evidence is never success.
- Grant
- Explicit permission for one kind of external action, such as posting or merging, scoped to a repository. Installing kitchn grants nothing.
Always dreamed of running a kitchen?
Now you're the chef-owner.
Install the CLI, register your house and adopt a repository. About two minutes. The script and crate arrive with the first release; until then,build from source.
curl -fsSL https://getkitchn.com/install.sh | shcargo install kitchn --locked