powered by TechFeed
表示モード
Deep Dive

75以上のAIモデルに対応し完全ローカル実行もできるオープンソースのコーディングエージェント「OpenCode」とは — Claude CodeともCodexとも異なる選択肢

7月29日、ikkaro.netが「What is OpenCode? Deep Dive into the Open-Source AI Coding Agent」と題した記事を公開した。MITライセンスのオープンソースAIコーディングエージェント「OpenCode」の全機能と実際の使い勝手が詳しく紹介されている。

7月29日、ikkaro.netが「What is OpenCode? Deep Dive into the Open-Source AI Coding Agent」と題した記事を公開した。MITライセンスのオープンソースAIコーディングエージェント「OpenCode」の全機能と実際の使い勝手が詳しく紹介されている。


CursorやClaude Codeに縛られたくない開発者の間で、OpenCodeへの関心が急速に高まっている。MITライセンスのオープンソースプロジェクトで、GitHubスター数は15万超(記事公開時点)を記録した。

OpenCodeとは何か

OpenCodeはターミナルファーストのモデル非依存AIコーディングエージェントだ。 ローカルマシン上で動作し、Terminal User Interface(TUI)、デスクトップアプリ、VS Code拡張など複数のフロントエンドから操作できる。

最大の特徴は75以上のモデルプロバイダーに対応していることだ。OpenAI(GPT-4/5)、Anthropic Claude、Google Gemini、DeepSeek、Groqといったクラウドモデルはもちろん、OllamaやLM Studioを介してローカルLLMも動かせる。Claude CodeはAnthropic専用、CodexはOpenAI専用という制約があるが、OpenCodeにはその縛りがない。Cursorはエディタとしての完成度が高い一方でプロプライエタリ製品であり、TUI中心のローカル志向な使い方やモデルの自由な切り替えという点ではOpenCodeとは方向性が異なる。

アーキテクチャはGoで書かれたTUIと、Bun/JavaScriptのHTTPサーバーに分かれたクライアント・サーバー構成だ。HTTP通信ができるフロントエンドであれば何でも接続できるため、カスタムスクリプトやIDEプラグインからも利用できる。

エンジニアが注目すべき3つの機能

1. LSP統合によるリアルタイムエラーフィードバック

他のAIコーディングツールと一線を画す機能が**Language Server Protocol(LSP)との統合**だ。コードを編集した後、コンパイルエラーや診断メッセージが自動的にモデルのプロンプトへ注入される。AIがエラーを「見ながら」自己修正するループが成立するため、反復作業の効率が大幅に上がる。Claude CodeやCodexはこの仕組みをネイティブにはサポートしていない。

2. Gitスナップショットによるundo/redo

AIが大胆なコード変更を加える前に、OpenCodeは自動的にgitスナップショットを取得する。 /undoコマンドで即座にロールバック、/redoで再適用できる。「AIに書き換えられたら元に戻せない」という不安を解消する仕組みだ。

3. 完全ローカル実行によるプライバシー保護

OllamaLM Studioとの統合により、コードをクラウドに一切送らずに推論を実行できる。 金融や医療など規制の厳しい業種で、社内コードをクラウドAIに渡せないケースで実用になる。

インストールと基本的な使い方

macOS/Linuxでは以下のコマンド一発でインストールできる。

curl -fsSL https://opencode.ai/install | bash

なお、インストールスクリプトのドメインはopencode.aiだが、GitHubリポジトリのOrg名はopencode-ai(ハイフンあり)となっている。元記事でも同様の記載があり、どちらも公式のものだが、混同しないよう注意されたい。

インストール後、使いたいプロバイダーで認証して起動するだけだ。

opencode auth login
opencode

設定ファイルは$HOME/.opencode.json、プロジェクト単位では./.opencode.jsonに置く。チーム全体で設定を共有したい場合は.well-known/opencodeエンドポイントから配信する仕組みも用意されている。プロバイダーのAPIキーは環境変数(OPENAI_API_KEYANTHROPIC_API_KEYなど)か設定ファイルで渡す。

セッション情報はSQLiteで管理され、コンテキストウィンドウの上限に近づくと会話を自動要約する。大規模プロジェクトではMilvusなどのベクターデータベースと連携し、ドキュメントや設計記録(ADR)を効率よく参照させることも可能だ。

注意点

Builder.ioが自社ブログで公開した検証結果によれば、Claude Sonnet 4.5を使った同一タスクでOpenCodeはClaude Codeより約78%遅かった。 ただし、これはOpenCodeがより多くのユニットテストを書く傾向にあるなど、挙動が「より丁寧」であることが一因とされている。元記事はこの数値をBuilder.ioの外部検証として引用しており、ikkaro.net独自の計測ではない点に留意されたい。

ローカルモデルの利用にも制約がある。70Bクラス以上のモデルは問題なく動くが、それ以下のパラメータ数だとツール呼び出しで誤動作が起きやすい。 ローカル実行で精度も求めるなら、相応のモデルサイズが必要だ。

また、75以上のプロバイダーに対応している裏返しとして、初期設定のコストはClaude CodeやCodexより高い。 各プロバイダーの認証・レート制限の違いを把握した上でセットアップする必要がある。

誰に向いているか

  • ベンダーロックインを避けたい開発チーム
  • 社内コードをクラウドに出せない規制業種のエンジニア
  • LSP統合やgitスナップショットなどエージェントの動作を細かく制御したい人
  • ツールやTUIをフォークして自分仕様に改造したい人
  • クラウドAPIの従量課金ではなくローカルモデルで$0運用したい人

これらのニーズに共通するのは「ツールへの主導権を手放したくない」という姿勢だ。モデル・実行環境・設定のいずれも自分でコントロールできる点がOpenCodeの本質的な価値であり、逆に言えばその制御をツール側に委ねてよいなら他の選択肢の方が手軽かもしれない。

逆に、セットアップを最小限に済ませたい場合やGitHub Copilotとの密な統合が必要な場合は、Claude CodeやCodexの方が適している。

詳細はWhat is OpenCode? Deep Dive into the Open-Source AI Coding Agentを参照していただきたい。