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 風格的布林查詢語言(支援 ANDORNOT 和短語)以及用於語義搜尋的 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 在內的多種語言。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案