cf-orbs is at version 0.2.5, and both platforms under it are young: Amp self-hosted orbs shipped on 2026-10-22, and Cloudflare Container snapshots are in beta. Expect changes. Before 1.0, a minor version can break the config or the control-plane API.
Limits
| Limit | Detail |
|---|---|
| Orb size | At most 4 vCPU, 12 GiB memory, and 20 GB disk. Amp-hosted orbs have 60 GB disk |
| One size for each install | Amp sends no size in a job, so a second size needs a second install and token |
| Memory across a pause | Not kept, so running processes are lost. The disk is kept |
| First spawn on a new host | Pulls the 1.8 GB image: 40 to 50 s. Later spawns on that host use the cache |
| Root disk writes | Writes of new data are slower than on Amp-hosted orbs. 512 MB with fsync takes 0.9 s with hugePages (1.3 s without). Amp-hosted takes 0.6 s. Use /mnt/fast (fastTmpfsGb) for caches |
| Restore reads | Restores are lazy, so the first read of a large cache is slower (about 230 MB/s) |
| Snapshot retention | 30 days after the last restore |
| Snapshot cost | A snapshot takes about 8 s plus 6 s for each GB of changed data. Storage has no published rate yet |
| Egress | Open. There is no allowlist mode |
| Platform | Cloudflare Containers run linux/amd64 only |
| Awake Worker code | An orb that is awake keeps the old Worker code after a deploy until it pauses |
| Plan check | The plan check before the first deploy is best effort, so a Free account may only find out from the deploy error |
| Durable Object reset | Seen once: an orb’s Durable Object reset during a long spawn wait. The operation failed and Amp retried |
| Unverified areas | These have no test results yet: the provider on lite for more than a day without a restart or with more than 10 jobs at the same time, restore after the source image is deleted from the registry, the Amp Desktop pane in an orb, and Docker inside an orb. Do not rely on them. The snapshot storage price is not published |
FAQ
How does cf-orbs compare with Amp-hosted orbs?
| cf-orbs | Amp-hosted orbs | |
|---|---|---|
| Where orbs run | Your Cloudflare account | Amp servers |
| Sizes | One size for each install | Amp sizes, for example a1.small (2 vCPU, 4 GiB) |
| Maximum size | 4 vCPU, 12 GiB memory, 20 GB disk | 60 GB disk |
| Memory across a pause | Lost. The disk is kept | Kept |
| Paused orb cost | No compute charge. Snapshot storage has no published rate yet | Amp pricing |
| Setup | npx cf-orbs init and a provider token |
None |
For timing numbers, see the benchmark results, measured on 2026-10-31.
Does cf-orbs run the agent or the model?
No. Amp runs both on its own servers. cf-orbs runs only the orb, which is where the agent’s tools run. What the agent reads in an orb goes to Amp and its model providers, the same as with Amp-hosted orbs.
Do I need Docker?
For the default install, yes, because wrangler builds the images on your machine. To install without Docker, use Workers Builds (preview).
Do I need the project folder?
Not to run orbs: the Worker, the orbs and the snapshots are all in Cloudflare. You need the folder to change settings and to deploy, so back up cf-orbs.config.jsonc and image/. See Back up and restore.
Do I need a paid Cloudflare plan?
Yes. Containers need Workers Paid ($5 a month).
Does Amp charge extra?
No, on non-Enterprise workspaces. Enterprise workspaces pay Amp’s self-hosted orb rate.
Can two providers use one token?
No. A second provider on the same token waits and takes no jobs, so run one provider for each token.
Can I run the provider outside Cloudflare?
Yes. See Run the provider on your own host.
Where is my code?
The repo checkout, build output and disks stay in your Cloudflare account. The agent and the model run on Amp’s servers, and what the agent reads in an orb goes to Amp and its model providers. See Security.
How long until a paused orb is gone?
Cloudflare keeps a snapshot for 30 days after its last restore. After that, the orb starts fresh and Amp sets up the repo again.
Why is my first thread slow?
The first spawn on a new host pulls the image (40 to 50 s), and then Amp runs .agents/setup. Later threads start from a project snapshot and skip setup. prewarm raises the chance that the host already has the image.
Why does the first message after a pause start fast sometimes?
A warm pause keeps the orb running for warmMinutes (default 10) after Amp pauses it, so a message in that time needs no restore. See Orb lifecycle.
How do I stop paying for an idle orb?
Amp pauses idle orbs after about 20 minutes, and a paused orb has no compute charge. To stop the container at once on pause, set warmMinutes to 0. To cap long sessions, lower maxAwakeHours.
Can I use a different base image?
Yes, if it meets Amp’s bring-your-own-image rules and the rules in Orb image. Always pin it by digest.
Can I use cf-orbs without Amp?
No. cf-orbs only serves orb jobs from Amp.
Is this an official product?
No. It’s a community project, not affiliated with Cloudflare or Amp (Sourcegraph).
The Amp CLI is proprietary. Is it in the repo?
No. The provider image installs @ampcode/cli from npm, and the repo doesn’t include it. cf-orbs itself is licensed Apache-2.0.
How do I report a bug?
Open an issue at github.com/meirdick/cf-orbs. For a vulnerability, see the security policy.