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エージェントに正確で高品質なコンテキストを提供することの難しさを解決します。単純なテキスト検索(grep)や埋め込みベースのベクトル検索(関数をブロックの途中で分割してしまう可能性があり、低速なインデックス作成を必要とするもの)に依存する従来のツールとは異なり、Probeはコードをプレーンテキストではなくコードとして扱う、構造的でASTを認識したコンテキストを提供します。

仕組み

ProbeはTree-sitter ASTパースを使用して、コードの実際の構造を理解します。Elasticsearchスタイルのブールクエリ言語(ANDORNOT、およびフレーズをサポート)を実装しており、事前構築されたインデックスや埋め込みモデルを必要とせずに、BM25/TF-IDFランキングによるセマンティック検索を実現します。完全なセマンティックブロック(関数全体やクラス全体など)を返すことができ、ユーザーの意図をこれらの正確な構造的クエリに変換できる組み込みエージェントも備えています。

対象者

コーディングアシスタントを構築している開発者やAIエンジニア、および大規模なコードベースでの仕様駆動開発、コードレビュー、オンボーディングを行うチーム向けに設計されています。

ハイライト

  • セットアップ不要: インデックス作成や埋め込みサービスは不要。即座にオフラインで使用可能。
  • AST認識: 任意のテキストチャンクではなく、完全な関数やクラスを返します。
  • マルチモードアクセス: AIエディタ(Claude Codeなど)用のMCPサーバー、CLIツール、およびNode.js SDKとして利用可能。
  • LLM Script: エージェントが多段階の分析パイプラインを実行できるようにする、サンドボックス化されたJavaScript DSL。
  • 幅広い言語サポート: Rust、Python、TypeScript、Go、C++、Javaなど、幅広い言語をサポートしています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト