OpenHandsとは
OpenHandsとは、オープンソースのAIソフトウェア開発エージェント
読み: オープンハンズ
かんたんに言うと
AIが自分でコードを書いて、テストを走らせて、エラーが出たら自分で直す。人間は指示を出すだけで、実装作業をAIに任せられるオープンソースのツールである。
人間がレビューに回るコード補完ツールとの根本的な違い
GitHub Copilotに代表されるコード補完ツールは、エディタ上でカーソル位置の続きを予測して提案する。書くのはあくまで人間で、AIは補助にとどまる。
OpenHandsはこの関係を逆転させる。「ログイン機能を追加して」と指示すれば、ファイル構成の把握からコードの生成、テストの実行まで一連の作業をAIが主導する。人間はコードレビューの立場に回る。
この違いは「補完」と「自律エージェント」の違いそのものである。補完は1行単位の予測、エージェントはタスク単位の遂行。求められる信頼性の水準がまったく異なる。
サンドボックスで動作する安全設計
OpenHandsはDockerコンテナ内のサンドボックス環境で動作する。AIが実行するコマンドはホストマシンから隔離されており、ファイルシステムの破壊やネットワークへの不正アクセスを防ぐ仕組みになっている。
これは単なる安全策ではなく、実用上の要件である。AIエージェントは試行錯誤しながらコードを書く。途中で「rm -rf /」のような破壊的コマンドを実行する可能性をゼロにはできない。サンドボックスがなければ、本番環境で使うのはリスクが高すぎる。
とはいえ、コンテナ内からの情報漏洩リスクはゼロではない。環境変数にAPIキーを渡す場合は、最小権限の原則を徹底する必要がある。
SWE-Benchで測る実力と現実の乖離
OpenHandsの開発チームはSWE-Benchというベンチマークで性能を公開している。SWE-Benchは実在のGitHubリポジトリから取得したバグ修正タスクを集めたもので、AIがどの程度の修正を自力でこなせるかを測定する。
2025年時点でOpenHandsはSWE-Bench Verifiedのスコアで上位に位置しているが、ベンチマークの成績がそのまま業務での信頼性を意味するわけではない。ベンチマークはタスクのスコープが明確だが、実際の開発では仕様の曖昧さや既存コードとの整合性など、ベンチマークには現れない難しさがある。
スコアは参考にはなるが、自社のコードベースで試してみないことには判断できない。
対応するLLMとコスト構造
OpenHandsはバックエンドのLLMを差し替えられる設計になっている。Claude、GPT-4o、Geminiなどの商用モデルに加え、ローカルで動作するオープンソースモデルにも対応する。
コスト面では注意が必要となる。エージェントはタスク完了までに何十回もLLMを呼び出すため、API課金が積み上がる。単純なコード補完と比べてトークン消費量は桁違いに多い。
オープンソースであること自体は無料だが、裏側で動くLLMのコストは別の話である。ローカルLLMで動かせば課金は発生しないが、性能はクラウドモデルに劣る。このトレードオフを理解した上で導入を検討する必要がある。
導入時に確認すべきセキュリティ上の論点
AIにコードを書かせるということは、AIにコードベースへのアクセス権を与えるということでもある。社内のプロプライエタリコードがLLMのAPIに送信される点は見落とせない。
OpenHandsはローカルLLMに対応しているため、外部送信を避ける選択肢はある。ただしローカル環境の構築と維持にはGPUリソースと運用コストがかかる。
もう一つの論点は、AIが生成したコードのライセンスである。学習データに含まれるコードの断片が出力に混入するリスクはゼロではなく、ライセンス汚染の可能性について法務と事前に確認しておくことが望ましい。
当社の見解
当社はAIの安全運用のために多層防御を設計・実装している(2026年4月現在)。この仕組みにより、AIが誤って機密情報を外部に送信するリスクを構造的に排除した。加えて、万が一インシデントが発生しても即座に復旧できるバックアップ体制を構築している。実際にAIが暴走して本番環境を停止させた経験があり、その際も緊急復旧スクリプトとデプロイ前の自動ロールバック機構で数分以内に復旧した。2026年4月にはAIによるファイルの無断変更を追跡するため、5つのリポジトリにgit自動追跡を導入し、全変更をコミット単位で記録・復元可能にした。安全性は「失敗を防ぐ」だけでなく「失敗しても戻せる」「誰が変えたか追跡できる」設計が本質だ。
同じ失敗を二度としないAIエージェント
今のAIは、聞けば何でも答えてくれます。
でも、セッションが切れた瞬間に前回の失敗を忘れます。
当社が開発しているAIは、過去の経緯を念頭に置いて、
聞かれる前に「それは前回うまくいきませんでした」と声をかけます。
人間にも同じ失敗をさせず、AI自身も繰り返しません。
古参の社員が横にいるように、黙っていても気づいてくれる。
それが、当社が考える本当のAI社員です。
