Fundamental breaking changes are happening now, affecting protocol, transport, and APIs. Consider this version experimental. Join Alpha discussions to help shape it.

Architecture

The beeai platform was designed to provide a local-first experience with all agents running on your laptop. This allows complete control over your data and for seamless integration with local inference engines like ollama.

To achieve this the platform consists of several components as shown on the diagram:

Agent providers

Agent provider is a process that exposes one or more agents over a standardized interface - the ACP protocol.

Typically, the provider needs to define a manifest that tells the beeai-platform how to run it. Providers can contain other features besides agents, such as tools.

For a complete guide how to register providers to the platform, see providers.

There are several providers that come with the beeai platform out of the box, see agents/official and agents/community.

Beeai-platform server

The centerpiece of the architecture is the platform server which has several key responsibilities:

  • manages the providers - spawns and destroys provider processes
  • provides a proxy which hides all providers under single endpoint, this entails routing requests and forwarding notifications between providers and end-user clients
  • manages configuration for providers, stores and injects environment variables to providers

On top of this the server offers a simple REST API for communicating with agents and orchestrates the flow of telemetry data from agents to Arize phoenix OTEL backend.

Beeai CLI and Beeai UI

These two components provide a tailored user interface for communicating with agents. Agents can have a completely custom input/output interface, however there are a couple of standardized UI interfaces that come with the platform — chat and hands-off. If your agent declares one of those in its metadata, you can automatically start chatting with it using beeai run <name> or using the graphical chat at localhost:8333. See Agent UIs for more information on writing each type of agent.

Python and TypeScript clients

You can also use the acp-sdk to communicate with the agents from the platform programmatically. For example, you can use multiple agents from the platform to form a workflow in your application.

Arize Phoenix

The beeai platform is integrated with the open-source agent tracing tool Arize Phoenix. For more information see Agent observability.