Anvil Pre-release
Secure compute on hardware you already own

Heavy work leaves your Mac. Your keys don't.

Anvil turns the machine already sitting in your room into somewhere your work can go. You drive it from the Mac. It never holds a secret of yours.

Pre-release. Nothing here is installable yet, and the page says exactly where the edges are.

Your Mac The node

Work crosses; keys do not

MacSigned frames over ssh stdioNode

Anvil is a Mac app that turns a spare machine (a gaming PC, an old workstation, a Linux box, or another Mac) into compute you can send work to, without ever putting a credential on it.

4,488Rust tests passing
1,247Swift tests passing
3Container engines driven
0Ports opened on your node
01

What it does

The offload

Your laptop stops being the bottleneck

Your Mac is running several agent sessions, a container stack and a test suite, and the fan hasn't stopped since Tuesday. Meanwhile the gaming PC three metres away is idle. anvil run sends the job over there and gives you back the terminal. The job runs on that machine's CPU, its RAM and its GPU. Your Mac goes back to being responsive.

The refusal

It won't carry your API key, and there's no flag to make it

Declare a credential-shaped variable in a job and Anvil refuses it at the daemon, before egress, before dispatch, before anything is sent anywhere. There's no override, on purpose: a key that lands on a machine is compromised even if you delete it afterwards. Work that genuinely needs a provider gets a job-scoped ticket instead, which spends through a broker on your Mac.

Note: the check reads the variable's name, never its value. If yours isn't actually a credential, rename it and it runs.

Six digits

Two machines that have never met, and nothing typed twice

The node shows six digits on its own screen. You type them on the Mac. That's the whole ceremony: no key copied between machines by hand, no port opened on the node, no firewall rule written. Afterwards, only that Mac can command it, and the node's identity survives a restart, so the key your Mac pinned is the key it presents tomorrow.

02

What people actually run on it

Anvil ships with a list of what a second machine is genuinely good for, because "run anything you like" is what an empty box says.

22 kinds across those six. It's one committed list, and it's the same list the app, the phone and the language model all read from, so nothing can offer you an idea that doesn't exist.

03

Six shapes, and what each one wants from a machine

Pick a shape. The panel shows what it needs, what it costs a laptop to run locally, and a kind of job that fits it.

04

While it runs

Attach

See the thing that's running, not a shell next to it

anvil attach shows you the workload's own output: the agent session's prompts, the build's log, the sweep's grid filling in. It's read-only, and the app says so rather than drawing a text field that does nothing, because a container started without stdin has nothing to type into. Want a shell beside it? That's anvil exec, and it's a different button for a reason.

Storage

The node holds your files and cannot read them

anvil mount gives a job a volume that lives on the node's disk and is keyed on your Mac. Every block is sealed with XChaCha20-Poly1305 before it leaves. We've read those blobs back off a second physical machine's disk: no plaintext, block sizes the cipher forces, and no compressibility while the same content gzips to nothing.

Note: absence of a matched string isn't proof of confidentiality, and we don't claim it is. Three separate checks, and the caveat travels with the claim.

Confinement

Host-only, or nothing at all

You decide what a workload may reach: your Mac, an allowlist, or nowhere. It's enforced below the container with nftables rules or an internal network, so it isn't something the workload is asked to respect. Useful when the thing you're running is an agent whose code you haven't read.

Note: DNS still resolves under the ruleset. The resolver sits on the node itself, so a forward-hook rule can't reach it. We say so rather than implying a tighter box than exists.

05

Five clients, and where each one honestly is

Every platform below either drives Anvil or runs work for it. The badges say which is which; pick one for what it actually does today, rather than what's on the roadmap.

The same answer on all five: build it from source. There is no installer for any platform yet.

06

Two ways to pay, one of which exists

Drag the slider to however many months you'd keep this. The numbers are what you'd actually pay, not a modelled saving.

1 to 60 months

$9.99 Self-hosted total
$59.88 Hosted total
$49.89 Difference

Self-hosted costs less the moment you pass two months. What hosted buys is a route to your node when you're not on your own network, which is the one thing self-hosted can't give you.

Available at launch

Self-hosted

$9.99 once

For anyone who already owns the second machine.

  • Pair as many machines as you own
  • Every client: Mac app, CLI, MCP sidecar for your coding agents, the phone and iPad companions
  • Bring your own machine, container engine and GPU
  • Bring your own model keys; they stay on your Mac either way
  • Lifetime client updates
  • No account, no telemetry, nothing phoning home
Not built yet

Hosted

$4.99 a month

For the days you're not at home and the work still needs to go somewhere.

  • A managed relay, so your phone or laptop can reach your node off your home network
  • Encrypted backups of your sealed volumes
  • A monthly allowance of AI credits for the language layer
  • Everything in self-hosted

Note: nothing has been deployed behind this column. We're not taking money for it and there's no waitlist to join. It's here because hiding the roadmap from a pricing page is how pricing pages become dishonest.

Clause

The honest state of it

Anvil's whole personality is telling you the truth about itself. A workload that ended with an unreadable exit status is never reported as a success, a suite that couldn't run is never reported as a pass, and a GPU reading that can't be verified reads "GPU status unknown", which is not the same sentence as "no GPU here". So here's the page held to the same standard.

Questions

Asked and answered

It's not finished, and you can watch it not be finished

Anvil is one person's build, in the open, held to the rule that a gate is never faked green. If the machine in your other room is doing nothing and that bothers you, the source is the honest version of this page.

No signup, no waitlist, no email field. There's nothing to sell you yet.