Amp orbs, on machines you own.
You provide the compute and Amp turns it into orbs. cf-orbs makes your Cloudflare account that compute. Same threads, same orb experience. Your code runs in your account.
One command
npx cf-orbs init
Open source, Apache-2.0. Not affiliated with Cloudflare or Amp.
Your Cloudflare account
- Thread Aworking
- Thread Bworking
- Thread Cpaused
Is this for me?
You use Amp orbs
You like orbs. You want them in your own account: your rules on where code runs, your image, your bill. Self-hosting used to mean running a server. Now it is your Cloudflare account.
You use Cloudflare
Give your coding agent a real Linux machine per thread, in the account you already have. Paused orbs stop compute. No server for you to run.
What you get
Everything an orb gives
- A Linux machine per Amp thread that keeps working when your laptop is closed.
- The agent's tools run there, on your repo and toolchain.
- Pause when idle, wake on the next message, files in place.
- New threads start from your set-up project.
Plus what self-hosting adds
- Code, snapshots and logs stay in your Cloudflare account. The provider connects out to Amp. Nothing connects in.
- Your own orb image and toolchain.
- Your Cloudflare bill. A paused orb has no compute charge.
- No server, VM or cluster to keep up. Cloudflare runs the machines.
Three ways to get orbs
| Question | cf-orbs | Amp-hosted | Self-hosted, do it yourselfyour server or Kubernetes |
|---|---|---|---|
| Orbs run in your account | Yes | No | Yes |
| No server to run | Yes | Yes | No |
| Your own base image | Yes | Setup scripts on Amp's Debian image | Yes |
| Paused orbs stop compute | Yes | Yes | You build it |
| Setup | npx cf-orbs init |
None | You build it |
How it works
-
Install
npx cf-orbs initdeploys a Worker and the orb image to your account and starts the provider. -
Pick it in Amp
In the thread composer, choose Orb, then Self-Hosted. Or pass
--orb-provider <name>toamp. -
Work
Each thread gets its own orb in your account. Amp pauses idle orbs. cf-orbs saves the disk and stops the machine.
Benchmarked as fast or faster than Amp-hosted orbs on first response and installs.
Good to know
- Needs Cloudflare Workers Paid ($5 a month).
- A paused orb keeps its files, not running processes.
- Community project. Not affiliated with Cloudflare or Amp.
Get started
You need:
- Node 22 or later, and Docker running
- A Cloudflare account on Workers Paid, with
npx wrangler logindone - An Amp provider token and its name: Amp, Settings, Orbs, Add Provider
init asks for the token, deploys to your account and starts the provider. It is safe to run again. Then npx cf-orbs doctor checks the install.
Let your agent install it: point it at AGENTS.md.
# Deploy to your account; asks for the Amp token.
# Use the provider name you made in Amp.
mkdir my-orbs && cd my-orbs
npx cf-orbs init --provider-name YOUR_PROVIDER_NAME
# Start a thread on your orb
amp -ox "hello from cf-orbs" --orb-provider YOUR_PROVIDER_NAME
Questions
What does it cost?
You pay Cloudflare. A default orb costs about $0.11 an hour while awake and idle, and $0.40 at full CPU. A paused orb has no compute charge. The provider container is always on, about $2.01 a month. init --vcpu 2 gives a smaller, cheaper orb.
Where does my code run, and who can see it?
In containers in your Cloudflare account. Orbs, disk snapshots and logs stay there. Amp has the same access as on a hosted orb: its executor in the orb runs the agent's tool calls. cf-orbs adds no other service, and its logs redact tokens.
What happens when an orb pauses or is lost?
On pause, the disk is saved: the repo, installed packages and build caches. Running processes are not. If Cloudflare stops an orb mid-turn, Amp starts it again, cf-orbs restores the last snapshot, and the agent runs the failed tool call again.
What about Amp Enterprise?
Amp bills Enterprise workspaces for self-hosted orbs, by the CPUs and memory the orb reports. On Enterprise, cf-orbs costs more than an Amp-hosted orb. The reason to use it there is that your code stays in your account.