The software factory on your own infrastructure.

Agents plan, build, test and open the pull request. Sandboxed, reviewed once, reverted on a failed deploy.

Built on
  • GitHub
  • Claude Code
  • Docker
  • gVisor
  • Postgres
  • OpenBao
  • Playwright
  • Telegram

State the outcome. Talosworks carries it to merge.

One coordinator per repo plans the work and splits it into slices. The daemon queues every turn and holds the merge gate.

OutcomeCoordinatorSliceown branchSliceown databaseSliceproves its changeWrapPull requestLenscorrectnessLensdata and securityMergeDeploy

Plan in slices.

One brief. One agent per slice, each on its own branch.

Prove every change.

Typecheck, tests, end-to-end. Screenshots in the pull request.

Merge by risk.

Low and medium risk merge on green. High risk waits for approval.

Gates, not trust. The daemon checks every step.

Agents decide what to build. The daemon decides what merges, and keeps every secret out of reach.

sandbox, under gVisorAgentPostgresprivate network, hub mounted inGit hubGit credentialstays on the host

A sandbox per agent.

One pod per agent, a database for every slice. No Git credential inside.

pull requestthe fixCorrectnessData and securitythen it stops

Review once.

Each lens reads the pull request once, then the fix once. Then never.

sandboxAgentEgressVaultAccountno secretwith secretevery connection logged

Brokered secrets.

Agents use outside accounts without holding the keys. The gateway adds them in transit.

MergeDeployLiveRevert PR

Deploy, or revert.

No commit deploys twice. A failed deploy becomes a revert pull request.

Watch the factory turn by turn.

Goals, agents, pull requests and notes, straight from the daemon. Every line an agent prints is a trace.

ConsoleGoalsAgentsNotesLenses
GoalsSample data
RepoOutcomeStateLast line
shop-apiSign in with a magic linkActiveWAITING checks
shop-apiWeekly digest emailQueued 
docs-siteSearch across every guideParkedWAITING approval
billingUsage-based plansBlockedBLOCKED which plan is the default?
coordinator kit slice auth
slice auth typecheck ok, tests ok, e2e ok
slice auth kit msg coordinator "slice auth DONE"
The console reads. It does not act.Request access

Your own infrastructure. One door for every sandbox.

The daemon, the state, the sandboxes and the secrets, on one machine. Everything a sandbox sends leaves through one proxy.

your own infrastructureprivate network, one sandbox per agentOperatorckitsocketGit hubbare repo on the hostDaemonqueue, traces,merge gatePostgresstate, not memoryCoordinatorSlicewith its own PostgresSlicewith its own PostgresReviewerread-onlyDeployershort-livedEgressthe sandboxes' way outVaultOpenBaoGitHubModelConnected accountssecrets added in transit
Bring
One Linux server over SSH, Docker with gVisor, a GitHub repo and a Claude subscription.
It runs
The daemon, Postgres, the egress proxy, a vault, and one sandbox for every agent.
Stays with the operator
The repo's risk policy, approval of high-risk pull requests, and the deploy script.

One turn per event. Four ways to end it.

A goal moves when something happens: a slice finishes, a check turns red, a review lands. Each turn ends on one line the daemon can read.

  • It asks only when stuck.

    A question reaches the operator through BLOCKED. The rest it carries itself.

  • It cannot claim done.

    GOAL DONE is refused while a milestone is still unticked.

  • It does not spin.

    Every goal has a budget of turns, slices and hours. Two idle turns pause it.

QueuedActiveNEXTStill activeWAITING <event>eventanswerBlockedBLOCKED <question>Parkedgreen, awaiting approvalDoneGOAL DONE <evidence>approved, merged

Stop supervising agents. Operate the factory.

Hand it an outcome and a budget. Answer only when it is blocked.