cloudflare/computer provides AI agents with a stateful, executable virtual computer and filesystem that persists state inside a Cloudflare Durable Object. It exposes pluggable execution surfaces—container, shell, or JavaScript—to run agent-authored code with real binaries or isolated workers.
Project overview
The project pairs a Durable Object–backed SQLite virtual filesystem with multiple pluggable execution backends and a FUSE daemon whose metadata-heavy performance beats real disk, offering a distinctive approach to giving agents durable, executable computational state.
Deployment
Refer to project documentation
License
MIT
Best for
Developers and AI engineers who need to give AI agents a stateful, executable virtual computer backed by a Durable Object and are comfortable working with experimental, unstable APIs.
Key capabilities
Holds authoritative state in SQLite and exposes it as a filesystem that can be mounted or accessed by agents.
Projects SQLite state into a sandbox container as a real FUSE mount and syncs changes back via RPC; provides full Linux userland with real binaries and network.
Runs just-bash in a Dynamic Worker accessing the authoritative Workspace over Workers RPC without a second store or sync.
Runs an ECMAScript module in a fresh Dynamic Worker with structured input and results, durable relative imports, and Workspace-backed node:fs/promises.
A sandbox-side daemon that mounts state as a filesystem and provides an HTTP/WebSocket RPC server.
Provides a @platformatic/vfs provider for Node environments.
Ships various Worker workspace examples including a chat agent, runtime comparison UI, tutorial, artifact generation, and asset image generation.
Limitations and risks
The project is not suitable for production use; it is provided as a preview for feedback only.
APIs are unstable and the design is subject to change.
The specification documentation is forward-looking and describes intent rather than the current code.
The FUSE mount trails real disk on large sequential I/O.
Getting started
Install the @cloudflare/computer package and follow the package README for installation steps.
Configure one of the available backends—Container, Isolate shell, or Isolate JavaScript—and execute code using workspace.runtime.exec(source, { backend }). Setup difficulty is rated hard due to the required understanding of Cloudflare Durable Objects and Workers APIs, multiple backend configurations, and experimental, unstable APIs.