The hosted computer driver runs a computer for your app and executes the model’s computer and browser tool calls on it. Your code keeps the model loop; each tool call goes to POST /v1/computers/{id}/toolset and comes back as text and screenshots. The full endpoint list is in Computers API.
The hosted driver is switched on per project by Allternit. Until it is on for your project, every /v1/computers route answers 404 with code hosted_driver_disabled. You can see the flag under Platform API → Computers in the console; you can’t switch it on yourself.

1. Get a key with the computers scope

In platform.allternit.com, open API keys → Platform API, pick the project, and create a key with the computers scope. Store it:
The driver packages are @allternit/computer-driver (TypeScript, in sdk/computer-driver/) and allternit-computer-driver (Python, import allternit_computer_driver). Install with npm install @allternit/computer-driver or pip install allternit-computer-driver (the first PyPI release is waiting on publisher setup; until then pip install /path/to/allternit/sdk/computer-driver/python). The project needs a card on file first (Billing): without one, POST /v1/computers answers 402 payment_method_required. Each package has:
  • AllternitComputers, a plain client for the /v1/computers routes.
  • Anthropic SDK toolset subclasses for the computer and browser toolsets (BetaAbstractComputerToolset20260801, BetaAbstractBrowserToolset20260801).
  • An OpenAI computer-use adapter and a Gemini computer_use adapter.
  • The contract-v2 structured members (read_ui, act, run_batch, verify, request_human, use_credential, run_subtask, run_parallel, run_skill, skills) as typed client methods and as the computer_v2 function tool in every adapter.

2. Create a computer

The response is a computer object with id: "cmp_…". It starts in provisioning; a toolset call that arrives while it is still starting answers 503 computer_starting, so retry after a short wait.

3. Drive it from the Anthropic SDK

The toolset classes subclass the Anthropic SDK’s abstract computer and browser toolsets, so the SDK’s tool runner calls them like any other toolset. Each member call is sent to the hosted computer.
The browser toolset works the same way with the browser toolset class. It is available only when the project setting browser_toolset is on.

4. Or use the OpenAI or Gemini adapter

The adapters turn one model action into toolset calls and return what the model expects next (a screenshot for OpenAI’s computer_call_output, a function response for Gemini).
  • OpenAI computer use: for each computer_call in the response, pass the call id and action to the adapter, then send its output back as computer_call_output. Set display to the display_width / display_height you declared on the tool.
  • Gemini computer_use: for each function call, pass it to the adapter and send back the function response it returns.

5. Structured UI driving (contract v2)

The computer toolset contract has a second generation, allternit.computer.v2: the same 17 pixel members plus ten driver-backed structured members — read_ui, act, run_batch, verify, request_human, use_credential, run_subtask, run_parallel, run_skill, skills. The structured members read and drive the UI as an element tree (no screenshots), hand bounded step sequences to the fast decision loop (run_subtask), type vault credentials without the value ever reaching the model (use_credential), pause for a person (request_human), and run independent subtasks on separate computers in one call (run_parallel). They need the Allternit Driver on the computer (this-device today; see Allternit Driver). Both driver packages expose them two ways: typed client methods on ComputerV2Driver (TypeScript) / ComputerV2Driver (Python), and — for model loops — as the computer_v2 function tool next to the pixel tool in every adapter, with the same steering guidance gizzi sends. A computer_v2 call is { "action": "<member>", …member fields }; it maps 1:1 onto a toolset member call.
The OpenAI and Gemini adapters expose the same members with openaiComputerV2Tool / runOpenAIV2Call and geminiComputerV2Declaration / runGeminiV2Call (Python: openai_computer_v2_tool / run_openai_v2_call, gemini_computer_v2_declaration / run_gemini_v2_call). Input and result types are generated from the contract (contracts/computer-toolset/allternit-computer-v2.json), so they track the server.

Subtask safety statuses

run_subtask, run_skill and run_parallel results end with a status:
  • done — the goal is met.
  • escalated — handed back with a reason and the current screen; continue from there yourself.
  • needs_confirmation — the next step (held_step) needs the person’s confirmation; run it yourself with act/run_batch and the server asks them.
  • paused — the safety monitor paused the subtask; stop and call request_human.
  • denied — the step isn’t allowed on this computer (app/domain lists or a credential binding); find another way.
  • use_api — make the named API/MCP call yourself; the screen is untouched.
  • failed — ran out of steps, budget, or a hard error. Skipped parallel subtasks (budget exhausted) come back as skipped.

Structured-member errors

Alongside the approval flow above, the driver packages raise typed errors the plain client maps from the server’s error codes: ComputerV2Error (a structured member answered is_error), ComputerBusyError (423 computer_busy / computer_controlled_elsewhere), SandboxRequiredError (409 sandbox_required) and ComputerConflictError (409 computer_conflict). toolsetWithApproval / toolset_with_approval answers a 409 approval_required hold for any member, pixel or structured.

6. Or connect over MCP

The @allternit/computers-server stdio MCP server accepts a project key. With ALLTERNIT_API_KEY=alt_live_… (or alt_test_…) it talks to https://api.allternit.com/v1 and adds four tools: computer_toolset, computer_toolset_schema, computer_events and computer_approve. Screenshots come back as MCP image content.
Set ALLTERNIT_PLATFORM_URL to point it at another base URL.

Approvals

Some actions need approval before they run. The toolset call then answers 409 with code approval_required and an approval object:
  1. Get it approved. The project owner can approve in the console. If the project’s approval_mode is api_key, your key can call POST /v1/computers/{id}/approvals/{approval_id}; otherwise that call answers 403 approval_requires_owner.
  2. Resend the same toolset call with approval_grant set to approval.id.
The driver packages raise an approval error carrying the approval, and the MCP server returns a text result naming the approval id and the next step. A denied approval answers 403 approval_denied.

Limits

  • Project flag. hosted_driver_enabled is set by Allternit. Off means 404 hosted_driver_disabled on every /v1/computers route.
  • Per-key concurrency. Each key can have a set number of running computers (per_key_concurrency in computer settings). Past it, creating or starting a computer answers 429 concurrency_limit.
  • Computer size. Each computer is a Linux computer with 1 vCPU, 2 GB of memory and a 10 GB disk. It has no desktop session; the screen (1280×800) starts with the first computer toolset call. The browser toolset runs headless Chrome.
  • Pool capacity. A fixed number of developer computers can be running at once across all projects. When they’re all in use, creating or starting a computer answers 503 computer_capacity. Nothing is created and nothing is billed; retry in a few minutes, or stop a computer you aren’t using.
  • Spend cap. When the project reaches its spend cap, calls answer 402 spend_cap_reached. See Billing and spend caps.
  • Control. A computer that someone else is controlling answers 423 computer_controlled_elsewhere.
  • Network egress. Computers created by outside developers reach the public internet only. Private address ranges, the cloud metadata address 169.254.169.254 and the host they run on are blocked.

Usage and pricing

Two meters record usage: computer_minute (running minutes, recorded on toolset calls, stop and delete) and computer_action (one per executed toolset call). Both show in Usage and on the console’s Computers page. Pricing for the hosted driver is to be announced.