Skip to main content
Run a coding agent from your own code. Not a model that writes code back to you — an agent with a computer, that writes files, runs them, and leaves what it built at a URL you can open. You bring the model key. Gobare does not sell you inference — it runs an agent against a connection your organization owns, on a sandbox Gobare provides. You pay your model provider for tokens and Gobare for the computer.

A minute, start to finish

This asks for something to be built, waits, and prints an address. Nothing is elided — it is the whole program.
Open it. There is a working page there, served from the computer the agent was given — a form, a running total, saved in the browser. Forty-nine seconds on one run of this, a hundred and eleven on another; the difference is how long the sandbox took to come up. You need a token for this. It takes a minute and the quickstart has it.

What just happened

Five nouns, and they nest:
  • Agent — a named configuration: model, instructions, tools. Optional; a session can carry its own.
  • Session — one cloud computer. Its workspace persists between rounds and survives being paused.
  • Turn — one piece of work, from your message until it settles.
  • Items — the record: messages, tool calls, file changes.
  • Events — the same, as it happens: streamable, resumable.
  • Artifacts — files it published; they outlive the computer.
  • Preview — a port it serves, optionally at a public URL.
The session is the thing to hold on to. Everything else is reached through it, and a session you created yesterday still answers today — its computer may have been reclaimed and rebuilt, and the conversation does not restart.

Why this and not a model API

A model API returns text. You would still be writing the part that actually runs: a sandbox and its lifecycle, an agent loop, tool dispatch, file capture, streaming, resumption after a dropped connection, and somewhere for a person to approve something before it happens. That list is the product. It is also why there is no sandbox-free mode — for a coding agent the workspace is not an accessory. What Gobare deliberately does not do: sell you inference, choose your model, or hold your conversation state in your process. The first is why you connect your own key; the last is why a session is a URL you can come back to rather than an object you keep in memory. Coming from another Agents API? design-decisions.md lists where this one diverges and why — queueing versus steering, durable versus transient events, and what completed does not mean.

Common tasks

Base URL: https://api.gobare.devhttps://app.gobare.dev serves the same API and is what the Console uses.

Every page

Those pages describe the parts. Guides put them together: six scenarios — long-running work, structured extraction, approvals, dispatch from your own service, showing the agent’s work live, and moving between model providers — each written as a sequence you can copy. The machine-readable reference is GET /v1/openapi.json — OpenAPI 3.1, no token needed, because it describes the API rather than holding data in it. Take it before you read anything else here: it carries every field constraint and a real example payload for every event type, which is the part prose is worst at. Every /v1 response points at it:
That is there for callers who cannot read this page — an agent has the response in front of it and no way to guess a URL, and one header on a call it was already making is worth more than a paragraph it will never see. It is generated from the same route table the server matches against, so it cannot describe an endpoint that does not exist.

How these pages stay true

The product repository is the source. This directory is checked against the code it describes — ceilings against the constants that enforce them, error codes against their statuses, both event vocabularies — so a page cannot quietly drift from the API. These pages are published as a site at docs.gobare.dev, built from this directory by deploy/publish-docs-site.sh. A copy of the markdown also goes to gobare_tools via scripts/publish-api-docs.sh, which refuses to run if the check above does not pass.

Scope

Gobare brings your own model key. The API does not sell you inference — it runs an agent against a model credential your organization has already connected, on a sandbox Gobare provides. There is no request field for a model provider, because the provider is a property of the credential. There is also no sandbox-free mode. For a coding agent the workspace is the product, not an accessory, so every session has one.