Live · Tracks regressions after your PR lands.

Most coding agents disappear the moment a PR opens. Kiwi doesn’t.

Not during review, and not after merge either. It resumes a review comment with full context, and it keeps watching the merged commit for regressions.

No API key to start · Managed cloud or your own VPC · One job → one branch → one PR

Offload the grind · Focus on the architecture

  • Bug Triage
  • Feature Implementation
  • Code Review
  • Refactoring
  • Test Generation
  • Dependency Updates
  • Security Patching
  • Bug Triage
  • Feature Implementation
  • Code Review
  • Refactoring
  • Test Generation
  • Dependency Updates
  • Security Patching
  • Bug Triage
  • Feature Implementation
  • Code Review
  • Refactoring
  • Test Generation
  • Dependency Updates
  • Security Patching
How it works

Beyond the merge.

Most agents disappear the moment a PR opens. Kiwi plans, edits, and sandbox-verifies your change — but then it stays. Comment on the PR and it resumes with full context. Merge the PR and it keeps watching for 24 hours, returning a final verdict on whether the commit caused a regression.

  1. Plantask objective
  2. Editsandbox tools
  3. Verifytest command
  4. PRhuman review
  5. Resumefrom comment
  6. Mergecode lands
  7. Watchpost-merge window
  8. Verdictregression free
Control PlaneSESSION ONLINE
Jobkiwi/job-42
Round2 of 2
ARCHITECTround 1 · architect sets the objective
DONE
sequential · round 1
[architect] Reading every caller of the session store…
[architect] 3 call sites assume in-memory state
✓ objective handed to implementer
IMPLEMENTERround 1 · implementer edits the repo
DONE
sequential · round 1
[implementer] Editing pkg/session/store.go…
$ go test ./pkg/session
writing migration 0002_sessions.sql…
VERIFYround 1 · verify full suite
DONE
sequential · round 1
$ go test ./… (full suite)
✓ 128 passed, 0 failed
ARCHITECTPR open · human review
DONE
final step
● Opened PR #42 → main
@reviewer: "Can we add a rollback path?"
IMPLEMENTERround 2 · resume from comment
QUEUED
sequential · round 2
waiting for resume trigger…
VERIFYpost-merge · watch for regressions
QUEUED
final step
waiting for merge…
Composing one PR…branch kiwi/job-42 · verify pending
What you get

Evidence you can take to a security review

Any model can generate a diff. Deciding it is safe to merge means knowing where it ran, what it could reach, and who approved it. Kiwi runs the work inside a boundary you define and hands you the record.

01

Does what you askedThe whole point

Your description is the objective. Your test command is a guard proving the change broke nothing. Keeping those apart is what makes “add an example to the docs” as ordinary a job here as a bug fix. A run that changes no code gets reported as a failure. And while your suite is red, Kiwi will not touch the failing test, because weakening an assertion is the easiest way to fake a fix.

02

Models includedNo key required

Every account gets a monthly token allowance on models Kiwi pays for, so the first task you run costs you nothing and configures nothing. Over a hundred models are available, grouped by what they cost to run — no-cost, economy, and frontier — each with its own allowance, because a token on a frontier model is worth two hundred of one on a cheap one. The catalogue refreshes itself from the providers daily, so new models show up without waiting for us. Connect your own Anthropic, OpenAI or Gemini key whenever you want and that work is unmetered.

03

Two-phase sandboxContainment

Dependencies install in a networked phase we hand an empty environment. No git token, no registry credential. A hostile postinstall hook gets the network and nothing worth sending. Then we cut the network and run your test command over the model’s code offline. Model-generated code never reaches the network, and the phase that does never holds a secret. The daemon that does all of this is Apache-2.0, so a security review can read the thing that touches the code rather than take our word for it — and it depends on none of the commercial half, which a test in the repo enforces.

04

Every step on the recordEvidence

Every round writes an event: which model proposed the edit, whether the Architect approved it and why, whether your tests passed, plus tokens, cost and duration. Kiwi hash-chains those into a per-job execution record, so you can check a run instead of trusting it. When a job took three attempts, you see the two that got turned down. Today that record lives in the dashboard — it’s moving onto the pull request itself next.

05

Stays on the jobNo re-run from zero

Most agents finish, discard their context, and have no idea the conversation continued. Kiwi keeps the session: a review comment starts the next round with everything the Architect and Implementer knew when they wrote the code, plus the reason you rejected it. After merge, it watches for 24 hours to prove the commit caused no regressions.

06

Bring a prompt and a repoZero setup

You pick no image, configure no test command, write no file list. Kiwi reads what your repository already declares (a devcontainer, go.mod, .nvmrc, .python-version), picks the runtime, and infers the test command. Guess the runtime wrong and it corrects itself before the Actor sees the error.

Post-merge guard

Telemetry that watches the merge.

Most agents disappear the moment a PR opens. Kiwi watches the landed commit for 24 hours in production, checking for reverts, CI regressions, and telemetry drops before writing the final signed verdict.

Target CommitPR #42 (8f9a2c3)
Observation Window14.4h / 24.0h
Signal Health3 / 3 Cleared
AttestationSHA-256 Signed
Continuous SignalsPolling: 60s

Revert Scan

0 revert commits detected on target branch

CLEARED

Post-Merge CI Runs

Main branch test suites (128/128 green)

CLEARED

Production Telemetry

opt-in

P99 latency & error rates nominal (±0.00%)

HEALTHY
Observation Timeline Live Watching
24h observation window60%
VERDICT RECORDSTATUS: SEALED
hash: 7f8a92b3c4d5e6f1a0b2...
verdict: NO_REGRESSIONS_DETECTED
Commit Verified

