OpenHands
Open-source AI software development agent platform
Why consider OpenHands?
OpenHands is an open-source platform and developer control center for autonomous coding agents, enabling interactive development across local, containerized, and cloud backends.
Learn OpenHands by building
Practical setup notes, real use cases, and copy-ready examples in one focused guide.
In this guide4 sections
OpenHands: Autonomous Coding Agent Platform and Agent Canvas
As artificial intelligence models gain greater reasoning depth, developers require dedicated environments to coordinate autonomous agents capable of modifying codebases, executing tests, and managing project repositories. OpenHands addresses this operational challenge by functioning as an open ecosystem for autonomous software engineering. Built to coordinate complex programming workflows, Agent Canvas provides an open-source control surface for agentic software development workflows by combining interactive chat, integrated terminal sessions, and multi-file editing within a unified workspace (Documentation). Under the permissive MIT License, developers can deploy and adapt the platform for private individual use or enterprise development environments.
Architecture and Execution Model
The platform architecture cleanly separates the user interface layer from underlying compute environments. Rather than confining execution to a single monolithic runtime, The browser interface connects to execution backends across local environments, Docker containers, virtual machines, and cloud instances (Architecture Guide). This separation ensures that developers maintain complete control over where sensitive source code is mounted and where automated shell commands are executed during development cycles.
To simplify initial deployment on developer workstations, The agent-canvas launcher packages the frontend client together with the Agent Server and Automation Server into an all-in-one local stack (Setup Guide). By bundling ingress routing alongside background worker processes, developers can launch a complete development control center without manually configuring multiple independent microservices.
Installation and Local Deployment
Before starting the local server stack, verify that your development machine satisfies the underlying runtime requirements. Specifically, Local environment prerequisites require Node.js 22.12 or later alongside the Astral uv package installer (Prerequisites Reference). The uv package manager manages Python virtual environments for underlying runtime tools, ensuring fast execution during autonomous code generation tasks.
Install the global package via npm:
npm install -g @openhands/agent-canvasOr execute a temporary run with npx:
npx @openhands/agent-canvasOnce the startup process completes in your terminal, The local Agent Canvas server interface initializes on port 8000 by default for web browser interaction (Startup Documentation). Navigating to http://localhost:8000 opens the control dashboard, where you can configure LLM provider API keys, select workspaces, and initiate agent conversations.
Containerized Sandboxing with Docker
When running autonomous agents on unfamiliar repositories or untrusted scripts, strict execution isolation is necessary. Autonomous agents require appropriate sandbox isolation because they can execute arbitrary shell commands and file system operations (Security Guidelines). Docker containers restrict the agent's file access exclusively to explicitly mounted workspace directories, preventing unintended modifications to host operating system files.
Run the containerized stack with project mounts:
mkdir -p ~/projects ~/.openhandsdocker run -it --rm \ -p 8000:8000 \ -v ~/.openhands:/home/openhands/.openhands \ -v ~/projects:/projects \ ghcr.io/openhands/agent-canvas:latestIntegrating External ACP Coding Agents
Beyond executing its native agent models, the platform introduces extensible integration with third-party coding assistants. The Agent Client Protocol standardizes bidirectional communication with external coding assistants over JSON-RPC on standard input and output streams (ACP Specification). This protocol enables the Agent Server to spawn external agent CLI tools such as Claude Code, Codex, or Gemini CLI as managed subprocesses while presenting a unified browser canvas interface.
Authentication for external assistants is designed to fit existing developer credentials without redundant configuration. Connected ACP agents support credential management via either persistent CLI subscription sessions or standard provider API keys (Authentication Guide). When running locally, Agent Canvas automatically detects active session credentials cached in local keychains or configuration directories, allowing developers to start coding without re-entering API tokens.
Related tools
More options with a similar category or technology profile.
marimo
A reactive Python notebook that is reproducible, git-friendly, and executable as a script.
JupyterLab
The next-generation web-based user interface for Project Jupyter computational notebooks.
Trafilatura
Python package and command-line tool designed to gather text and metadata on the Web.
ScrapeGraphAI
Python scraper library that uses LLMs and direct graph logic to extract website data.