AI coding agent が codebase を読むとき、よくある非効率な流れがある。まず ls、次に grep、それから十数個の file を開き、最後にあまり関係ない source まで context に詰め込む。小さい project ならまだよいが、実際の business repo では token と tool call の消費がすぐ膨らむ。多くの質問は「この symbol はどこか」ではなく、「どの file 群がこの logic を持っているか」「この種類の code はどの module に集中しているか」「似た実装はあるか」だ。File を一つずつ読むだけでは、こうした repo-wide な質問に答えにくい。

今日見るのは infino-ai/code-context。狙いはかなりはっきりしている。AI coding agent に local code retrieval layer を渡し、agent が毎回 file system を crawl する代わりに、CLI または MCP server から repo-local index を query できるようにする。この index は keyword search、semantic search、hybrid ranking、SQL aggregation をまとめて扱い、project 内の .infino/ directory に普通の file として置かれる。新しい agent IDE でも、cloud code search service でもなく、agent に「まず search してから read する」ための小さな infrastructure layer だ。

GitHub repository page、GitHub API、README、LICENSE、Releases、Tags、package.json、recent commit を 2026-08-22 03:45 Asia/Shanghai 時点で確認すると、infino-ai/code-context25 stars1 fork。主要言語は TypeScript、license は Apache-2.0。Repository created time は 2026-07-10 10:31:55 UTC、latest public push は 2026-08-20 05:22:39 UTC、default branch は main。最新 GitHub Release は v0.3.0、published time は 2026-08-19 11:49:55 UTC。Recent commit は 69eebda、message は “build(deps): bump @infino-ai/infino from 0.5.1 to 0.5.2”、commit time は 2026-08-19 11:50:01 UTC。npm package name は @infino-ai/code-context、package version は 0.3.0、要求は Node.js >= 20code-contextcx の CLI bin を提供する。

プロジェクト概要

項目内容
リポジトリinfino-ai/code-context
位置づけAI coding agents 向け local code retrieval layer
Stars25
Forks1
主要言語TypeScript
ライセンスApache-2.0
作成日時2026-07-10 10:31:55 UTC
Latest push2026-08-20 05:22:39 UTC
Default branchmain
最新 GitHub Releasev0.3.0、2026-08-19 11:49:55 UTC
Recent commit69eebda、build(deps): bump @infino-ai/infino from 0.5.1 to 0.5.2
実行要件Node.js >= 20
キーワードMCP、BM25、semantic search、hybrid search、SQL、local-first、CLI

「repo を読む」を query 可能な index にする

多くの coding agent はすでに grep と file reading tools を使える。ただ、この二つの tool は粒度が低い。Grep は exact string を探すのに強く、file read は局所 context を見るのに強い。だが質問が module をまたぐと、agent はすぐ発散する。一つの語を search し、命中が多すぎて、いくつか file を開き、また別の語で search する。最終回答は project を理解しているように見えても、実際にはたまたま読んだ断片に強く依存していることがある。

code-context は先に repo の local index を作る。README で重要なのは、keyword index が先に使えるようになり、vector 部分は background で backfill されるという点だ。つまり初回利用時にすべての embedding が終わるまで待つ必要はない。BM25 search は先に動き、semantic と hybrid ranking は vector が揃ってから加わる。この staged readiness は workflow 上かなり大きい。Agent tool の起動が遅いと、agent は慣れた grepread に戻りがちだからだ。

Tool surface も小さく保たれている。searchsqlreindex の三つだ。search は keyword と semantic similarity を融合して rank し、path と line number 付きの code chunk を返す。sql は index に対する read-only aggregation query を可能にする。reindex は incremental index refresh を担当する。Find、count、refresh の三つに絞られているので、agent から見ても選びやすい。

特に違いが出るのは SQL だ。多くの code search tool は top hits を返すだけで、その後の分類や集計は agent が自分で読む必要がある。code-context は ranked search を composable な relation として扱う。README の例では、関連 chunk を search し、その結果を path ごとに group して lines や chunk count を集計している。これなら「どの file がこの topic を最も多く扱っているか」を一度の query で聞ける。Architecture understanding、impact analysis、refactor 前の探索に向いている。

既存の code context tool との違い

Gumi では以前 Argyph と GitHits も取り上げたので、この領域を「agent に code context を渡す tool」とだけ説明すると重複してしまう。infino-ai/code-context の違いは、もっと具体的な設計選択にある。