24h guard concluded with 0 regressions

pkg/ver · sha256 hash-chainingAttestation: Verified & Signed
Roadmap

What’s next

Capabilities currently in development for the next release cycle.

In the works

Any-PR monitoring

Point Kiwi at any merged pull request — not just ones it opened itself — and it starts watching for regressions, the same as it does for its own PRs today.

Coming soon

Verdict record on the PR

Today, the signed execution record lives in the dashboard. Next, the full verification evidence lands directly on the pull request where the reviewer already is.

In development

Hardware-isolated execution tier

A dedicated, stronger-isolation execution option is in development for workloads that require boundary guarantees beyond our standard gVisor sandboxing.

One product · Two operators

Start on our cloud. Move to yours when you need to.

The same daemon, protocol and execution loop run on both. Only the operator of the machine changes, so moving over costs you a flag rather than a migration.

Default entry

Managed

Zero setup. We host the data plane, hold your keys like any SaaS, and you ship your first PR in one command.

$ npm i kiwi && kiwi submit "Add pagination to the users API"
  • No AWS account, no Terraform, no VM
  • Bounded free tier, then usage-based
  • Fastest way to see a real PR
Get started at app.runkiwi.dev
Graduation

Bring Your Own Cloud

Run the daemon in your own AWS or GCP account. Code and credentials never leave your VPC. Zero-knowledge, and cheaper at scale.

$ terraform apply  ·  kiwidaemon --join-token …
  • Proprietary code stays in your VPC
  • Credentials sealed to a key only you hold
  • For compliance, and cheaper at volume
ManagedBYOC
Onboardingnpm i kiwi && kiwi submitterraform apply + a VM
OperatorKiwi runs the daemonYou run the daemon
Your codeOn Kiwi infrastructureNever leaves your VPC
CredentialsSealed in transit & at restZero-knowledge; we cannot decrypt
PlannerDaemon-side, alwaysDaemon-side
You pay forCompute + orchestrationOrchestration only

We are specific about this on purpose. Zero-knowledge is a BYOC property. In managed mode we operate the machine holding the key, so we can read your credentials, the same as any hosted platform. If that matters to you, run BYOC.

Pricing

Start free, move when you need to

Free covers evaluating Kiwi on your own projects, on models we pay for — no API key, no card. Pro adds seats, throughput, and the daemon running inside your cloud.

Free

$0

Perfect for evaluating Kiwi on personal projects.

Most Popular

Pro

$18/ user / mo

+ $10 per 250 extra agent-min.

Agent-minutes are per seat, pooled across your org. Pro runs the daemon in your own cloud today; the dedicated managed fleet is still in build. We set you up by email, so there is no card checkout yet.

Enterprise

Custom

For teams with compliance boundaries or heavy parallel workloads.

FeaturesFreeProEnterprise
Agent-minutes/mo5002000 per seat (pooled) + buy moreCustom
Concurrent jobs120Custom
FleetShared managedDedicated managed Coming soonBYOC or dedicated
Swarm widthUp to 4HigherCustom
GitHub
Linear
Slack Coming soon Coming soon
gVisor sandbox + credential sealing
Kiwi-provided models (no API key needed)
Monthly token allowance — no-cost class10M50MUnlimited
Monthly token allowance — economy class1M20MUnlimited
Monthly token allowance — frontier class50k2MUnlimited
Bring-your-own model key (Anthropic, OpenAI, Gemini) — unmetered
Shared context (cross-task memory)
Run in your own cloud (BYOC, zero-knowledge)
Firecracker microVM isolation Coming soon
Data residency / on-prem
Domain team join
SSO / SAML Coming soon
Advanced RBAC Coming soon
Audit logs Coming soon
Compliance (SOC2…)On request
SupportCommunityPriority emailDedicated + SLA
Quickstart

Your first PR in one command

Start on our managed cloud with nothing to provision. Move to your own VPC later. The command you type never changes.

Managed, no setup (app.runkiwi.dev)
# Sign in with GitHub at app.runkiwi.dev, or use the CLI:

# 1. Install the CLI and log in
npm i -g kiwi && kiwi login

# 2. Connect your own model key (anthropic, openai, gemini)
kiwi creds set openai "sk-..."

# 3. Submit a task. No cloud account, no VM.
kiwi submit "Migrate auth to Postgres"

# No image, no test command, no file list. Kiwi
# reads them off the repo, plans the work, runs
# the swarm, and opens one verified PR.
BYOC, your AWS or GCP account
# Move to your own cloud when you need to.

# 1. Provision the daemon in your VPC
terraform apply   # VPC + VM + kiwidaemon

# 2. Register it with a single-use join token
kiwidaemon --join-token "$KIWI_JOIN_TOKEN"

# 3. Same command, now running in YOUR account
kiwi submit "Migrate auth to Postgres"
Built-in security

Safe by default, from the very first run

Sealed credentials

Keys are sealed to the daemon with X25519 and opened in memory alone. In BYOC that key lives on your machine, so the Control Plane cannot decrypt them.

Two-phase sandbox

Dependencies install with the network on and no credentials at all; verification then runs your test command with the network off. Model-generated code never has network access, and the phase that does has nothing worth stealing.

The sandbox never holds a key

The model runs in the daemon process, not the sandbox, so the raw credential never enters the container. A prompt-injected agent running your test command has nothing to steal.

Per-org budgets & isolation

Every org runs under enforced concurrency, per-task step and dollar caps, and a hard monthly ceiling. Fifty agents overnight cannot turn into a runaway bill.