TiloBox
Back to directory
OpenHands project preview

OpenHands

Open-source AI software development agent platform

LicenseMIT
GitHub stars84.9k
Last commit1 weeks ago
Tags6 topics
AiAi AgentCoding AssistantDeveloper ToolsPythonAutomation
Overview

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.

Guided learning

Learn OpenHands by building

Practical setup notes, real use cases, and copy-ready examples in one focused guide.

4 min read 4 sections
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:

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

Or execute a temporary run with npx:

bash
1npx @openhands/agent-canvas

Once 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:

bash
1mkdir -p ~/projects ~/.openhands
2
3docker run -it --rm \
4 -p 8000:8000 \
5 -v ~/.openhands:/home/openhands/.openhands \
6 -v ~/projects:/projects \
7 ghcr.io/openhands/agent-canvas:latest

Integrating 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.

OpenHands FAQs

OpenHands is listed as a Ai Ml tool on TiloBox. Review the overview, features, and official documentation on this page to decide whether it solves your specific workflow.

Start with the project's GitHub repository and official website for supported installation and deployment instructions. Test the setup with representative data or a small project before rolling it out more widely.

OpenHands is listed under the MIT license. Read the complete license text and the project's notices before using, modifying, or distributing the software.

Production readiness depends on your requirements. Review maintenance activity, security practices, documentation, backup and upgrade procedures, and compatibility with your stack; then validate it in a non-production environment.

OpenHands is listed as an alternative to Devin. Compare the core workflow, deployment model, integrations, and licensing against your must-have requirements before switching.