Agents you can call.Results you can check.

OpenBot is an open source Agent platform with no user interface. You give work to an Agent over HTTP.

curl -H "Authorization: Bearer $OPENBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expected":0,"input":"Plan three days in Rome."}' \
  https://api.example.com/v1/sessions/$SESSION/turns
Start a Turn

What will you build?

Every morning, read the new support tickets and sort them.

Call one endpoint from a cron job. Read the answer as JSON.

POST  /v1/sessions
POST  /v1/sessions/:sessionId/turns
POST  /v1/sessions/:sessionId/turns/:turnId/steer
POST  /v1/sessions/:sessionId/turns/:turnId/interrupt
GET   /v1/sessions/:sessionId/wait
POST  /v1/sessions/:sessionId/queue
GET   /v1/apps/discover
One contract

Every feature is an HTTP call.
One typed contract.

The server, the TypeScript client, and the API reference all come from one contract. Use an API key from any program.

Bring your own client. Keep people in control.

Sessions and Timelines

Work happens in Sessions and Turns. The Timeline keeps versions, so you can go back and try again.

Approvals

Risky tool calls wait until a person says yes. Every answer keeps its history.

Open Apps

Agents find and use Apps that publishers put on the open web with the OpenBot App Protocol.

Your models

Use OpenAI, Anthropic, or any server that speaks Chat Completions.

Start in three steps.

  1. Start the server

    Run OpenBot on your computer with Docker and devenv. It comes with a test account and test models.

  2. Make an API key

    Sign in once in a browser, make a key, and call the API from any program.

  3. Start a Turn

    Send work in plain language. Read the answer, the tool calls, and the history.