compiler.dev / docs

compiler.dev docs

compiler.dev runs your existing GitHub Actions jobs on fast, isolated Linux machines. You keep GitHub Actions and your checks; only the machine changes. If compiler.dev is ever unavailable, your jobs run on your original runners automatically.

Getting started

1. Sign in and install the GitHub App. Sign in with GitHub, then install the compiler.dev App on your organization and choose the repositories it can see. The App reads workflows and job metadata, registers one-time runners for jobs routed to compiler.dev, and — only through the setup PR — proposes workflow changes. It never merges anything.

2. Pick a repository and a mode. We analyze its workflows and show which jobs can move. Choose Try safely (comparison: a copy runs on our machines, your results still come from your runners) or Switch now with 10%, 25%, 50% or 100% of pull requests. A PR stays on the same side for all of its pushes and re-runs.

3. Merge the setup PR. Each routed workflow gets a small compiler-route job that asks compiler.dev where the job should run; your jobs use its answer as runs-on. Your steps are unchanged. Nothing moves until the PR is merged.

4. Watch the first run. The app shows each job live — queued, booting, running, done — with the machine name and the duration against your previous runners.

Which jobs can move

Fallback & rollback

Build cache (Nx / Turborepo)

On compiler.dev runners, Nx (20.8+) and Turborepo automatically use a remote cache next to the runners — nothing to change in your workflows. Caches are isolated per repository; pull requests can read the default branch's cache but only write their own, so a PR can never inject artifacts into trusted builds. To opt out for a job, set NX_SELF_HOSTED_REMOTE_CACHE_SERVER: "" and/or TURBO_API: "" in that job's env:.

Get started with your box

Code in a box is your own Linux machine for coding agents (4 vCPU, 16 GB, 100 GB disk). Claude Code or Codex works in it on your repositories; you watch, steer and open the pull request. The disk persists, so repositories, worktrees and agent sessions are still there next time.

1. Sign in. Sign in with GitHub and install the compiler.dev App on your organization (the same App as for CI). Your organization needs prepaid credit; if it has none, the box card shows Add credit to start your box with a link to Billing.

2. Add a key. Open Workspaces (or Start coding in your box on the Overview) and create your box. Then paste your own key: an Anthropic key for Claude Code (from console.anthropic.com → API keys) or an OpenAI key for Codex (from platform.openai.com → API keys). Keys are stored encrypted, sent only to your box, and never shown again. Model usage is billed to you by Anthropic or OpenAI.

3. Start. The first boot takes about a minute; after that, Start resumes a stopped box in about 15 seconds. Sending a prompt to a stopped box starts it too.

4. Chat. Pick a repository and the agent, describe the change, and press Start chat. Each chat gets its own git worktree on branch ws/…. You see the agent's messages and commands live, then the tests it ran and the diff; send a follow-up for the next change, or open the pull request. Up to 3 agents can work on your box at once.

5. Open on another device. Open on another device makes a one-time link, valid for 5 minutes, that opens the same chats in another browser (your phone, say) for 12 hours without signing in there. Sign out other devices ends those sessions.

6. Stop. Press Stop when you're done, or just leave: the box stops by itself after 60 minutes with no agent working and nobody in an open chat. A tab you left open in the background, or haven't touched for 30 minutes, doesn't keep it awake. Stopping keeps the disk; deleting the box deletes the disk.

Fewer tokens. Agents in a box run their shell commands through RTK, which compacts the output of builds, tests and git before the model reads it (typically 60–90% less). Run rtk gain in the box to see what it saved. To bypass it for one command, start the command with RTK_DISABLED=1. To turn it off for the box, run rtk init -g --uninstall and rtk init -g --codex --uninstall; the agents then see raw output, and the box does not put it back until we ship a newer RTK version.

Billing

Usage analytics & your data

We record product and CI events (for example job queued, started and finished with durations, cache hits, onboarding steps and page views) to run the service and to power your usage dashboards. Events contain repository and job names, timings and counts, never source code, secrets, or email addresses; people are identified by an internal user id only. Your organization's events are visible only to your organization, and are kept for two years.

Data processors for Code review and Insights

These outside services process your data when Code review or Insights is on:

Turn Code review or Insights off in Settings → Features and nothing is sent to them.

Help

Questions or a job that won't move? Email admin@luxlogik.com.