Skip to main content
Agent Canvas is an open-source control surface for agentic work. It gives you one browser UI for conversations, files, terminal output, model configuration, backends, and automations. By default, Agent Canvas runs on your own machine. You can also connect the same UI to backends running in Docker, on a VM, on Modal, or in OpenHands Cloud.

When To Use Agent Canvas

Use Agent Canvas when you want a self-hosted or local browser UI for agents that can work with real files, terminals, tools, and automations.
If you want to…Start here
Run OpenHands locally in a browserInstall Agent Canvas
Use a sandboxed local environmentDocker Backend
Run agents on an always-on machineVM / Self-Hosted Installation
Connect to managed cloud sandboxesCloud Backend
Use Claude Code, Codex, Gemini CLI, or another ACP agentACP Agents
Create scheduled or event-driven workflowsPre-built Automations

How Agent Canvas Works

Agent Canvas has four pieces to understand:
ConceptWhat It MeansWhy It Matters
Browser UIThe web interface you open in your browser.This is where you chat, inspect files, manage settings, and configure automations.
BackendThe agent server that runs conversations, tools, settings, secrets, and automations.This determines where the agent runs and what machine or sandbox it can access.
WorkspaceThe folder, repository, container mount, or cloud sandbox the agent works in.This determines which files the agent can read and write.
Agent and modelThe OpenHands agent or an ACP agent, plus the model credentials it uses.This determines which LLM or provider receives conversation context and powers the agent.
Settings, secrets, LLM configuration, MCP servers, skills, conversations, and automations are scoped to the active backend. Switching backends switches the environment the agent is using.

Choosing A Trust Boundary

Before installing, decide where you want the agent to run and what files it should be able to access.
SetupTrust BoundaryBest For
npm local installRuns directly on your machine. The agent server can operate on the local filesystem.Fastest local setup when you trust the machine and understand the file access.
DockerRuns inside a container and only sees the directories you mount.Local sandboxing and clearer file boundaries.
VM or dedicated machineRuns on the remote host you control.Always-on agents, heavier compute, team-shared backends, or personal/work separation.
OpenHands CloudRuns in managed OpenHands Cloud sandboxes.Cloud execution without maintaining your own machine or VM backend.
Agent Canvas can run agents that execute shell commands, read files, write files, and use connected tools. Only connect a backend to files, secrets, and networks that you are willing to let the agent use.

Model Access

Agent Canvas supports several model access patterns:
  • Direct provider key — enter an API key from Anthropic, OpenAI, Google, or another supported provider.
  • OpenHands Cloud key — use an OpenHands Cloud API key for verified hosted models.
  • ACP agent subscription login — use a signed-in provider, such as Claude Code, Codex, or Gemini, when the backend runs on the same machine as that login.
  • Local or OpenAI-compatible provider — connect providers such as Ollama, LM Studio, LiteLLM, or a compatible gateway through model settings.
See LLM Profiles and Model Configuration and ACP Agents for details.

How It Fits With Other OpenHands Products

ProductUse It When
Agent CanvasYou want a self-hosted browser UI for local, remote, or cloud-backed agents and automations.
OpenHands CloudYou want a fully managed hosted experience with no local installation.
OpenHands SDKYou want to build agents or agent-powered applications in Python.
Local GUI (Legacy)You are following older Docker-based Local GUI documentation. New local browser workflows should use Agent Canvas.

Before You Start

For the normal local setup, you need:
  • Node.js 22.12 or later
  • npm
  • A model access path, such as a provider API key, OpenHands Cloud LLM key, ACP subscription login, or local model server
  • A folder, repository, or project workspace for the agent to work in
For a sandboxed local setup, use Docker instead of the direct npm backend path.

Where To Go Next