Skip to content

Intro

OpenBot is an open source Agent platform with no user interface of its own. You use it through an HTTP API. An Agent is a program that takes a goal in plain language, plans the steps, uses tools, and gives back a result.

OpenBot runs the Agent work on a server, keeps the history, and asks people before Agents use a new capability. You bring the client: a script, a backend service, a chat bot, or your own web or mobile app.


What you can do

  • Start a Session and give it work in Turns. Read the answer as one response or as a live stream.
  • Every change goes into the Session’s Timeline. Go back to an earlier point and try a different path with a Fork.
  • Let the Agent use Apps: outside services that people connect to their account.
  • Keep a team of lasting Agents, such as a programmer and a writer. Each has its own context and memory, and they give work to each other.
  • Agents have no preset limits. When an Agent tries something new, the decider above it answers a request, and the answer is kept.
  • Find Apps in a public App Index, and check your own App as a publisher.

How it works

Part What it does
OpenBot The server. It runs Sessions, stores data in PostgreSQL, and serves the HTTP API.
Sign-in A person signs in once in a browser with an OpenID Connect provider.
User tokens Programs send a token in the Authorization: Bearer <token> header for every call.
Permissions Roles and policies decide what each member and each token may do.
API contract One typed contract makes the server, the TypeScript client, and the API reference.
App Protocol An open way to publish Apps on the web so that Agents can find and use them.

Every OpenBot tells you where to go next. Send GET / to read its service document:

Terminal window
curl https://api.example.com/
{
"name": "OpenBot API",
"documentation": "/docs",
"openapi": "/openapi.json",
"auth": "/auth",
"tokens": "/v1/user/tokens"
}

License

OpenBot is free software under the GNU Affero General Public License, version 3 only (AGPL-3.0-only). If you run a changed copy of OpenBot for other people over a network, you must give them the source code of your changes. See the LICENSE file for the full text.


Next steps