OpenHands/OpenHands

🙌 OpenHands: AI-Driven Development

OpenHands – Agent Canvas

What it is – A self‑hosted web UI that lets developers run, switch between, and orchestrate AI coding agents (e.g., OpenHands, Claude Code, Codex, Gemini) on any backend: locally, in Docker, on a VM, or in the OpenHands cloud.

Core capabilities

  • Backend‑agnostic: Connect to multiple Agent Server instances via the Agent‑Client Protocol (ACP) and flip between them without leaving the UI.
  • Automation engine: Define scheduled jobs or webhook‑triggered workflows that call agents, with built‑in integrations for Slack, GitHub, Linear, Notion, etc.
  • Bring‑your‑own‑model: Plug any LLM through configurable LLM profiles; the UI does not lock you to a specific provider.
  • Self‑hosting: Install via a single npm package, a Docker container, or from source; the stack runs entirely on your infrastructure unless you opt for OpenHands Cloud/Enterprise.
  • Developer control center: Start conversations, view agent logs, and manage projects (mounted via a host directory) from a single browser page.

Typical workflow

  1. Install the @openhands/agent-canvas npm package (or pull the Docker image).
  2. Launch the UI (agent-canvas command) which starts a local frontend, an Agent Server, and an Automation Server.
  3. Add a backend – e.g., a Docker‑based OpenHands server, a remote Claude Code endpoint, or a custom ACP‑compatible agent.
  4. Create an automation: e.g., on a new GitHub issue, run the agent to decompose the issue into subtasks and post a summary to Slack.
  5. Monitor the conversation and results in the web UI.

Installation shortcuts

  • npm (no sandbox): npm install -g @openhands/agent-canvas && agent-canvas
  • Docker sandbox: docker run -it --rm -p 8000:8000 -v $HOME/.openhands:/home/openhands/.openhands -v $HOME/projects:/projects ghcr.io/openhands/agent-canvas:1.24.0
  • From source: clone the repo, run npm install && npm run dev.

Architecture at a glance

  • Agent Canvas (this repo) – React/TypeScript frontend + orchestration logic.
  • OpenHands Agent Server (in software-agent-sdk) – REST API that runs one or more agents and exposes conversation, tool, and workspace endpoints.
  • Automation Server (OpenHands/automation) – Scheduler/webhook dispatcher that triggers the Agent Server.
  • TypeScript client (OpenHands/typescript-client) – Library used by the Canvas UI to talk to the Agent Server.

Who it’s for

  • Individual developers who want an always‑on AI pair‑programmer on their machine.
  • Small teams that need a shared “AI engineering assistant” without sending code to a third‑party SaaS.
  • Organizations that want to integrate LLM‑driven code actions (review, dependency updates, issue triage) into existing CI/CD or chatops pipelines.

Documentation & community

  • Quick‑start guide, self‑hosting docs, and detailed architecture docs are in the docs/ folder.
  • Public Slack channel for support (#proj‑agent‑canvas).
  • CI badge shows automated testing; the project is in beta.

License – Open source (the repository itself is MIT‑licensed; see the LICENSE file for details).

Related

  • Project
  • Project
  • Project
  • Project
  • Project