Oko について
Okoはコーディングエージェント向けのコード検索MCPサーバーで、順位付けしたソース抜粋を正確な行番号付きで返します。ローカル検索の候補をJevで評価します。
主な機能
- 01キーワード・シンボル・ファイル構造のローカル検索
- 02Jevによる関連度の順位付け
- 03正確な行番号付きの抜粋
- 04ターミナル検索とJSON出力
- 05ローカルのキーワード順位付けモード
活用シーン
- 01コードの動作箇所を特定
- 02コーディングタスクの対象ファイルを検索
- 03`oko ask`でターミナルから検索
MCP 対応
`oko setup`はOkoをMCPサーバーとして対応するコーディングツールに接続し、コードの質問に応答するフックを導入します。サーバーはローカル検索に基づき、順位付けしたコード抜粋を返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Oko
コーディングエージェントがコードをより速く見つけ、使用するトークンを減らせるようにします。
Oko は Claude Code、Codex、Cursor、OpenCode、Pi のコード検索を改善します。 エージェントにコードについて尋ねると、Oko は関連するソースをすでに見つけているため、 エージェントは不要なファイルを検索したり読んだりする回数を減らせます。
Astro、HTTPX、ripgrep での 9 つのコーディングタスクを、Oko の有無それぞれで 3 回実行。結果 · 手法
- 高速化: Claude Code、OpenCode、Pi では所要時間がおよそ半分になり、Codex では 4 分の 1 短縮されます。
- 低コスト化: 測定したすべてのツールでトークン数が 33~44%減少します。
- 寄り道の削減: ツール呼び出しが 65~89%減少します。
- ランキングの改善: Agent Retrieval Bench で公開されているどの手法よりも、適切なファイルを上位に表示します。
- ローカル優先: 検索はお使いのマシン上で実行され、ランキング処理に送信されるのは質問と選択されたスニペットだけです(プライバシー)。
クイックスタート
brew install bartlomein/tap/oko
cd your-project
oko setup --client claude # or codex, cursor, opencode, pi, all
Homebrew を使わない場合:curl -fsSL https://raw.githubusercontent.com/bartlomein/oko/main/install.sh | sh。
その後は、いつもどおりコーディングツールを使ってください。初回のセットアップ時に
TypeSafe AI のキーを求められ、このプロジェクトで使うツールを
Oko に接続し、接続を確認します。プロジェクトごとに 1 回実行してください。oko upgrade で
常に最新の状態を保てます(Homebrew を使っている場合は、先に brew upgrade oko を実行してください)。
Codex:Oko のフックを一度承認する
プロジェクトを初めて開くと、Codex に Hooks need review と表示されます。
Trust all and continue を選んでください。スキップした場合は、/hooks で再度表示できます。
Cursor:Oko を一度有効にする
Cursor では、プロジェクトのツールはオフの状態で追加されます。Customize > MCPs を開き、 oko をクリックして有効にしてください。
Pi:プロジェクトを信頼する
Pi 1.0 以降が必要です。Pi に尋ねられたらプロジェクトを信頼し、/mcp を確認してください。
Pi のセットアップ。
Claude Code、OpenCode:ほかに必要な作業はありません
セットアップ後、新しいセッションを開始してください。
対応プラットフォーム、手動インストール、キーなしモード
macOS(Apple Silicon、Intel)および Linux(ARM64、x64、glibc 2.35 以降)に対応しています。
インストーラーは oko を ~/.local/bin に配置します。必要に応じて PATH に追加してください。
その他のインストール方法 · ツールを手動で接続 ·
キーと設定。キーなしで検索するには、
--no-jev を追加してください。ローカルのキーワードランキングのみを使用します。
同じコーディングツールに同じタスクを、独自の検索を使った場合とOkoを使った場合で、同じ実行内にそれぞれ1回ずつ与えました。セッションごとの結果です。
| コーディングツール | 時間 | トークン | ツール呼び出し | 合格したタスク数(なし → あり) |
|---|---|---|---|---|
| Claude Code | 47%減 12.1 → 6.4 s | 44%減 24,271 → 13,627 | 89%減 3.5 → 0.4 | 19 → 20 / 20 |
| Codex | 26%減 13.8 → 10.2 s | 43%減 45,395 → 26,004 | 80%減 3.0 → 0.6 | 20 → 20 / 20 |
| OpenCode | 47%減 18.0 → 9.6 s | 43%減 13,196 → 7,528 | 87%減 3.7 → 0.5 | 21 → 21 / 21 |
| Pi | 51%減 16.7 → 8.2 s | 33%減 9,737 → 6,495 | 85%減 3.6 → 0.5 | 20 → 21 / 21 |
| Cursor | 6%減 52.3 → 49.2 s | 40%減 182,940 → 109,520 | 65%減 8.0 → 2.8 | 26 → 24 / 27 |
モデル:Claude Sonnet 5.5(Claude Code)、GPT-6.1 Sol(Codex、OpenCode、Pi)、Grok 4.7 High(Cursor)。各ツールのデフォルトまたは低負荷設定を使用しています。Cursorの行は前回リリース時に独自に実行した結果で、ほかは2026年10月の結果です。トークンの数え方はツールごとに異なるため、行内で比較してください。小規模なベンチマークのため、結果は異なる場合があります。手法、タスクごとの結果、注意事項 · 生データ。
その他のベンチマーク
| ベンチマーク | テスト内容 | Oko | 最良の比較対象 |
|---|---|---|---|
| Senseのエージェントベンチマーク | Claude Opus 4.7を使い、同じ夜にSenseと比較して実行した、6つの複数ステップタスク | 引用すべき場所の**88%**を、半分のコストで検出 | Sense:63% |
| Agent Retrieval Bench | 開発者が次に必要とするファイルを探す345のタスク | 最も頻繁に正しいファイルを1位にランク付け:0.40。ベンチマークのメンテナーが検証済み | 公開済みの最良手法:0.24 |
| SWE-Explore | コードを修正するエージェントをランク付けする、実際の課題848件 | 1回の検索で、何度も探索するエージェントと同じ範囲にランク付け:0.82 | エージェント:0.72–0.95 |
Okoの効果が小さいケース
- Cursor独自の検索はすでに高速なため、 Okoによる時間短縮は小さく、主にトークン数とツール呼び出し数の削減になります。
- 重複したコードは誤解を招くことがあります。 2つのファイルに同一の関数がある場合、Okoが誤ったほうを先に表示することがあります。ベンチマークでは、Astroの編集タスク1件がこの理由で失敗しています。
- 多数のファイルにまたがる大きな変更: 1回の検索で返される場所は5か所のため、多数のファイルに関わる課題では、エージェント自身による探索が引き続き必要です。
ターミナルから使う
oko ask "where is authentication handled?"
oko ask "how are retries handled?" --json
oko stats # what ranking has cost you
詳しくは検索オプションをご覧ください。
仕組み
Okoはプロジェクトをローカルで検索し(キーワード、シンボル、ファイル構造)、次にTypeSafe AIの関連性モデルであるJevに、候補のうち実際に質問に答えるものを判定させ、正確な行番号付きの抜粋を返します。oko setupはOkoをMCP サーバーとしてツールに接続し、ツールが読み込む指示に簡潔なガイダンスを追加するとともに、コードに関する質問を送信したときに回答するフックをインストールします。
セットアップによる変更内容 · プライバシー。
ドキュメント
| 目的 | ガイド |
|---|---|
| インストール、アップグレード、トラブルシューティング | インストール |
| ツールを手動で接続する、または MCP ツールについて理解する | クライアントの設定 · MCP リファレンス |
キー、.env、キャッシュを設定する | 設定 |
| ターミナルから検索する、または独自のドキュメントをランキングする | 検索 · ドキュメントのランキング |
| すべてのベンチマークと実行方法を確認する | ベンチマーク結果 |
| マシンから送信される情報を確認する | プライバシー |
貢献
バグ報告やアイデアを歓迎します。issue を作成する際は、キーや非公開のコードを含めずに、お使いの OS と oko --version を記載してください。ビルドとテストについては、CONTRIBUTING.mdをご覧ください。
ライセンス
MIT。依存関係の帰属表示はTHIRD_PARTY_NOTICES.mdに記載されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。