Ample for developers and agents · Ample Computer

Ample for developers and agents

The CLI, REST API, remote MCP server, agent skills and machine-readable files for building on Ample.

New here? Why developers use Ample

Quick start

$ curl -fsSL https://get.ample.computer/install.sh | sh
$ ample auth signup
$ ample plan --write && ample up

Base URL for the REST API: https://api.ample.computer.

Conventions

Deploy over HTTP

No CLI needed: send the app's source as a tar.gz and get back a live URL, or the reason it failed.

$ TOKEN=$(curl -s -X POST https://api.ample.computer/v1/auth/signup -H 'Content-Type: application/json' \
  -d '{"name":"my-agent","request_key":"<fresh UUID v4>"}' | jq -r .access_token)
$ tar -czf app.tgz -C ./my-app .
$ curl -X POST https://api.ample.computer/v1/deploy -H "Authorization: Bearer $TOKEN" -H 'Idempotency-Key: my-app-1' \
  -F name=my-app -F public=true -F env=API_KEY=... -F source=@app.tgz
# 200 {"status":"live","url":"https://….ample.run","deployment_id":"dep_…","unchanged":false,"execution_id":"run_…"}
# 200 {"status":"failed","error":{"code":"health_check_failed","message":"…","details":{"owner":"app","diagnosis":"…",
#        "evidence":[…],"suggested_fix":{"change":"…","confidence":"high"}}},"execution_id":"run_…"}
# 202 {"status":"running","execution_id":"run_…","poll":"/v1/deploy/run_…"}

Fields: source (the app as a tar.gz, up to 32 MiB), name (letters, digits, -, _, .; deploying the same name again updates that app), public (true or false; web apps are public by default), env (KEY=value, repeatable, stored encrypted) and start (optional: the command that starts the app, listening on $PORT, for a source Ample can't read it from). Needs the servers:read and servers:write scopes.

Ample detects the stack from the source, builds it and starts it, exactly as ample deploy does.

The request waits up to 50 seconds. A longer deploy answers 202: GET https://api.ample.computer/v1/deploy/ (it also waits up to 50 seconds) until it answers 200.

status is live, failed or needs_input. On failed, error.details says who must act (owner: app, account, platform or unknown), with a diagnosis, the evidence (such as the app's log tail) and a suggested_fix (change and confidence). On needs_input, error.resolution says what to send; usually it is start, when the source has nothing Ample knows how to start. An unchanged redeploy returns unchanged: true.

A failed redeploy rolls back to the previous release. When the server has room, Ample first starts the new release beside the live one and switches over only once it answers, so a release that crashes on start never takes the app down.

Send the same Idempotency-Key (8 to 96 characters) with the same request to retry after a disconnect: it reattaches to the deploy that key started. The same key with a different request answers 409 idempotency_conflict. A deploy of an app that is already deploying answers 409 with that deploy's poll URL.

Resources

Questions, answered.

More in the deployment guides.

Do I need to know how to code?+

No. Your agent writes the code and launches it on Ample. You describe what you want, try the live app, and ask your agent for changes.

Which agents work with it?+

Claude, ChatGPT, Codex, Cursor and any agent that can run commands. Agents that use MCP can connect to Ample’s remote MCP server instead.

What can I make?+

Websites, web apps, booking pages, APIs, bots, background workers and scheduled jobs, in Node, Python, Ruby, PHP and more, with the databases and storage they need. Ample is not for GPU workloads.

How do I claim my app?+

Open the link your agent gives you. The page shows a “Claim this app” card: enter your email, type the code we send you, and the app is yours. Apps nobody claims are deleted after 48 hours.

Can I give it a name or use my own domain?+

Yes. Once it’s claimed, pick a name at yourname.ample.run, or point your own domain at the app. HTTPS is set up automatically.

What happens when nobody is using my app?+

It sleeps, and wakes on the next visit. Scheduled jobs still run on time, so reminders and reports go out whether or not anyone is on the site.

Is my app safe?+

Each app runs in its own microVM with its own kernel, and its secrets are stored encrypted.

How is Ample different from Vercel, Supabase or AWS?+

Those are separate services for hosting, databases, storage and domains, each with its own sign-up and bill, and a person has to connect them. Ample has all of them in one place your agent can use on its own, and every app gets its own VM.