feat(adapter/openhands): OpenHands (ex-OpenDevin) autonomous-agent skill runtime
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- docker, markdown
- Domain
- ai, devtools, documentation, security, testing
Research direction
Start with docs/rfcs/RFC-AI-0004.md, especially Principle 5, then compare the existing .claude/skills/ shape with OpenHands' .openhands/microagents/ convention and its microagents documentation. Validate the autonomous-batch use case against the eval suite; done means the skill mapping, Docker-versus-bubblewrap alignment, and autonomy tiers with required human-confirmation pauses are documented.
Written by the indexing model from the issue text.
Description
Goal: Bring OpenHands (formerly OpenDevin) to feature parity with Claude Code as a skill runtime. Grounds: RFC-AI-0004 Principle 3 — Vendor neutrality.
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/<name>/SKILL.mdare 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
bubblewrapbaseline (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(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/
- Dominant language
- Python
- Stars
- 108
- Forks
- 94
- Avg merge
- 7h 21m
- Merged PRs (30d)
- 296
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from apache/magpie
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-2 days Newbie friendliness 64/100
Maintainers usually reply within 1 day
-
capability:platform enhancement family:issue family:pairing family:pr-management family:release-management family:security family:setup family:utilities
Difficulty 5/5 Over a week Newbie friendliness 35/100
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
fix(pr-triage): the mark-ready guard can be bypassed with a repeated or comma-separated --add-labelOpen
Difficulty 3/5 1-2 days Newbie friendliness 76/100
Maintainers usually reply within 1 day
Similar issues
-
docs pydanty:is-working
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
pydantic/pydantic-ai#9800 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
[Bug]: With --api-server-count > 1, gauges such as vllm:num_requests_running have no samples until the first requestPossibly taken @roy6n23 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
vllm-project/vllm#59988 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
pymc-devs/pymc-examples#897 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 91/100