OpenHands(旧OpenDevin)完全ガイド:オープンソース自律コーディングエージェントの実力
OpenHandsはブラウザ操作からコード実行まで自律的にこなすオープンソースのAIコーディングエージェント。SWE-Benchで世界トップクラスのスコアを誇るその仕組みと実践的な使い方を解説する。
OpenHandsとは何か——普通のAIツールとどう違うのか
OpenHands(旧称OpenDevin)は、AllHands.AIが開発するオープンソースのAIコーディングエージェントプラットフォームだ。2024年にOpenDevinとして公開され、GitHubスター数が1週間で2万を超えるという爆発的な支持を受けてOpenHandsにリブランドされた。その野心的なビジョンは「ソフトウェアエンジニアリングのあらゆる作業を自律的に実行する」という一言に尽きる。
実際に使ってみると、普通のAIコーディングツールとの違いが体感できる。GitHub CopilotやCursorのようなツールは「人間が操作する手を少し速くする」ものだ。対してOpenHandsは、ターミナルコマンドの実行、ウェブブラウザの操作、ファイルシステムの読み書き、APIの呼び出しまで、エンジニアが日常的に行う操作のほぼすべてを自律的にこなす。「GitHubのIssueを渡したら、プルリクエストが届いていた」という体験が当たり前になる世界を目指している。
正直に言うと、最初に試したときは半信半疑だった。「本当にそこまでできるのか?」と思いながらIssueを一つ渡してみたら、コードを読んで、テストを実行して、修正して、コミットまで済んでいた。その瞬間の驚きは今でも忘れられない。
アーキテクチャの核心:Sandboxedな実行環境が安全を担保する
OpenHandsの最大の技術的特徴は、Dockerコンテナを活用したSandboxed実行環境だ。エージェントが生成したコードや実行するコマンドはすべてコンテナ内で動作するため、ホストマシンへの悪影響を防ぎつつ、実際のエンジニア作業と同等の操作が可能になっている。「AIが暴走してシステムを壊すのでは」という不安を、アーキテクチャレベルで解消しているのが賢い設計だ。
エージェントランタイムはLLMバックエンドとして複数のモデルをサポートしており、Claude 3.5/3.7 Sonnet、GPT-4o、Gemini 2.0、さらにローカルモデル(Ollama経由)など、用途と予算に応じて使い分けられる。バックエンドの切り替えは設定ファイル一行の変更で完了する。個人的な経験では、複雑なリファクタリングタスクにはClaude 3.7 Sonnetが最も精度が高く、定型的なバグ修正にはコストを抑えたモデルで十分だった。
ハマりどころとして一つ挙げると、Docker環境のメモリ設定だ。デフォルトでは重いタスクでコンテナがメモリ不足で落ちることがある。docker-compose.ymlのmemory制限を最低8GBに設定しておくことを強くすすめる。
SWE-Bench評価で圧倒的な成績——数字の意味を正しく読む
AIコーディングエージェントの性能指標として広く使われているSWE-Benchでは、OpenHandsは継続的にトップクラスのスコアを記録している。SWE-Benchは実際のGitHub Issueを基にしたベンチマークで、「本物のソフトウェアプロジェクトで実際の問題をどれだけ自律的に解決できるか」を測定する。2026年初頭の評価では、SWE-Bench Verifiedにおいて55%超の解決率を達成しており、商用ツールと互角以上の実力を示している。
ただし、この数字を額面通りに受け取るのは危険だ。SWE-Benchの問題は「仕様が明確で独立したタスク」に偏っている。実際の開発では曖昧な要件やレガシーコードとの格闘が多く、ベンチマーク以上に難しい場面も多い。「SWE-Benchで50%を超えた=仕事の半分をやってくれる」ではなく、「得意な種類のタスクなら確実に処理できる」という解釈が正確だ。
セルフホスティングで本番導入——ハマりどころも含めて解説
OpenHandsはDockerさえあれば数分で起動できる。公式が提供するdocker-compose.ymlを使えば、ウェブUIも含めてローカル環境に展開可能だ。企業での利用においてはコードがクラウドLLMプロバイダーに送信される点のみ考慮が必要だが、ローカルLLMを組み合わせれば完全オンプレミスの構成も実現できる。
GitHubリポジトリのIssueをOpenHandsに渡すだけでプルリクエストの作成まで自動化できる「GitHub Issue解決モード」は特に生産性向上効果が大きい。実際に試したあるチームでは、バックログに積まれていた「easy」ラベルのIssue30件を週末の間にOpenHandsが処理し、月曜朝には30本のPRが届いていたという。もちろん全部をそのままマージしたわけではないが、「エンジニアがレビューするだけで済む状態」になっていたことの価値は計り知れない。あなたのチームにも積み上がったissueがあるなら、まず10件だけ渡して試してみることをすすめる。