Skip to main content

OpenHands logo

The self-hosted developer control center for coding agents and automations.

Run OpenHands, Claude Code, Codex, Gemini, or any ACP-compatible agent across local, remote, and cloud backends.

Project status beta CI status npm version Documentation Join us on Slack

Agent Canvas automation preview


OpenHands Agent Canvas turns your coding agents into a self-hosted, always-on engineering team. It's a developer control center for starting conversations and automating everyday tasks — like generating reports that publish to Slack or automatically decomposing GitHub issues into tasks.

It runs locally on your machine by default, but can connect to multiple “agent backends”, e.g. running agents in Docker containers, on VMs, or within your company infrastructure. You can optionally choose to run agents on OpenHands Cloud or OpenHands Enterprise infrastructure.

Agent Canvas runs the open source OpenHands agent out-of-the-box, but can use any third-party agent like Claude Code and Codex.

Self-host your way Run agents locally, in Docker, on VMs, or anywhere you can run an agent server backend
Switch between different backends Switch between local, remote, and cloud agents without losing focus
Create automations Create automations and workflows that integrate with Slack, GitHub, Linear, and more. Run on a schedule or in response to webhook events
Integrate with the tools you use Connect your automations with third-party services like Slack, GitHub, Notion, and more to automate workflows
Bring your own model Use with any LLM
Use with any agent Use with OpenHands, Claude Code, Codex, Gemini, or any agent with Agent-Client Protocol (ACP).

If you have questions or feedback, please open a GitHub issue or join the #proj-agent-canvas channel in Slack.

Quickstart

You can install OpenHands to run agents on any machine: on your laptop, on a dedicated computer like a Mac Mini, or on a server in the cloud.

The most powerful way to run OpenHands is on a server in the cloud. This allows your agents to continue running even when your laptop is shut, and makes it easier to trigger your agents through third-party services like Slack, GitHub, and Datadog. See the self-hosting guide for details, especially with respect to security hardening.

Notably, you can run the backend in multiple different environments, and switch between them from the same Agent Canvas frontend. E.g. you can share an Agent Server with your team for agents doing code review and dependency updates, then have your personal agents running on your laptop.

Option 1: Without a Sandbox

Prerequisites: Node.js 22.12.x or later, uv

npm install -g @openhands/agent-canvas
agent-canvas

The agent-canvas command starts the full local stack by default. You can also split it when you want to run pieces separately:

agent-canvas --frontend-only  # static frontend + ingress only
agent-canvas --backend-only   # agent server + automation backend + ingress only

Option 2: With a Docker Sandbox

Prerequisites:

  • Docker: Docker Desktop on macOS/Windows, or Docker Engine/Docker Desktop on Linux.
  • A host directory for PROJECTS_PATH containing the project folders you want the agent to access. Create it before starting the container.

macOS / Linux:

export PROJECTS_PATH="$HOME/projects"  # directory containing your project folders
mkdir -p "$PROJECTS_PATH" "$HOME/.openhands"

docker run -it --rm \
  -p 8000:8000 \
  -v "$HOME/.openhands:/home/openhands/.openhands" \
  -v "${PROJECTS_PATH}:/projects" \
  ghcr.io/openhands/agent-canvas:1.0.0-rc.11

Windows (PowerShell / Windows Terminal): See README.windows.md for the equivalent commands.

The agent will be able to access any project under PROJECTS_PATH.

Option 3: From Source

Prerequisites: Node.js 22.12.x or later, npm, uv (for running the agent server via uvx)

git clone https://github.com/OpenHands/agent-canvas.git
cd agent-canvas
npm install
npm run dev

Access the UI at http://localhost:8000. You can add additional backends directly from the UI.

Architecture

Agent Canvas is powered by the OpenHands Agent Server, a REST API for running multiple agents on a single machine. Each Agent Server runs on a single host/port; the Agent Canvas can connect to multiple Agent Servers and easily flip between them.

You can run an Agent Server anywhere:

  • Directly on your laptop (be careful!)
  • On a dedicated machine like a Mac Mini
  • On a virtual machine in the cloud
  • Inside OpenHands Cloud (our commercial offering)

The Agent Server is often paired with an Automation Server, which lets you set up agents that run on a schedule or in response to events.

image

More documentation

Metadata

Release files for openhands-ai 1.9.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for openhands-ai 1.9.3
File Size Uploaded Provenance Actions
openhands_ai-1.9.3.tar.gz 636.1 kB Without provenance Details for openhands_ai-1.9.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for openhands-ai 1.9.3
File Interpreter ABI Platform Actions
openhands_ai-1.9.3-py3-none-any.whl Python 3 none any Details for openhands_ai-1.9.3-py3-none-any.whl

Total release size: 1.4 MB

Release files / openhands_ai-1.9.3.tar.gz

Download URL openhands_ai-1.9.3.tar.gz
Size 636.1 kB
Tags Source
SHA-256 checksum
How to use checksums
83f881c54bffbcd749422e4ca26efcbd678908015f31c87f5a9f7aad6f542d8f
BLAKE2b-256 checksum
How to use checksums
62d7426b9ad2e009edda904233fb6b7dfe7618b199169edc5281e4f218ae6fdc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.12.13 Linux/6.8.0-1059-azure

Release files / openhands_ai-1.9.3-py3-none-any.whl

Download URL openhands_ai-1.9.3-py3-none-any.whl
Size 763.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
764fb254db0e7440cd4f8e49c32172203fc37f2e4f5701a066764245896ed12e
BLAKE2b-256 checksum
How to use checksums
2d5f6fb760ecf12f09b72f9376e7f2e6d7c992db3bd36d05b69be28fc6d8501a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.12.13 Linux/6.8.0-1059-azure

Security for openhands-ai 1.9.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.9.3 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page