← ClaudeAtlas

code-contextlisted

How to answer codebase questions with the code-context MCP tools (search, sql, reindex): ranked hybrid keyword+semantic search, relevance-ranked SQL aggregation over the index, and index lifecycle. Use when a question spans many files ("how does X work", "where is Y handled"), when ranking or counting code by topic across a repo, or when the code-context tools are present but deferred and need loading before use. Not needed for jumping to one known identifier - plain grep is fine there.
infino-ai/code-context · ★ 19 · AI & Automation · score 78
Install: claude install-skill infino-ai/code-context
# code-context: ranked search over the repository code-context maintains a local index of the repository (in `.infino/` at the repo root) and exposes three MCP tools. The more a question spans the repo, the more one ranked pass beats crawling files into context. ## If the tools are deferred When the tool names appear in a deferred-tools listing but their schemas are not loaded, load all three in ONE ToolSearch call before the first use, e.g. query `+code-context search sql reindex` (or `select:` with the exact listed names, comma-separated). Never load them one call at a time. ## Choosing the right tool | Situation | Use | | --- | --- | | One known identifier, literal string, or file | plain grep / file tools | | "How does X work", "where is Y handled", concept without exact name | `search` | | Counts, rankings, GROUP BY across the repo ("which files have the most code about X") | `sql` | | Working tree changed a lot mid-session | `reindex` (usually unnecessary - see lifecycle) | ## search - Pass terms, a phrase, or a plain-language description; one pass fuses BM25 keyword matching with semantic similarity, so it works whether or not you know the exact words. - One good search beats several narrow ones - put both the identifiers you know and the intent into a single query. - Every hit carries `path`, `startLine`-`endLine`, and the chunk content with a relevance score. Answer from the chunk content when it suffices, citing the `path:line` ranges; open a file o