Skip to main content
Agent Canvas is the open-source browser client and control center for OpenHands conversations and automations. It presents backend state and sends requests to backend services; it is not an agent runtime or sandbox. Agent Server or an ACP agent process executes tools, and the selected workspace or sandbox provides the execution boundary.

Core Components

Sandbox Server is a community-driven standalone API and sandbox control plane. Learn more about Sandbox Server.

Service Relationships

The normal browser path is Browser → Agent Canvas → selected backend. Agent Server owns conversation execution. Automation Server owns scheduled and event-driven run lifecycle. A backend distribution can expose both services behind one URL, but they remain separate responsibilities. A remote backend uses the same Agent Server API as a local backend. The Agent Server can run on another machine, or in a separate container on the same machine as Canvas. OpenHands Cloud and OpenHands Enterprise are managed backend platforms: their platform control planes create conversation sandboxes that host Agent Server.

Client And Launcher Boundaries

Agent Canvas can refer to two related surfaces:
  • Canvas client — The React browser application. It renders state and sends requests to backend services.
  • agent-canvas launcher and distributions — Packaging that can start the Canvas client, Agent Server, Automation Server, and ingress together.
The launcher supports split modes: Docker and Helm packages can also bundle the client and backend services. A bundled deployment changes how services are installed, not which component owns execution or isolation.

Execution and Isolation

When you send a message, Agent Canvas sends it to the selected backend. Agent Server starts or resumes the conversation, runs the selected agent, invokes tools, updates backend state, and streams events to Canvas. The workspace determines the execution boundary: Connecting Canvas to a remote backend does not grant the browser direct access to that backend’s filesystem. Canvas displays files and terminal output returned by Agent Server.

State Ownership

State belongs to backend services rather than the browser client:
  • Agent Server stores conversation history, agent and LLM profiles, secrets, MCP configuration, and related settings.
  • Automation Server stores automation definitions, schedules, events, and run history.
  • The workspace or sandbox stores files produced or changed by the agent.
  • Agent Canvas stores connection information needed to reach configured backends.
Switching backends changes which backend-managed conversations, settings, automations, and workspaces Canvas displays.

Deployment Patterns

Next Steps