How it works

A real software process, run by a kernel that does not take an agent’s word for anything.

The kernel is small and deterministic. Agents do the thinking and the typing; the kernel decides what happens next, and only on evidence.

  1. 01Choose the processA selector picks a process template and a target profile for the idea. An estimator offers three cost tiers, and you pick one, once.
  2. 02Run the phasesPhase roles produce artifacts: the product owner writes the spec, the architect the design, the planner the backlog, the releaser the release.
  3. 03Build in a real workspaceThe developer works in a real git repository, one backlog item per commit. Its edits stay inside the workspace; network, privilege and publishing commands are denied.
  4. 04Pass the gatesEvery transition needs gates: real tests, lint, build and security scan, or a reviewer or skeptic verdict that must cite evidence. Failures walk a ladder.
  5. 05Release carefullyEvery journey runs again on a brand-new database. Then a preview starts, is checked over HTTP, a rollback is verified, and only then is it promoted. A promotion that fails goes back to what was live.
  6. 06OperateApp errors, downtime, vulnerable libraries and your feedback become work items. The maintenance template triages, fixes, verifies and releases again.

Thirteen gates. Each one needs proof.

A judged verdict fails only on blocking objections. Minor suggestions are recorded, not enforced, and a verdict with no citations is a fail.

GateKindWhat it proves
schema-validmechanicalEvery artifact an agent produced matches its schema.
budget-okmechanicalThe work so far fits the tier you chose.
spec-completejudgedA reviewer finds the spec complete enough to design and build from.
architecture-soundjudgedThe design names the roles and modules and fits the spec.
tests-passmechanicalThe project’s real tests run green.
lint-cleanmechanicalThe code passes the linter.
build-succeedsmechanicalThe production build completes.
security-scan-cleanmechanicalNo leaked secrets and no vulnerable dependencies.
diff-matches-specjudgedThe change does what its backlog item and the spec say.
skeptic-reviewjudgedA skeptic, who can only object, finds no blocking problem.
journeys-passmechanicalEach kind of user’s main jobs work in a browser, at phone and desktop size.
preview-healthymechanicalThe preview serves the new build, not a login page or the old one.
rollback-verifiedmechanicalGoing back to the previous release actually works.

When something fails

Failures walk a ladder, never a loop.

A retried role is shown exactly why it failed and what it produced last time. Dropped or parked work is reverted, so it never ships.

rung 1RetryWith the objection quoted and the last attempt shown.
rung 2Send back or shrinkReturn to an earlier phase, or cut the item down to what can pass.
rung 3ParkSet the item aside and revert it. The rest of the build carries on.
rung 4StopHalt the project and say why, in plain words. Nothing broken goes live.

Process templates

The right process for the idea.

Each template is a YAML file: which phases exist, which roles run in each, which gates guard each transition, and what to do on failure. You can write your own.

Writing a process template

Short sprints with phase gates. The default for most products.

Most ideas: built a few backlog items at a time, each sprint gated.

  1. specify
  2. design
  3. plan
  4. build (sprints)
  5. release

Crash anywhere, resume exactly

Everything is an event in an append-only log and a Markdown artifact, committed to git inside the project. karigor resume replays it to the exact state; karigor explain turns it into a story.

Secrets stay where the app runs

Karigor makes secrets like a signing key itself and asks in plain words for what only you can provide. Values go only to the host’s sensitive settings or a private file; Karigor’s own records keep names, never values.

Every decision is correctable

Nobody is asked a technical question, but every assumption is recorded. Change any of them in your own words; once the app is live, the change becomes a work item and a fix round.

Self-host it safely

Run the chat UI from Docker to reach it from your phone. It refuses to listen beyond localhost without a token.

Watch the whole process run, free, in two minutes.

Get started