
2026/04/27 21:35
Show HN: 私が開発したオープンソース(OSS)エージェントが、Gemini-3-flash-previewにおいて TerminalBench で最高成績を収めました。
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Dirac は、Max Trivedi によって開発され Apache 2.0 ライセンスで公開されているオープンソースの AI コーディングエージェントであり、モデルコンテキストプロトコル(MCP)を採用せずネイティブなツールコールを代わりに用いることで開発の新基準を設定しています。複雑なセットアップに依存しない代わりに、Dirac はハッシュアンカーされたエディットや AST マニピュレーションといった高度な技術を活用し、ファイル編集における極めて高い精度を実現しています。具体的には、関数の抽出など構造的操作を含むターゲット安定性と構造操作を 100% の精度で可能にします。効率的なマルチファイルバッチ処理を通じて複数のファイルを単一のリクエストで処理することで、エージェントはレイテンシと API コストの両方を大幅に削減します。Terminal-Bench-2 での厳格なテストにおいて gemini-3-flash-preview モデルを使用した場合、Dirac は Google のベースライン(47.6%)および Junie CLI(64.3%)と比較して優れており、スコアは 65.2% を記録しました。特に、タスク 1(transformers)およびタスク 7(vscode)といった複雑なリファクタリング作業において完全スコア(8/8)を取得しています。親リポジトリに存在する報告上のバグによりコストがわずかに過小報告されたことを考慮しても、Dirac は $0.03 ミリオントークンあたりに対して Google の $0.05 よりも著しくコスト効率が高いままであり、既存のソリューションのオーバーヘッドの一部ながら信頼性の高いコマンド実行とファイル管理を、優れたパフォーマンスで提供しています。
本文
Dirac:高精度かつ極めてトークン効率的なオープンソース AI エージェント
Dirac は、
gemini-3-flash-preview を使用し、Terminal-Bench-2 のリーダーボードで 65.2% という最高得点を記録して首位に立ちました!
あるモデルの推論能力がコンテキスト長とともに低下する現象は広く研究されており確立されています。コンテキストをきめ細かく選別・管理することができれば、正確性とコストの双方を改善しつつ、大規模な変更も単一のタスク内で実現可能になります。
Dirac は、この考えに基づいて構築されたオープンソースコーディングエージェントです。ハッシュアンカー付けされた並列編集、AST(抽象構文木)操作、そして一連の高度な最適化手法を採用することで、平均 API コストを 64.8%削減しながら、より質が高く高速な作業成果物を生み出します。さらに、MCP(Model Context Protocol)には一切依存していません。
当社の目標: 安価なツール選定による「コストパフォーマンス」の最大化を目指し、単に機能を削ぎ落していく極限ミニマリズムへの道ではなく、最小限のプロンプティングで最大限の効果を引き出すアプローチです。
📊 評価結果(Evals)
Dirac は、複雑かつ現実世界のリファクタリングタスクにおいて、他の主要なオープンソースエージェントと比較されています。Dirac は、極めて低いコストの中で一貫して 100% の正確性 を達成しています。これらの評価は公開されている GitHub リポジトリ上で行われており、誰でも再現可能です。
🏆 TerminalBench 2.0 リーダーボード
gemini-3-flash-preview を使用し、Dirac は Terminal-Bench-2 のリーダーボードで 65.2% という得点を記録して首位に立ちました。これは以下の両方を凌駕しています:
- Google の公式ベースライン (47.6%)
- トップクラスのクローズドソースエージェントである Junie CLI (64.3%)
この結果は、ベンチマーク固有の情報を一切使用せず、かつ
AGENTS.md ファイルを挿入することなく達成されました。
⚠️ コスト表に関する注意
これらの評価を実行した後に、Cline(親プロジェクト)においてバグが検出されました(問題 #10314)。この修正は PR #10315 として提出済みです。当該バグにより、Dirac および Cline の評価結果におけるコスト報告がわずかに低めに記録されていました(キャッシュの読み取りあたりのトークン単価:$0.03 vs $0.05)。大きな差にはなりませんが、近い将来に評価結果を更新する予定です。
モデル設定: すべてのタスクおよびモデルにおいて、
gemini-3-flash-preview を使用し、「思考」モードを「高」に設定して実行しました。
パフォーマンスとコスト比較表
| タスク (リポジトリ) | 対象ファイル数* | Cline | Kilo | Ohmypi | Opencode | Pimono | Roo | Dirac |
|---|---|---|---|---|---|---|---|---|
| タスク 1 (transformers) | 8 | 🟢 (差分) [$0.37] | 🔴 (差分) [N/A] | 🟡 (差分) [$0.24] | 🟢 (差分) [$0.20] | 🟢 (差分) [$0.34] | 🟢 (差分) [$0.49] | 🟢 (差分) [$0.13] |
| タスク 2 (vscode) | 21 | 🟢 (差分) [$0.67] | 🟡 (差分) [$0.78] | 🟢 (差分) [$0.63] | 🟢 (差分) [$0.40] | 🟢 (差分) [$0.48] | 🟡 (差分) [$0.58] | 🟢 (差分) [$0.23] |
| タスク 3 (vscode) | 12 | 🟡 (差分) [$0.42] | 🟢 (差分) [$0.70] | 🟢 (差分) [$0.64] | 🟢 (差分) [$0.32] | 🟢 (差分) [$0.25] | 🟡 (差分) [$0.45] | 🟢 (差分) [$0.16] |
| タスク 4 (django) | 14 | 🟢 (差分) [$0.36] | 🟢 (差分) [$0.42] | 🟡 (差分) [$0.32] | 🟢 (差分) [$0.24] | 🟡 (差分) [$0.24] | 🟢 (差分) [$0.17] | 🟢 (差分) [$0.08] |
| タスク 5 (vscode) | 3 | 🔴 (差分) [N/A] | 🟢 (差分) [$0.71] | 🟢 (差分) [$0.43] | 🟢 (差分) [$0.53] | 🟢 (差分) [$0.50] | 🟢 (差分) [$0.36] | 🟢 (差分) [$0.17] |
| タスク 6 (transformers) | 25 | 🟢 (差分) [$0.87] | 🟡 (差分) [$1.51] | 🟢 (差分) [$0.94] | 🟢 (差分) [$0.90] | 🟢 (差分) [$0.52] | 🟢 (差分) [$1.44] | 🟢 (差分) [$0.34] |
| タスク 7 (vscode) | 13 | 🟡 (差分) [$0.51] | 🟢 (差分) [$0.77] | 🟢 (差分) [$0.74] | 🟢 (差分) [$0.67] | 🟡 (差分) [$0.45] | 🟢 (差分) [$1.05] | 🟢 (差分) [$0.25] |
| タスク 8 (transformers) | 3 | 🟢 (差分) [$0.25] | 🟢 (差分) [$0.19] | 🟢 (差分) [$0.17] | 🟢 (差分) [$0.26] | 🟢 (差分) [$0.23] | 🟢 (差分) [$0.29] | 🟢 (差分) [$0.12] |
| 正解数 | 5/8 | 5/8 | 6/8 | 8/8 | 6/8 | 6/8 | 8/8 | 8/8 |
| 平均コスト | - | $0.49 | $0.73 | $0.51 | $0.44 | $0.38 | $0.60 | $0.18 |
🟢 成功 | 🟡 不十分 | 🔴 失敗
- コスト比較: Dirac は競合他社と比較して 64.8% コスト削減(2.8 倍のコスト低減)を実現しています。
- 対象ファイル数*: タスク完了のために修正または作成 expected なファイル数の予估值です。
- タスクの詳細な説明と方法論については、evals/README.md を参照してください。
🚀 主な特徴
- ハッシュアンカー付き編集: Dirac は安定した行のハッシュ値を用いて編集対象を極めて高い精度で特定するため、従来の行番号ベースの編集における「翻訳時の情報喪失」問題を回避します。
- AST ネイティブな高精度性: 言語構文(TypeScript, Python, C++ など)に対する内蔵理解により、関数の抽出やクラスのリファクタリングといった構造的変更を 100% の精度 で実行できます。
- 複数ファイルのバッチ処理: Dirac は単一の LLM アウトバウンド/インバウンド(LLM 呼び出し一回)で複数のファイルを処理・編集でき、遅延と API コストを大幅に削減します。
- 高帯域コンテキスト選別: 最適化されたコンテキストの選別により、エージェントは軽量かつ高速に動作し、トークンの無駄遣いなく LLM が常に最も関連性の高い情報を持てるよう確保されます。
- 自律的なツールの使用: Dirac はファイルの読み書き、ターミナルコマンドの実行、ヘッドレスブラウザの利用などを実行でき、すべてをあなたの管理下において承認ベースのワークフローで実現します。
- スキルと AGENTS.md:
ファイルを使用してプロジェクト固有の指示で Dirac の動作をカスタマイズできます。また、AGENTS.md
,.ai
,.claude
ディレクトリから自動的に情報を読み取り、Claude のスキルもシームレスに継承します。.agents - ネイティブツール呼び出しのみ: 最大の信頼性とパフォーマンスを確保するため、Dirac はネイティブのツール呼び出し機能を備えたモデルのみに限定して対応しています。(注:MCP はサポートされていません)
📦 インストール方法
VS Code 拡張機能
Dirac を VS Code Marketplace からインストールしてください。
CLI (ターミナル)
npm を使用して Dirac CLI をグローバルにインストールします:
npm install -g @dirac-ai/cli
🚀 CLI クイックスタート
認証:
# 通常認証 dirac auth # または、このステップをスキップするために環境変数を使用する export ANTHROPIC_API_KEY=your_key_here
最初のタスクの実行:
dirac "このプロジェクトのアーキテクチャを分析してください"
設定(環境変数)
API キーを環境変数として提供することで、
dirac auth のステップをスキップできます。これは CI/CD や非永続的な環境において最適です:
ANTHROPIC_API_KEYOPENAI_API_KEYOPENROUTER_API_KEYGEMINI_API_KEYGROQ_API_KEYMISTRAL_API_KEY
(x.ai)XAI_API_KEY
(HuggingFace)HF_TOKEN- ... など(詳細なリストについては
を参照してください)。src/shared/storage/env-config.ts
一般的なコマンド
:対話型のタスクを開始します。dirac "プロンプト"
:プランモードで実行し、実行前の戦略を確認できます。dirac -p "プロンプト"
:Yolo モード(すべての操作を自動承認、単純な修正に向いています)。dirac -y "プロンプト"
:コンテキストを直接 Dirac に渡します。git diff | dirac "これらの変更をレビューしてください"
:過去のタスクを表示および再開します。dirac history
🛠️ 使い始め方
- VS Code で Dirac サイドバーを開きます。
- お好みの AI プロバイダー(Anthropic, OpenAI, OpenRouter など)を設定します。
- ビルドまたは修正したい内容を記述して新しいタスクを開始します。
- Dirac の動きをご覧になってください!
📈 スター履歴
[このリポジトリのスター履歴]
📄 ライセンス
Dirac はオープンソースで、Apache License 2.0 の下でライセンスされています。
🤝 リンク集・謝辞
Dirac は、素晴らしい Cline プロジェクト のフォーク版です。基礎的な貢献に感謝し、Cline チームおよびコントリビューターに心より敬意を表します。
❤️ 愛を込めて作成: Max Trivedi (Dirac Delta Labs)