mcpField
R
rust-lsp

rust-lsp

github.com/fedemagnani開発1082 回インストール30 週間前に更新
リポジトリ

rust-lsp について

rust-lspは、Rust LSPツールを使ったRustワークスペースのナビゲーションと分析を支援するエージェントスキルです。定義や型の確認、シンボルの安全なリネームなどの作業手順を示します。

主な機能

  1. 01シンボルの定義と参照の検索
  2. 02宣言型と推論型の確認
  3. 03ワークスペース内のシンボル検索
  4. 04使用箇所をまたぐシンボルのリネーム
  5. 05インメモリ文書とワークスペースの管理

活用シーン

  1. 01crateをまたいだRustシンボルの追跡
  2. 02関数の呼び出し箇所の確認
  3. 03推論型やトレイト実装の確認
  4. 04ワークスペース内での安全なシンボル変更

MCP 対応

Rust LSP MCPツールを使って、意味解析とワークスペース操作を行います。ツールが利用できない場合は、先にインストールスクリプトを実行する手順を示します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/fedemagnani/rust-lsp-plugin --skill rust-lsp

インストール後、Claude Code で/rust-lspを入力して読み込まれたか確認します。

同梱ファイルscripts/install.sh

詳細

Rust Analyzer エージェントスキル

使用するタイミング

次のタスクでは、MCP ツールを必ず使用してください。

  • クレート境界をまたぐ場合も含め、シンボルの定義場所を特定する
  • 関数、型、フィールド、トレイトメソッドのすべての参照を見つける
  • 型シグネチャ、推論された型、トレイト実装を調べる
  • ワークスペース全体から名前でシンボルを検索する
  • すべての使用箇所でシンボル名を変更する

タスクで Rust を理解したセマンティックな解析(スコープ、インポート、トレイトディスパッチ、マクロ展開)が必要な場合は、grep やファイルの読み取りよりも MCP ツールを優先してください。

タスクが Rust 固有ではない場合、文字列リテラルやコメントが対象の場合、または Rust のコンパイル対象外のファイルが対象の場合は、grep やファイルの読み取りに切り替えてください。

インストール

Rust LSP ツールがまだ利用できない場合は、MCP ツールを使用する前に、このスキルの scripts/install.sh を実行してください。現在のセッションで Rust LSP MCP ツール API が公開されていない場合は、ツールを「まだ利用できない」と判断してください。まずインストール/セットアップを試み、その後、ツールが使用可能になったか確認してください。

よくあるワークフロー

定義へ移動する
  1. シンボルの位置で definitions を実行します
  2. 返された位置にある対象ファイルを読み取ります
すべての呼び出し元を見つける
  1. 関数名の位置で references を実行します
  2. 返された位置を確認します
型を調べる
  1. 位置を指定して hover を実行します。推論された型、トレイトオブジェクト、ジェネリックのインスタンス化の場合も、解決済みの型が返されます
名前でシンボルを見つける
  1. 名前をクエリとして workspace_symbols を実行します
  2. 必要に応じて、返された位置を読み取ります
シンボル名を安全に変更する
  1. ファイルの内容を指定して open_document を実行します
  2. 位置と新しい名前を指定して rename_symbol を実行します
  3. 返されたワークスペース編集をディスクに適用します
  4. 完了したら close_document を実行します
解析用のインメモリコンテンツを更新する

位置ベースのツールは、open_document を実行しなくても保存済みのファイルを対象に動作します。保存されていないコンテンツやインメモリのコンテンツを解析する場合にのみ、ドキュメントのライフサイクルを使用してください。

  1. open_document を実行して、rust-analyzer とコンテンツを同期します
  2. replace_document を実行してコンテンツを更新します(バージョンは自動的にインクリメントされます)
  3. 完了したら close_document を実行します(冪等です)
プロジェクト構成の変更に対応する
  1. Cargo.toml を編集した後、またはクレートを追加/削除した後に reload_workspace を実行します
  2. proc-macro のソースが変更された場合は rebuild_proc_macros を実行します

コメント