一つ目は、index を repo local な .infino/ directory に置くことだ。README では account、API key、外部 database server、telemetry が不要だと説明されている。Private repo ではこの境界が分かりやすい。Code と index が自分の machine に残る。さらに default embedding は local model を使い、一度 download した後は offline で動く方向だ。価値は単に「賢い search」ではなく、context retrieval を SaaS dependency から外し、developer の working directory に戻すところにある。

二つ目は、SQL を人間向け UI ではなく agent tool として扱うことだ。人間なら search results をざっと眺めて経験で判断できるが、agent は structured query で情報を圧縮するほうが向いている。Login flow を変える前に session、cookie、auth middleware に関連する file を探して path ごとに aggregate する。Cache bug を追う前に TTL、invalidate、refresh に関わる chunk がどの module に集中しているか見る。SQL aggregation は、cross-file understanding を一連の file read ではなく一つの query に近づける。

三つ目は、tool selection problem への意識だ。README では tool surface を三つに保つ理由や、Claude Code で alwaysLoad を使う意図が説明されている。これは地味だが実務的だ。Agent に tool が多すぎると、tool を探すだけで cost が増え、適切な tool を見逃すこともある。小さく安定した MCP server は、巨大な platform より agent に正しく使われやすい場合がある。

どう使えるか

最も直接的なのは、agent が code を変更する前に repo を query する使い方だ。たとえば「この project の feature flag はどう流れているか」と聞く。code-context は index から関連片を探し、必要なら SQL で主要 file を集計し、その後で agent が少数の key file を開いて確認する。Root directory から探索を始めるより、indexed codebase briefing に近い。

二つ目は impact analysis だ。基礎関数を変える、設定項目を消す、SDK を upgrade するとき、grep は直接の文字列しか拾えないことが多い。Hybrid search なら exact term と近い意味の表現を同時に扱い、SQL で file や directory ごとに集約できる。Agent は少なくとも「影響しそうな場所」の地図を先に得られる。

三つ目は、大きな repo を繰り返し理解する場面だ。README では benchmark として tool calls、tokens、wall time の削減が示されており、特に aggregation category で効果が大きいとされている。数字は自分の repo で再検証すべきだが、方向性は納得できる。問題の本質が retrieval と aggregation なら、それを index に任せるほうが、model に何度も file を読ませるより安定しやすい。

導入も比較的軽い。Claude Code では plugin marketplace 経由、他の MCP client では npx -y @infino-ai/code-context mcp で登録できる。CLI 側には cx がある。Team infrastructure をすぐ変えるより、まず非 critical な repo で試すのに向いている。

Caveats

第一に、project はかなり若い。Repository は 2026-07-10 作成で、現時点の stars は 25、latest release は v0.3.0。観察と試用にはちょうどよいが、API、index format、MCP tool behavior が長期安定していると仮定する段階ではない。

第二に、CI coverage には注意したい。README では Linux x64 glibc と macOS arm64 で CI-tested、linux-arm64、musl、Windows via WSL は expected to work だが同じ coverage ではない、とされている。Alpine、Windows、ARM Linux の開発環境なら、実際の repo で index と query を先に試したほうがよい。

第三に、local embedding は無料ではない。README は keyword index が先に live になり、vector backfill が background で走ることを強調している。それでも初回 model download、vector index 作成、disk usage、CPU 使用は発生する。大きな mono repo では .infino/ の size、refresh speed、.gitignore の扱いを見ておくべきだ。

第四に、index は evidence を見つけるための tool であり、理解そのものではない。Search hit の code chunk は有用だが、実際に変更する前には key file を開き、test を走らせ、call chain を確認する必要がある。Better retrieval は blind reading を減らすが、正しい理解を自動保証するわけではない。

まとめ

infino-ai/code-context が面白いのは、大きな agent platform になろうとしていないところだ。見ている問題は狭いが現実的だ。Coding agent は、毎回初めてその repo を見たかのように lsgrep から手探りする必要はない。

Local index、BM25 + semantic hybrid search、SQL aggregation、MCP、CLI。この組み合わせにより、agent は「code はどこにあるか、どこに集中しているか、似た実装はどこか」を先に聞き、その後で読む file を選べる。まだ early stage だが、方向は明確だ。中規模以上の repo を agent に扱わせることが多い developer なら、この種の小さな retrieval layer は tool box に入れて試す価値がある。

リポジトリ:https://github.com/infino-ai/code-context