Back

For engineers

You are the one being asked to allow this.

So here is the whole mechanism: what we read from your repository, where the code runs, what an editor can and cannot touch, and what happens to any credential you hand over.

Portability, honestly

Most tools ask you to describe your own environment. We just read the repo.

Rails, Next.js and Laravel differ in dependencies, databases, asset pipelines and seed data. That is usually where a setup form appears. Instead we look at your lockfiles and manifests and work it out — deterministically, in about a second, before a single container is built.

what we foundno configuration required
Detected  Next.js 15  ·  pnpm  ·  apps/web

install   pnpm install --frozen-lockfile
dev       pnpm run dev -- --hostname 0.0.0.0
port      3000

services  postgres          ← from psycopg in the lockfile
secrets   DATABASE_URL      ← supplied by that container
          AUTH_SECRET       ← generated, 32 random bytes
          STRIPE_SECRET_KEY ← stubbed; billing won't respond
          NEXT_PUBLIC_URL   ← the repo shipped a working default

Ready. Nothing needed from you.

Twenty stacks, no questions

Signature matching over lockfiles and manifests. No guessing, no model in the loop, nothing to fill in.

Next.jsViteSvelteKitNuxtAstroRemixAngularGatsbyNestLaravelSymfonyWordPressRailsDjangoFastAPIFlaskGoSpringASP.NETStatic HTML

And when we can't

An unusual repo says so instead of inventing a command that fails three minutes into a build. A developer corrects it once, in a panel marked for developers, and nobody is asked again.

Five minutes once. Then seconds.

The first person on a repo waits for it to build. We snapshot the result against the lockfile, so everyone after them opens it in about ten seconds — and a workspace nobody is using suspends itself.

Security

Private code, an AI with write access, and a designer at the keyboard

All three are true at once, so the boring answers matter more than the clever ones.

Isolation by default

Every workspace is its own machine with its own temporary databases. Network egress is closed except to package registries and your git host. CPU, memory and disk are capped, and the whole thing is destroyed when you close it.

Never production

No production database, no production traffic, no production secrets. Previews run on temporary services and seed data — the isolated copy is the product, not a compromise on the way to it.

Credentials, if any, encrypted

Most repos boot without a single real secret. When one genuinely will not, we ask a developer — once — through a single-use link. What they send is encrypted with a key the database never holds, and is never shown in the editor or returned by our API.

Bounded scope

“Make checkout simpler” must not quietly touch your schema. Developers mark which paths are off-limits, and an attempt to edit one becomes a request they can approve rather than a change they have to catch in review.

Revibot

Someone has to say “that's getting big”

A branch that lives for days is fine for an engineer and a trap for everyone else. Revibot watches what's piling up and speaks up — in the words your team actually uses. It will never tell a designer to commit, because a designer has no idea what that means.

You've made 214 changes across 6 files. Want to send this to Dan for review before it grows?

Send for review

billing.ts is part of how the site works rather than how it looks, so Dan needs to make that change. Want me to ask?

Ask Dan

The shared version of this project has moved on quite a bit since you started. Want me to bring your copy up to date?

Catch me up

Sarah is working on Hero.tsx right now too.

Why it matters

The failure mode of visual editing tools is not a bad edit. It is three weeks of unreviewed changes landing on an engineer at once, with no explanation of what any of it was for.

Small, explained, frequent pull requests are what make this workable — and the person making the changes needs a nudge to produce them, in language that means something to them.