CodeSeek 代码智能 CLI
为编码助手提供本地代码索引、语义检索与调用图查询。
按维度查看评分与理由
证据显示:CLI 工具需要 API token 用于嵌入和重排序,但配置存储在用户目录,未发现硬编码凭据。安装时通过 npm 脚本下载二进制,但未明确说明下载来源的验证。MCP 集成会修改配置文件,但提供了 uninstall 命令。未发现恶意行为,但权限最小化、用户确认、数据流透明性、敏感数据处理、依赖安全、外部影响、回滚和来源归属均仅部分满足,因为缺乏详细文档和验证。
证据显示:README 和代码结构一致,命令描述清晰。但依赖外部 API(嵌入、重排序)和二进制下载,未提供离线模式或降级策略。失败消息未在文档中详细说明。
证据显示:面向 AI 编码代理,支持多种语言和平台,提供了多种安装方式。能力边界在 README 中有说明,但触发精度(如搜索查询的精确性)未详细说明。环境适配良好,但未提及特定 IDE 或编辑器集成。
证据显示:README 结构清晰,安装说明详细,命令命名稳定,提供了示例。但已知限制未明确列出,版本变更日志缺失,维护责任未明确。许可证为 MIT,但版权年份为 2026,可能不准确。
证据显示:输出格式支持 JSON,便于机器使用。提供了搜索和调用图功能,具有边际价值。但成本效益未详细分析,依赖外部 API 可能产生费用。
证据显示:README 中的声明与代码结构基本一致,但未提供测试结果或独立验证。事实与推断未明确区分。
- API token 存储在配置文件中,需确保文件权限安全。
- 二进制下载来源未验证,存在供应链风险。
- 依赖外部 API,可能产生费用和隐私问题。
- MCP 集成会修改配置文件,需谨慎操作。
这个 Agent 能做什么,适合哪些场景?
CodeSeek 是一个面向 Claude Code 和 Codex CLI 的 Rust 代码智能命令行工具。它使用 Tree-sitter 解析 Rust、Python、JavaScript、TypeScript、Go、C/C++ 和 Java,并提取函数、类和方法以建立调用图。索引将向量写入 LanceDB、将 BM25 全文索引写入 Tantivy,并把调用图保存到本地的 ~/.codeseek/<project_hash>/ 目录。搜索流程可结合稠密检索、BM25 稀疏检索、图名称检索、RRF 融合和 Qwen3-Reranker 重排;当嵌入或重排不可用时,会退回图名称搜索。它不运行守护进程或 HTTP 服务,每个命令都是独立进程,并可通过 stdio JSON-RPC 暴露为 MCP 工具。
执行 codeseek init 时,CodeSeek 读取项目源码文件,以 Tree-sitter AST 解析 7 种语言,提取函数、类和方法;随后按每批 20 段文本调用嵌入 API,并使用 SQLite 缓存结果。它将向量存入 LanceDB、建立 Tantivy BM25 索引、用 PetCodeGraph 序列化调用图,并用 MD5 比较文件变化以增量更新。执行 codeseek search <query> 时,它生成查询向量,运行 LanceDB ANN 稠密搜索、Tantivy BM25 稀疏搜索和 PetCodeGraph 图搜索,再用 Reciprocal Rank Fusion 合并候选结果,并可由 Qwen3-Reranker-4B 对结果重排。codeseek callers、callees 和 callgraph 输出符号的上游或下游调用关系;codeseek install 会为 Claude Code 或 Codex 写入 MCP 配置。
- 使用 Claude Code 的开发者需要在大型 Rust 或 TypeScript 项目中按自然语言寻找相关函数和实现位置。
- 维护遗留 Python、Java 或 Go 服务的工程师需要确认某个函数的调用方与下游依赖。
- 同时维护多语言仓库的团队需要在本机建立函数、类和方法级别的统一索引。
- 希望让 Codex CLI 通过 MCP 查询项目代码结构的开发者,可安装 codeseek_search 和调用图工具。
- 频繁提交代码的个人开发者可安装 post-commit 与 post-merge 钩子,让 codeseek init 在提交或合并后更新索引。
这个 Agent 有哪些优点和局限?
- 将 Tree-sitter 结构提取、PetCodeGraph 调用图、LanceDB 向量检索和 Tantivy BM25 放在同一个本地 CLI 中。
- 搜索可融合稠密、稀疏和图检索,并以 RRF 和可选的 Qwen3-Reranker-4B 提高候选排序精度。
- 通过 MD5 文件比较、SQLite 嵌入缓存和 Git 钩子,支持后续增量索引而非每次重建全部数据。
- 原生提供 Claude Code 与 Codex CLI 的 MCP 安装流程,以及五个代码查询工具。
- 语义检索依赖嵌入 API token、模型和 base URL;需要网络连接,且 API 成本未在资料中说明。
- 启用 Qwen3-Reranker-4B 后,文档标示重排约需 1–2 秒,可能增加搜索等待时间。
- npm 预编译安装包只明确支持 macOS arm64/x64 与 Linux x64;其他平台没有已说明的二进制支持。
- 支持范围限于文档列出的 7 种语言,且资料没有说明跨项目查询、权限控制或团队共享索引能力。
如何安装或部署这个 Agent?
推荐安装:npm install -g codeseek,然后运行 codeseek 完成首次交互式配置。向导会要求填写嵌入模型的 API token、模型和 base URL;示例配置使用 OpenAI-compatible 提供方与 Qwen/Qwen3-Embedding-4B。也可使用 Homebrew:brew tap CodeBendKit/codeseek [email protected]:CodeBendKit/codeseek.git && brew install codeseek。源码构建前需安装 protoc,随后执行 git clone https://github.com/CodeBendKit/codeseek.git、cd codeseek、./build.sh --release。
如何使用这个 Agent?
在目标项目目录运行 codeseek init 建立索引。使用 codeseek search main --limit 10 搜索符号,或使用 codeseek search 'how the code embedding work' 进行自然语言代码搜索。使用 codeseek callers <symbol>、codeseek callees <symbol> 或 codeseek callgraph <symbol> 查询调用关系;查询命令可附加 --json。运行 codeseek install 将 MCP 服务器配置写入 ~/.claude.json 或 ./.mcp.json,以及 ~/.codex/config.toml;运行 codeseek install-hooks 可在 Git 提交和合并后自动执行索引更新。