Skip to main content

workpaper

Cloud computers for AI agents, from Python. Each computer is a real Linux machine with its own kernel, ready in under a second. Stop it and it keeps its disk and memory; fork it while it runs. No dependencies.

pip install workpaper

Make an API key once with the CLI (curl -fsSL https://workpaper.co/install | sh, then workpaper auth login):

workpaper keys create my-app      # prints wpk_…; set it as WORKPAPER_API_KEY

Quickstart

from workpaper import Workpaper

wp = Workpaper()  # reads WORKPAPER_API_KEY

c = wp.run("my-agent")  # create it, or wake it if it exists
r = c.exec("python3 --version")
print(r.exit_code, r.stdout)

c.write("/home/user/app/main.py", "print('hi')")
c.exec("python3 main.py", cwd="/home/user/app", on_stdout=print)

c.stop()   # disk and memory saved, billing stops
c.start()  # running programs carry on from the same moment

Fork a running computer

base = wp.run("base")
base.exec("git clone https://github.com/you/app && cd app && pip install -r requirements.txt")

# Each copy starts with the files, memory and running programs of `base`.
tries = [base.fork(n) for n in ("try-a", "try-b")]

API

Workpaper(api_key=None, wait_seconds=900, on_wait=None) on_wait(position) is called while waiting in line when every computer is busy (nothing is charged while waiting)
wp.run(name, size="small", timeout=3600) Create or wake. size: "small" (2 vCPU, 4 GB, 10 GB) or "large" (4 vCPU, 8 GB, 20 GB, Docker running)
wp.create(name, ...) · wp.find(name) · wp.list()
c.exec(cmd, cwd=None, env=None, user="user", timeout=None, on_stdout=None, on_stderr=None) Runs under bash. Returns ExecResult(exit_code, stdout, stderr); a non-zero exit is a result, not an error
c.read(path) · c.read_text(path) · c.write(path, data)
c.stop() · c.start(timeout=3600) Stop keeps everything; start resumes it
c.fork(name) Copy a running computer into a new one
c.delete()
c.name · c.state · c.cpus · c.memory_mb · c.stops_at · c.fork_of

Errors are WorkpaperError with status and, when the service is full, reason == "at_capacity".

Every computer comes with Node 24, Python 3.12, uv, git, Claude Code, Codex and a headless browser. Limits and pricing: docs.workpaper.co.

Metadata

Release files for workpaper 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for workpaper 0.1.0
File Size Uploaded
workpaper-0.1.0.tar.gz 7.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for workpaper 0.1.0
File Interpreter ABI Platform
workpaper-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 14.0 kB

Release files / workpaper-0.1.0.tar.gz

Download URL workpaper-0.1.0.tar.gz
Size 7.1 kB
Tags Source
SHA-256 checksum
How to use checksums
1e1c55afbddc3ca4450612cbbc17705d1b235317d94952228800ce8fc6152255
BLAKE2b-256 checksum
How to use checksums
32396a050e767bca818ca5daff31c29c9fe5a42465b1c8b7a8f9b99fb40a39b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / workpaper-0.1.0-py3-none-any.whl

Download URL workpaper-0.1.0-py3-none-any.whl
Size 6.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b192bab27c66f5d30eb9af0a363fbf9b06369c0dcf98c1fb413c9690866952ef
BLAKE2b-256 checksum
How to use checksums
ee3c3e902c07073f7dcd7b6ca3349b68451994acd3ea89bb700a51b3f25af75d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page