by CodeBendKit
Rust-powered code intelligence CLI for AI coding agents. Builds call graphs and hybrid semantic search indexes (Dense + Sparse + RRF + Reranker) across 7 languages. Ships as native MCP tools for Claude Code and Codex CLI.
# Add to your Claude Code skills
git clone https://github.com/CodeBendKit/codeseekLast scanned: 6/19/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-06-19T09:05:41.702Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}codeseek is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by CodeBendKit. Rust-powered code intelligence CLI for AI coding agents. Builds call graphs and hybrid semantic search indexes (Dense + Sparse + RRF + Reranker) across 7 languages. Ships as native MCP tools for Claude Code and Codex CLI. It has 215 GitHub stars.
Yes. codeseek passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/CodeBendKit/codeseek" and add it to your Claude Code skills directory (see the Installation section above).
codeseek is primarily written in Rust. It is open-source under CodeBendKit on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh codeseek against similar tools.
No comments yet. Be the first to share your thoughts!
Code intelligence CLI tool for Claude Code. AST-based call graph analysis + semantic search — right from your terminal.
# Install via npm (handles setup wizard + binary download automatically)
npm install -g codeseek
# First run — interactive setup wizard configures your embedding model
codeseek
# Index your project
codeseek init
# Search code by symbol name
codeseek search main --limit 10
# Query call graph
codeseek callers main
codeseek callees process_data
# Register with Claude Code / Codex as MCP tools
codeseek install
# Check status
codeseek status
# Auto-index on git commits
codeseek install-hooks
npm install -g codeseek
The npm package ships a lightweight JS wrapper that handles:
| Step | Description |
|---|---|
| First-run wizard | Interactive CLI prompts for embedding API token, model, and base URL |
| Binary download | Automatically pulls the correct Rust binary for your platform from GitHub Releases |
| Pass-through | All commands (init, search, callers, etc.) are forwarded to the native binary |
Supported platforms:
| Platform | Architecture |
|---|---|
| macOS | arm64 (Apple Silicon), x64 (Intel) |
| Linux | x64 |
brew tap CodeBendKit/codeseek git@github.com:CodeBendKit/codeseek.git
brew install codeseek
git clone https://github.com/CodeBendKit/codeseek.git
cd codeseek
./build.sh --release
build.sh compiles both the TypeScript wrapper (dist/) and the Rust binary, then installs to ~/.codeseek/bin/.
| Command | Description |
|---|---|
codeseek |
First-time setup wizard (configures embedding model interactively) |
codeseek init |
Build/update code index (full on first run, MD5-incremental thereafter) |
codeseek status |
Index statistics: functions, files, last update |
codeseek search <query> |
Symbol name search (falls back from vector → graph name match) |
codeseek callers <symbol> |
Find functions that call this symbol |
codeseek callees <symbol> |
Find functions this symbol calls |
codeseek list |
List all indexed projects with paths |
codeseek install |
Register codeseek as MCP tools in Claude Code / Codex |
codeseek uninstall |
Remove MCP integration |
codeseek uninit |
Delete the current project index |
codeseek install-hooks |
Install git hooks (post-commit/post-merge → codeseek init) |
codeseek serve --mcp |
Start MCP server (stdio JSON-RPC, used by Claude Code internally) |
All query commands support --json for machine-readable output.
codeseek install
Writes MCP server config to:
| Agent | Config file |
|---|---|
| Claude Code | ~/.claude.json (global, all projects) or ./.mcp.json (project-local) |
| Codex CLI | ~/.codex/config.toml |
Claude Code auto-discovers these tools after restart:
| Tool | Capability |
|---|---|
codeseek_search |
Find symbols by name |
codeseek_callers |
Trace upstream callers |
codeseek_callees |
Trace downstream callees |
codeseek_status |
Check index health |
Remove integration:
codeseek uninstall
codeseek init)Source files
→ Tree-sitter AST parse (7 languages)
→ Extract functions / classes / methods
→ Batch embed via API (20 texts per call, SQLite cache)
→ Store vectors in LanceDB
→ Build BM25 index in Tantivy
→ Serialize call graph (PetCodeGraph)
→ Save to ~/.codeseek/<project_hash>/
Idempotent: first run is full build, subsequent runs compare MD5 hashes — only changed files are re-processed. Use codeseek install-hooks for automatic re-index on git commit/merge.
codeseek search) ┌─────────────────────┐
User query ────────────→│ Embedding Model │──→ Query vector
└─────────────────────┘
│
┌───────────────────────┼───────────────────────┐
▼ ▼ ▼
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Dense Search │ │ Sparse Search│ │ Graph Search │
│ (LanceDB ANN)│ │ (Tantivy BM25)│ │ (PetCodeGraph)│
└──────┬───────┘ └──────┬──────┘ └──────┬──────┘
│ │ │
└──────────────────────┼──────────────────────┘
▼
┌─────────────────┐
│ RRF Fusion │ ← Reciprocal Rank Fusion
│ (Top-20 candidates)│
└────────┬────────┘
│
▼
┌─────────────────┐
│ Reranker │ ← Cross-Encoder fine re-ranking
│ (Qwen3-Reranker)│ scores each (query, code) pair
└────────┬────────┘
│
▼
┌─────────────────┐
│ Final Results │ ← Top-5 (or Top-N)
└─────────────────┘
| Stage | Technology | Role | Speed |
|---|---|---|---|
| Dense Search | LanceDB + Embedding Model | Semantic vector similarity | Fast |
| Sparse Search | Tantivy BM25 | Keyword & token matching | Fast |
| RRF Fusion | Reciprocal Rank Fusion | Merge heterogeneous scores fairly | Instant |
| Reranker | Cross-Encoder (Qwen3-Reranker-4B) | Full-interaction precision scoring | ~1-2s |
| Fallback | PetCodeGraph | Graph-based name search (no API needed) | Instant |
If embedding/Reranker are unavailable, the pipeline falls back gracefully to graph-based name search.
~/.codeseek/config.json (global, shared across all projects)~/.codeseek/<md5(project_root)>/
project.json — Project metadatagraph.bin — Serialized call graphembeddings.lance/ — LanceDB vector datatantivy_bm25/ — BM25 full-text indexfile_hashes.json — MD5 incremental trackingNo daemon, no HTTP server. Every command is a standalone process.
| Language | Functions | Structs/Classes | Call Graph |
|---|---|---|---|
| Rust | ✅ | ✅ | ✅ |
| Python | ✅ | ✅ | ✅ |
| JavaScript | ✅ | ✅ | ✅ |
| TypeScript | ✅ | ✅ | ✅ |
| Go | ✅ | ✅ | ✅ |
| C/C++ | ✅ | ✅ | ✅ |
| Java | ✅ | ✅ | ✅ |
~/.codeseek/config.json:
{
"embedding": {
"provider": "openai-compatible",
"model": "Qwen/Qwen3-Embedding-4B",
"api_token": "sk-...",
"api_base_url": "https://api.siliconflow.cn/v1",
"dimensions": 2560
},
"index": {
"min_code_block_length": 16,
"enable_reranker": true,
"hybrid": {
"enable_bm25": true,
"bm25_top_k": 20,
"vector_top_k": 20,
"rrf_k": 60,
"rrf_top_k": 20
},
"reranker": {
"enabled": true,
"model": "Qwen/Qwen3-Reranker-4B",
"api_token": "sk-...",
"api_base_url": "https://api.siliconflow.cn/v1/rerank",
"top_n": 5,
"candidate_multiplier": 5,
"timeout_secs": 60
}
},
"installed_hooks": {}
}
| Model | Role | When |
|---|---|---|
Qwen/Qwen3-Embedding-4B |
Converts code → vectors for dense search | Index building |
Qwen/Qwen3-Reranker-4B |
Scores (query, code) pairs for precision | Search time |
Set via the interactive wizard on first run, or create manually.
cd rust-core
# Build
cargo build
# Build + install to ~/.codeseek/bin/
cd .. && ./build.sh --release
# Run tests
cargo test
# Compile TypeScript wrapper
npm run build
MIT
Built with: Tree-sitter · Petgraph · LanceDB · Tantivy · Tokio · Clap