ouroboros.build — autonomous development loopsInfinity in Autonomy.
Ouroboros points autonomous coding loops at your backlog. It sizes every issue, writes the fix, builds on your own hardware, proves the pull request does what the ticket says — and merges it. You watch the loop turn.
Issue in. Verified pull request out. Forever.
Eight stages, and the honest part: when a gate fails, the loop bites its own tail — back to code, another attempt, until the evidence is green.

It reads your backlog so you don’t have to.
Every open issue is continuously estimated — effort, risk, files touched, cost — and queued into the workflow you chose for it.
Real work on real hardware.
The right model for each stage writes the change; your own build farm compiles it and runs the suite — including physical hardware-in-the-loop benches.
Merged on evidence, not optimism.
An evidence matrix proves the PR does what the ticket says. Gates green, policy satisfied — the loop merges, closes the issue, and pulls the next one.

Nine systems. One turning wheel.
Workflow Studio
Design what happens when a ticket is pulled — on a node canvas, in a typed DSL, or by describing it in a sentence. All three edit the same graph, losslessly.
Learn more →02Model Registry · BYOK
Every allowed model is a named alias binding your provider key to a model id. Routes only ever see the alias — swap the key behind it, change nothing else.
Learn more →03PR Verification
Every claim in the ticket mapped to a test, a measurement, or a diff hunk. The PR doesn't merge because it looks right — it merges because it's proven right.
Learn more →04Build Farm & HIL Rigs
Your machines, enrolled with one outbound-only command. Firmware builds, QEMU, and physical hardware-in-the-loop benches — power cyclers, dynos, bus floods.
Learn more →05Build Analyzer
An AI that reads every build you've ever run, attributes every shift in the curve, and drafts new processes, workflow changes, and tickets — with evidence.
Learn more →06Chat Ops
Loops report to Slack or Teams. Blocked builds ask their question in-channel and resume when you answer. Every control is a /ouro command — or a sentence.
Learn more →07Insights
Autonomous merge rate, cost per merged PR, cycle time by stage, model win-rates, flaky-test intelligence, DORA — computed from events, not self-reported.
Learn more →08Planning & Tickets
Describe the outcome; Ouroboros drafts sized, dependency-wired tickets for GitHub, Jira, or Linear — and keeps the roadmap honest as reality drifts.
Learn more →09Knowledge
Skills you write, playbooks you aim, and facts the loop learns from its own runs — proposed with evidence, confirmed by you, expiring with the code.
Learn more →Three editors. One graph. Zero drift.
Workflows decide everything: which issues get pulled, which skills load, which models run each stage, what gates a merge. Edit them the way you think.
- Visual canvas — stages, branches, and the gate that loops back on failure. The ouroboros, literally.
- Workflow-as-code — a typed DSL in a Monaco editor, compiled to and from the canvas losslessly.
- Copilot — “create a workflow for security patches that proves the CVE is fixed” → an 8-stage draft, with questions.
- Dry runs — rehearse any workflow on a real issue with zero side effects, and let the AI suggest improvements from what it saw.

Route every kind of work to the model that earns it.
Bring your own keys for Anthropic, GitHub Copilot, Cursor — or none at all, with local models over Ollama and vLLM serving tokens at zero cost.
- Named aliases — coder-max, sizer, local-docs. Routes and workflows reference names, never raw model strings.
- Per-task routing — planning on your strongest model, commit messages on your cheapest, with ordered fallbacks.
- Escalation rules — big diffs escalate to max thinking; docs-only changes route entirely local.
- Spend guards — per-run and per-provider caps that pause the loop before it gets expensive.

It doesn't just compile. It survives the bench.
Enroll your own machines with one command — no inbound ports. Then let the loop prove its work on real hardware: power-loss recovery, bus floods, motor benches.
- Outbound-only runners — pools for firmware, macOS, GPU, and HIL jobs on hardware you control.
- Hardware-in-the-loop — measured-vs-expected physics: “overshoot 1.7% ≤ 2.0% limit” beats “tests passed.”
- Failure triage — classify product bug vs flake vs rig issue; corrections feed straight back into the loop.
- Warm caches — ccache, env snapshots, and history-replayed estimates keep cycles in minutes.

Does the PR do what the ticket says? Prove it.
Seven gates stand between generated code and your main branch — and the centerpiece is an evidence matrix mapping every claim in the issue to something concrete.
- Evidence, not vibes — each acceptance criterion resolves to a named test, a rig measurement, or a diff hunk.
- Second-model review — an independent model votes on the diff; disagreements block.
- Honest waivers — what the bench can't verify is waived explicitly and annotated on the PR, in public.
- Policy-gated auto-merge — merges itself only when your rules say it may. Dry-run drafts until you flip the switch.

Your last 1,284 builds have opinions.
No other product does this: an AI that mines your entire build history, explains every change in the curve, and drafts what to do about it.
- Change-point attribution — every duration or reliability shift pinned to the merge, config, or infra event that caused it.
- Process suggestions — split the test gate, re-warm the cache, rebalance the pools — each with evidence and projected savings.
- Drafted tickets — issues generated from patterns, not people, sized and ready for the loop.
- Predicted vs measured — every applied suggestion is re-measured for 14 days; the analyzer retrains on its own misses.

The loop reports where your team already lives.
Finished loops announce themselves in Slack or Teams. Blocked builds ask their question in-channel and resume the moment someone answers.
- Blocking questions — “this fix wants to touch a protected path. Allow?” Answer in-channel; the build continues.
- The /ouro command set — status, queue, pause, dry-run, route, explain — identical in Slack, Teams, and the app.
- An AI presence — “why did #479 take 38 minutes?” gets an answer, a cause, and a one-click fix.
- Same rules everywhere — chat actions are policy-checked and audit-logged exactly like the UI.

Measure it. Steer it. Plan with it.
Autonomy your security team can sign off on.
Isolated tenants per domain, SSO-enforced, least-privilege GitHub App scopes — and a paper trail for every decision a machine ever made.
Tenancy & SSO
Every domain is an isolated tenant. SAML/OIDC through your IdP, roles synced from your groups, keys sealed in a per-tenant vault.
Policies as sentences
“Refactors need a human. Protected paths need allow-once. Loops pause at $2.50.” Versioned, auditable, editable as code.
Audit everything
Every merge, key rotation, waiver, and chat command in one log — streamed to your SIEM, retained on your terms, in your region.

The backlog feeds the loop. The loop feeds the repo.
First loop in about four minutes. Draft PRs only, until you say otherwise.


