Discover / Development
OpenHands
by All-Hands-AITypeScript
Open-source autonomous software development agents.
Maturity: stable because 2y old, v1.8.0 released 4d ago. Derived from release and commit history, not a rating.
- Stars
- 83k
- Forks
- 11k
- Downloads / mo
- 13k
- Last commit
- 2026-08-03
- License
- MIT
- Open issues
- 282
Market and trust evidence
Edition not yet matchedNo exact skills.sh identity match is available for this repository. Repository adoption and freshness remain visible above; install momentum is not inferred.
Trust analysis is a screening signal, not a security warranty. Read the ranking and trust methodology.
In practice
Written by AI from this repository’s README · high confidenceDevelopers need a centralized way to run, manage, and automate coding agents across local and cloud environments.
Use it when
When you want to run open-source or third-party coding agents in a self-hosted environment with custom workflows.
Not the right pick when
When running the agent directly on your machine without a sandbox, as it gives the agent full filesystem access.
Capabilities
- Switch between local, remote, and cloud agents
- Create automations that integrate with Slack and GitHub
- Use with any LLM and ACP-compatible agent
Cost: Free and open source
Install
Derived from the published package name in the repository, not from a model.
Video walkthroughs
Third-party YouTube uploads matched to this tool by title, channel and repository name on 2026-08-03. Not made, reviewed or endorsed by SkillPilot. View counts and publish months are as of the match date and the month is approximate. Nothing loads from YouTube until you press play.
What the repository ships
Detected from the actual files in the repository root.
Latest release v1.8.0
Published 2026-07-30
1.8.0 (2026-07-30)
<!-- Release notes generated using configuration in .github/release.yml at main -->
What's Changed
Features
- feat: enable/disable an installed MCP server from its card by @hieptl in https://github.com/OpenHands/OpenHands/pull/16171
Bug Fixes
- fix: exclude disabled skills from agent context by @d3f4w2 in https://github.com/OpenHands/OpenHands/pull/16168
- fix: regenerate favicon PNG/ICO from favicon.svg for consistent design by @neubig in https://github.com/OpenHands/OpenHands/pull/16202
- fix: identify PostHog users with Cloud identity by @neubig in https://github.com/OpenHands/OpenHands/pull/16087
Maintenance
- chore: bump agent-server 1.39.1, automation 1.5.0, typescript-client 1.36.1 by @hieptl in https://github.com/OpenHands/OpenHands/pull/16197
New Contributors
- @d3f4w2 made their first contribution in https://github.com/OpenHands/OpenHands/pull/16168
Full Changelog: https://github.com/OpenHands/OpenHands/compare/v1.7.2...v1.8.0
This PR was generated with Release Please. See documentation.
<!-- AGENT_CANVAS_DOCKER_START -->
Tags
README
<a name="readme-top"></a>
<div align="center">
<img src="https://assets.openhands.dev/logo-whitebackground.png" alt="OpenHands logo" width="340">
<h1 align="center" style="border-bottom: none">Agent Canvas</h1>
<p align="center">
<strong>The self-hosted developer control center for coding agents and automations.</strong>
</p>
<p align="center">
Run OpenHands, Claude Code, Codex, Gemini, or any ACP-compatible agent across local, remote, and cloud backends.
</p>
</div>
<div align="center">
<a href="https://github.com/OpenHands/incubator-program"><img src="https://img.shields.io/badge/status-beta-blue?style=for-the-badge" alt="Project status beta"></a>
<a href="https://github.com/OpenHands/OpenHands/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/OpenHands/OpenHands/ci.yml?branch=main&style=for-the-badge" alt="CI status"></a>
<a href="https://www.npmjs.com/package/@openhands/agent-canvas"><img src="https://img.shields.io/npm/v/%40openhands%2Fagent-canvas?style=for-the-badge&logo=npm" alt="npm version"></a>
<a href="https://docs.openhands.dev/openhands/usage/agent-canvas/backends"><img src="https://img.shields.io/badge/Documentation-000?logo=googledocs&logoColor=FFE165&style=for-the-badge" alt="Documentation"></a>
<a href="https://go.openhands.dev/slack"><img src="https://img.shields.io/badge/Slack-Join%20the%20community-611f69?logo=slack&logoColor=white&style=for-the-badge" alt="Join us on Slack"></a>
</div>
<div align="center">
<a href="#quickstart">Quickstart</a> |
<a href="./docs/README.md">Docs</a> |
<a href="./docs/SELF_HOSTING.md">Self-Hosting</a> |
<a href="https://docs.openhands.dev/openhands/usage/agent-canvas/acp-agents">ACP Agents</a> |
<a href="https://docs.openhands.dev/openhands/usage/agent-canvas/prebuilt-automations">Automations</a> |
<a href="https://go.openhands.dev/slack">Slack</a>
</div>
<p align="center">
<img src="https://assets.openhands.dev/screenshot/automation-preview.png" alt="Agent Canvas automation preview" width="100%">
</p>
<hr>
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 SELF_HOSTING.md 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
[!WARNING]
This runs the agent-server directly on the machine you're installing on — the agent will have full access to your filesystem!
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_PATHcontaining 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.8.0 # x-release-please-version
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
[!WARNING]
This runs the agent-server directly on the machine you're installing on — the agent will have full access to your filesystem!
Prerequisites: Node.js 22.12.x or later, npm, uv (for running the agent server via uvx)
git clone https://github.com/OpenHands/OpenHands.git
cd OpenHands
npm install
npm run dev
Access the UI at http://localhost:8000 for the npm/source launchers, or http://localhost:8000/canvas for the Docker image. 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.
<img width="1456" height="1258" alt="image" src="https://github.com/user-attachments/assets/cb6de6f5-ac30-4d04-a76a-b5c259f0c163" />
More documentation
- Documentation index
- Architecture overview
- Development guide
- Self-hosting guide