OpenHands Agent Canvas

The closest TypeScript match to Open SWE's product shape — a browser-based agent canvas with multi-file editing, terminal access, and extensible tool calls.

Overview

OpenHands (formerly OpenDevin) is an open-source AI software development agent platform. It provides a visual canvas where agents can browse the web, edit files, run terminal commands, and communicate with users through a chat interface. It is one of the most mature open-source agent harnesses with a large community and active development.

AttributeValue
Language / StackPython (backend) + TypeScript/React (frontend)
GitHubgithub.com/All-Hands-AI/OpenHands
LicenseMIT
Closest MatchOpen SWE product shape (visual canvas + agent loop)
MaturityProduction-ready

Key Features

  • Browser-based canvas — Visual workspace with file tree, terminal, browser preview, and chat in a single interface.
  • Multi-agent orchestration — Supports delegating tasks to sub-agents with different roles and capabilities.
  • Extensible tool system — Built-in tool registry plus custom tool support via plugins.
  • Sandbox execution — Docker-based sandbox for safe code execution with configurable resource limits.
  • Git integration — Automatic branch creation, commit, and PR workflows with customizable policies.
  • Evaluation harness — Built-in SWE-bench integration for benchmarking agent performance.

Architecture

OpenHands follows a three-tier architecture: a React/TypeScript frontend communicates via WebSocket with a Python FastAPI backend. The backend manages agent state through an event-driven architecture where each action (file edit, bash command, browser click) produces an observation that updates the shared state. Agents are implemented as state machines with configurable planners and code executors.

Strengths

  • Visual interface is best-in-class for open-source agent harnesses — comparable to Claude Code's TUI but web-native.
  • Large community with 40k+ GitHub stars, active Discord, and regular releases.
  • Multi-agent support allows complex workflows where a planner delegates to specialists.
  • Extensible sandbox with Docker, remote, and local execution modes.
  • Strong evaluation culture with SWE-bench submissions and public leaderboards.

Gaps vs Open SWE

  • Python-centric — Backend is Python, making deep integration with a TypeScript toolchain like xCoder more complex.
  • No native LangGraph integration — Uses a custom state machine rather than a standardized graph framework.
  • Heavier resource footprint — Full Docker composition required for local development.
  • Less SDK-first — Primarily a standalone application rather than an embeddable library.

Relevance to xCoder

OpenHands validates the product shape that xCoder is targeting: a visual workspace where agents execute code with human oversight. While we are not adopting OpenHands directly due to the Python/TypeScript mismatch, we study its UI patterns, sandbox architecture, and multi-agent delegation model. The browser-based canvas concept directly influenced our GUI Conductor layer (L1) design.

Research note

OpenHands' evaluation harness and SWE-bench integration are reference implementations for our own benchmark pipeline. We track their performance improvements to calibrate xCoder's agent driver quality.