computer is a library that gives agents a filesystem and execution environment inside a Cloudflare Durable Object. It provides a durable virtual filesystem with a pluggable execution surface and selectable backends.
Project overview
The Durable Object holds the authoritative filesystem state in SQLite, and a single execution entry point (workspace.runtime.exec) routes shell commands or ECMAScript modules through selectable backends, including an experimental container FUSE backend synchronized via capnweb RPC.
Project type
Infrastructure
Use cases
Automation
Deployment
Refer to project documentation
License
MIT
Best for
Developers building agents that need a usable filesystem and execution environment on Cloudflare Durable Objects.
Key capabilities
Provides a virtual filesystem inside a Durable Object with authoritative SQLite state.
Exposes workspace.runtime.exec as the single execution entry point for shell commands or ECMAScript modules through a selected backend.
Projects SQLite state into a sandbox container as a FUSE mount and synchronizes changes through capnweb RPC. This backend is experimental.
Limitations and risks
The package contains work-in-progress and experimental components that are unsuitable for production use, including the Container FUSE backend, which is experimental.
Getting started
Install @cloudflare/computer, follow the package README installation steps, and use the documented fs and runtime surfaces.
Evidence and sources
GitHub project description: Give your agent a computer 👾
README: Cloudflare Computer is a virtual filesystem that lives inside a Durable Object. The Durable Object holds the authoritative state in SQLite and exposes one pluggable execution surf…
README: The `@cloudflare/computer` package should be considered suitable for > production use. The package contains work-in-progress and experimental > components such as the `ContainerBa…
README: `workspace.runtime.exec(source, { backend })` is the single execution entry point; the selected backend defines whether `source` is a shell command or an ECMAScript module.
README: **Isolate JavaScript** runs an ECMAScript module in a fresh Dynamic Worker with structured input/results, durable relative imports, configured libraries, Workspace-backed `node:fs…