cloudflare/computer

Give your agent a computer 👾

What it solves

Cloudflare Computer provides a way to create a persistent, virtual filesystem that can be used as a working directory for various execution environments. It allows developers to run code or shell commands in isolated sandboxes (containers or Workers) while maintaining a consistent state stored in a SQLite database via Durable Objects.

How it works

The system uses a Durable Object to hold the authoritative state of the filesystem in SQLite. This state is then projected into one of three pluggable execution backends:

  • Container: Projects the state as a real FUSE mount in a Linux sandbox container, allowing the use of real binaries and network access.
  • Isolate shell: Runs a bash shell (via just-bash) within a Dynamic Worker.
  • Isolate JavaScript: Executes ECMAScript modules in a Dynamic Worker with access to the virtual filesystem.

Execution is handled through a single entry point (workspace.runtime.exec), which determines whether to run a shell command or a JavaScript module based on the selected backend.

Who it’s for

It is designed for developers building agents, prototypes, and experimental tools that require a persistent workspace, the ability to run arbitrary code/commands, and isolated execution environments.

Highlights

  • Pluggable Runtimes: Switch between full Linux containers and lightweight Worker isolates.
  • SQLite-backed State: Uses Durable Objects for authoritative, persistent filesystem state.
  • FUSE Integration: The container backend uses a daemon (computerd) to sync state over RPC.
  • Agent-ready: Includes examples for MCP (Model Context Protocol) and chat agents that use the workspace as a working directory.

Related

  • Project
  • Project
  • Project
  • Project
  • Project