apache / apache/magpie

feat(adapter/openhands): OpenHands (ex-OpenDevin) autonomous-agent skill runtime

Open
#322 2 comments 0 reactions 0 assignees View on GitHub
capability:platform enhancement family:tools good first issue
Dominant language
Python
Stars
92
Forks
92
Avg merge
1d 12h
Merged PRs (30d)
104

Description

**Goal:** Bring OpenHands (formerly OpenDevin) to feature parity with Claude Code as a skill runtime. Grounds: [RFC-AI-0004 Principle 3 — Vendor neutrality](../tree/main/docs/rfcs/RFC-AI-0004.md).

**Why OpenHands:** Fully open-source (MIT), backend-agnostic (works with any LLM), oriented toward more-autonomous execution (the "fully agentic" end of the spectrum). Adopters who want the framework's skill discipline applied to an autonomous-execution agent — for batch triage, overnight backlog sweeps, automation pipelines — need an OpenHands runtime.

**What "parity" means** (recalibrated for OpenHands' autonomy posture):

- Skills under `.claude/skills//SKILL.md` are invokable as OpenHands microagents / instruction sets
- The `tools/*` bridges are reachable — OpenHands runs commands in a Docker-sandboxed runtime
- **Sandbox parity:** OpenHands already ships a Docker-sandboxed execution model — this is a *plus*, not a gap. Document the alignment with the framework's `bubblewrap` baseline (similar threat model, different mechanism)
- **HITL primitives:** OpenHands is the most autonomous of the named runtimes — this is the tightest fit/risk check. Document **which** framework skills are appropriate for autonomous execution and which require explicit confirmation pauses; the framework's "draft before send" rule (RFC-AI-0004 Principle 5) must be preserved even in autonomous mode

**Suggested approach:**

- Map `SKILL.md` → OpenHands' `.openhands/microagents/` convention (microagents are markdown files OpenHands loads as agent context)
- Document the autonomy-tier mapping: which skills can run end-to-end without confirmation (read-only triage), which require explicit pause points (any write to a public artefact, any outbound message)
- Validate the autonomous-batch use case against the eval suite — autonomous execution + HITL discipline is the interesting design tension this port surfaces

**Reference:**

- RFC-AI-0004: [`docs/rfcs/RFC-AI-0004.md`](../tree/main/docs/rfcs/RFC-AI-0004.md) (especially Principle 5 — write access and outbound messages require human review)
- OpenHands: https://github.com/All-Hands-AI/OpenHands
- Microagents: https://docs.all-hands.dev/usage/prompting/microagents-overview
- Existing skill shape: [`.claude/skills/`](../tree/main/.claude/skills/)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.