Skip to content

修正:LSP ツールの workspaceSymbol 操作が結果を返さない問題

原文(日本語に翻訳)

LSP ツールの workspaceSymbol 操作が結果を返さない問題を修正しました。query パラメーターを受け付け、言語サーバーに渡すようになりました。

原文(英語)

Fixed the LSP tool's workspaceSymbol operation returning no results; it now accepts a query parameter and passes it to the language server

概要

LSP(Language Server Protocol)ツールの workspaceSymbol 機能は、プロジェクト全体からシンボル(関数、クラス、変数など)を検索するために使われますが、以前は query パラメーターが言語サーバーに正しく渡されず、常に空の結果が返っていました。v2.1.162 でこの問題が修正され、指定したクエリに一致するシンボルが正しく検索できるようになりました。

基本的な使い方

修正後、workspaceSymbol で正しくシンボルを検索できます:

# Claude Code に LSP ツールを使ったシンボル検索を依頼
「プロジェクト全体で 'getUserData' 関数が定義されている場所を LSP で検索して」
「'UserService' クラスの実装を LSP の workspaceSymbol で見つけて」

実践例

関数定義の検索

# LSP 経由でプロジェクト全体の関数を検索
「'authenticate' という名前の関数をすべて LSP で検索して」

# 期待される動作(修正後):
# - src/auth/handler.ts の authenticate 関数
# - src/middleware/auth.ts の authenticate 関数
# - tests/auth.test.ts の authenticate 関数
# などが返される

クラスとインターフェースの検索

「'Repository' を含む全クラスとインターフェースを LSP で検索して」

# 修正後の結果例:
# - UserRepository (src/repositories/user.ts)
# - ProductRepository (src/repositories/product.ts)
# - IRepository (src/interfaces/repository.ts)

リファクタリング前の影響範囲調査

「'OldApiClient' クラスの全シンボルを LSP で検索して、
どのファイルに影響するか確認して」

注意点

  • この修正は LSP サーバーが設定・起動されている場合にのみ有効です
  • workspaceSymbol は言語サーバー側のサポートが必要です(TypeScript、Python、Go など)
  • 検索クエリは部分一致で機能する場合と完全一致が必要な場合があり、言語サーバーの実装によります
  • 大規模プロジェクトでは初回インデックス構築に時間がかかる場合があります

関連情報