probelabs/probe
AI-friendly semantic code search engine for large codebases. Combines ripgrep speed with tree-sitter AST parsing. Powers AI coding assistants with precise, context-aware code understanding.
解决的问题
Probe 解决了为 AI Agent 提供企业级代码库中准确、高质量上下文的难题。与依赖简单文本搜索 (grep) 或基于嵌入的向量搜索(可能会在块中间分割函数并需要缓慢的索引过程)的传统工具不同,Probe 提供结构化的、具备 AST 感知能力的上下文,将代码视为代码而非纯文本。
工作原理
Probe 使用 Tree-sitter AST 解析来理解代码的实际结构。它实现了一种 Elasticsearch 风格的布尔查询语言(支持 AND、OR、NOT 和短语)以及用于语义搜索的 BM25/TF-IDF 排名,而无需预构建的索引或嵌入模型。它可以返回完整的语义块(如整个函数或类),并内置了一个可以将用户意图转换为这些精确结构化查询的 Agent。
适用对象
专为构建编程助手(Coding Assistants)的开发者和 AI 工程师,以及在大型代码库上进行规范驱动开发、代码审查和入职培训的团队而设计。
亮点
- 零配置: 不需要索引或嵌入服务;即开即用,支持离线工作。
- AST 感知: 返回完整的函数和类,而不是任意的文本块。
- 多模式访问: 可作为 AI 编辑器(如 Claude Code)的 MCP 服务器、CLI 工具和 Node.js SDK 使用。
- LLM Script: 一个沙箱化的 JavaScript DSL,允许 Agent 执行多步分析流水线。
- 广泛的语言支持: 支持包括 Rust、Python、TypeScript、Go、C++、Java 在内的多种语言。
相关
- 项目
- 项目
- 项目
- 项目
- 项目