Repolode
boyter

boyter/cs

コード構造を解析して関連度順に結果を表示する、インデックス不要のCLIコード検索ツール。

代替できる製品:Sourcegraph

スター
1,080
フォーク
23
未解決の Issue
2
最終コミット
3 日前

これは何?

cs(codespelunker)は、Goで書かれたコマンドラインのコード検索ツールです。一致したファイルをその場で解析して、コード、コメント、文字列を区別し、テキスト上の出現箇所をすべて列挙するのではなく、構造を考慮した重み付けを加えたBM25で関連度順に結果を表示します。事前にインデックスを作成しないため、どのディレクトリもすぐに検索できます。

通常の検索に加え、--only-code、--only-comments、--only-strings、--only-declarations、--only-usages などの構造ベースのフィルターに対応しています。複雑さに基づく「gravity」設定を使うと、インターフェースや設定ファイルより実装ファイルを上位に表示できます。また、複数の調整パラメーターをプリセットにまとめたランキングプロファイルも利用できます。クエリでは、ブール演算子、引用符で囲んだフレーズ、正規表現、あいまい検索が使えます。

同じ検索エンジンを、対話型TUI、任意でシンタックスハイライトを有効にできるHTTP検索サーバー、またはClaude DesktopやClaude CodeなどのLLMツールからコードベースを検索できるMCPサーバーとして実行できます。--git-sync オプションを使うと、検索ディレクトリ内のリポジトリを定期的にpullして、検索結果を最新の状態に保てます。

主な機能

  • 01コード、コメント、文字列リテラルを区別する、構造を考慮したマッチング
  • 02複雑さに基づくgravityとファイルの場所によるブーストを備えたBM25関連度ランキング
  • 03定義や呼び出し箇所へ移動するための宣言・使用箇所フィルター
  • 04ブール検索、引用符で囲んだフレーズ、正規表現、あいまい検索
  • 05コンソール、TUI、HTTPサーバー、MCPの各インターフェース
  • 06検索ディレクトリ内のリポジトリを定期的にgit pull

ユースケース

  • インターフェース、テスト、コメントではなく、関数の実際の実装を見つける
  • プロジェクト全体からTODO/FIXMEコメントやエラーメッセージの文字列だけを検索する
  • MCP経由でLLMエージェントに関連度順のコード検索ツールを提供する
  • 検索サーバーを運用せずに、cloneしたリポジトリをまとめたディレクトリを検索する

クイックスタート

  1. 1

    Go でインストール(Go 1.25.2 以降が必要)

    go install github.com/boyter/cs/v3@latest
  2. 2

    任意のディレクトリから検索を実行

    cs "authenticate" --gravity=brain

使う前に知っておきたいこと

  • go install でインストールするには Go 1.25.2 以降が必要です。それ以外の方法でインストールする場合は、releases ページからバイナリを入手してください。
  • インデックスがないため、検索のたびに一致するファイルをスキャンします。プレーンテキストの検索では ripgrep より遅くなります。

収録されている特集

トピック

よくある質問

cs とは?
コード構造を解析して関連度順に結果を表示する、インデックス不要のCLIコード検索ツール。 cs(codespelunker)は、Goで書かれたコマンドラインのコード検索ツールです。一致したファイルをその場で解析して、コード、コメント、文字列を区別し、テキスト上の出現箇所をすべて列挙するのではなく、構造を考慮した重み付けを加えたBM25で関連度順に結果を表示します。事前にインデックスを作成しないため、どのディレクトリもすぐに検索できます。
cs は無料で使えますか?ライセンスは?
cs は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
cs は今もメンテナンスされていますか?
活発にメンテナンス中。cs の最終コミットは 2026年10月20日 です。
cs は何に使えますか?
インターフェース、テスト、コメントではなく、関数の実際の実装を見つける プロジェクト全体からTODO/FIXMEコメントやエラーメッセージの文字列だけを検索する MCP経由でLLMエージェントに関連度順のコード検索ツールを提供する 検索サーバーを運用せずに、cloneしたリポジトリをまとめたディレクトリを検索する
cs のインストール方法は?
Go でインストール(Go 1.25.2 以降が必要): go install github.com/boyter/cs/v3@latest 任意のディレクトリから検索を実行: cs "authenticate" --gravity=brain
cs はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/boyter/cs

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト