Claude CodeのLSP(Language Server Protocol)完全ガイド【2026年最新】:有効化・プラグイン設定・言語別セットアップまで徹底解説
室谷今回はClaude CodeのLSP、Language Server Protocolサポートの話をしましょう。.AI(ドットエーアイ)コミュニティでも「コードナビゲーションが遅すぎる」って声が結構あって、これを使うと劇的に改善されるんですよね。
テキトー教師ですよね。受講生さんでも「Claude Codeで大きいコードベースを扱うと、定義を探すのに何十秒もかかる」って相談が多くて。
LSPを有効にすると、その問題が一気に解決するんですよね。
LSPを有効にすると、その問題が一気に解決するんですよね。
室谷MYUUUでも大きめのTypeScriptプロジェクトを扱っているんですけど、LSP有効化の前後で体感が全然違います。テキスト検索だと30〜60秒かかっていた「この関数どこで定義されてる?」が、50ミリ秒で返ってくるようになって・・・これはかなりインパクトがありました。
テキトー教師900倍くらいの速度差ですよね(笑)。単純に速いだけじゃなくて、LSPはコードの意味を理解して探してくれるので、精度も全然違うんですよ。
テキスト検索だとコメントや文字列リテラルの中にある同名の文字列もヒットしてしまうので、精度という意味でも段違いです。
テキスト検索だとコメントや文字列リテラルの中にある同名の文字列もヒットしてしまうので、精度という意味でも段違いです。
室谷そこが本質なんですよね。「テキストとして一致しているか」じゃなくて「コードとして同じシンボルかどうか」で判断してくれる。
これが型安全なリファクタリングや大規模なコードベースの解析には決定的な差になります。
これが型安全なリファクタリングや大規模なコードベースの解析には決定的な差になります。
Claude CodeのLSPとは?Language Server Protocolの仕組み

テキトー教師まずLSP自体の話から整理しましょう。Language Server Protocol(LSP)はMicrosoftが2016年に設計した、エディタとプログラミング言語の「橋渡し役」の仕組みです。
室谷VS CodeとかNeovimとかで「定義へ移動」とか「参照を探す」ができるのは全部このLSPのおかげなんですよね。エディタ側がLSPというプロトコルで言語サーバーに問い合わせをして、言語サーバーが答えを返すという構造です。
テキトー教師整理するとこういう構造ですね。
LSPの構造
エディタ/ツール ←── LSP プロトコル ──→ 言語サーバー
(Claude Code) (pyright, gopls, rust-analyzer等)
- エディタ側: リクエストを送る(「このシンボルの定義はどこ?」「このファイルのエラーは?」)
- 言語サーバー側: 答えを返す(「src/utils.ts の42行目です」「型エラーがあります」)
- プロトコルが標準化されているので、どんなエディタでもどんな言語でも同じ仕組みが使える
室谷LSP以前は、各エディタが各言語ごとに独自実装を持っていたんです。エディタが10個、言語が10個あれば、100個の実装が必要だった。
LSPができてからは「言語サーバーさえ作れば全エディタで使える」になったんですよね。
LSPができてからは「言語サーバーさえ作れば全エディタで使える」になったんですよね。
テキトー教師その言語サーバーが今やClaude Codeでも使えるようになった。PyrightやGoPlsといった、VS Codeでも使われているのと同じ言語サーバーがClaude Codeに連携できるんです。
室谷これってエンジニアにとってはかなり大きくて、自分のプロジェクトで使っている言語サーバーをそのままClaude Codeに持ち込める。設定を一から作り直す必要がないんですよね。
Claude CodeにLSPが追加されたのはいつ?
テキトー教師時系列を整理すると、Claude CodeのLSPサポートはバージョン2.0.74で正式にchangelogに追加されました。2025年12月のことです。
室谷ただ、正式追加される前から
ENABLE_LSP_TOOL=1 という環境変数で手動有効化することはできていたんですよね。コミュニティのGitHubイシューで先に発見されて、じわじわ広まっていったというか・・・
テキトー教師そういう「公式ドキュメントにはまだ載っていないけど使える」機能、Claude Codeには結構あるんですよね(笑)。受講生さんからの「これどこに書いてあるんですか?」という質問が一番多い種類の情報です。
室谷2026年現在は、プラグインシステム経由でLSPプラグインをインストールして使うのが正式な方法になっています。公式マーケットプレイスにもLSPプラグインが並んでいますし、Piebald-AIが作ったコミュニティマーケットプレイス()にも30言語以上のプラグインがあります。
テキトー教師Stars 378、Fork 46という数字を見ると、コミュニティにかなり受け入れられているのがわかりますよね。公式マーケットプレイスにまだないレアな言語(Ada、Julia、Elixir等)もカバーされていて、実用的です。
LSPで何ができる?Claude Codeが使えるLSPオペレーション
室谷具体的にLSPを有効にすると何ができるのかを整理しましょう。Claude Codeが使えるLSPオペレーションは以下のとおりです。
| オペレーション | 説明 |
|---|---|
| goToDefinition | シンボルの定義場所に移動 |
| goToImplementation | インターフェースの実装場所に移動 |
| hover | シンボルの型情報やドキュメントを取得 |
| documentSymbol | ファイル内の全シンボル(クラス・関数・定数)を一覧表示 |
| findReferences | シンボルの全参照箇所を検索 |
| workspaceSymbol | プロジェクト全体でシンボルを検索 |
| prepareCallHierarchy | 関数のコールハイアラーキーを取得 |
| incomingCalls | ある関数を呼び出している関数を全て列挙 |
| outgoingCalls | ある関数が呼び出している関数を全て列挙 |
テキトー教師このリストで個人的に注目しているのが
incomingCalls と outgoingCalls です。「この関数を変更したら、どこに影響が出るか」を瞬時に把握できるので、大規模リファクタリングの前調査が劇的に楽になるんですよ。
室谷MYUUUのプロジェクトでも、レガシーコードの整理をClaude Codeに頼むときに「まず影響範囲を調べて」ってお願いするんですけど、LSPありだとこのコールハイアラーキー解析が本当に正確で。テキスト検索ベースとは比べものにならないですね。
テキトー教師findReferences も地味に重要で、「このクラスを削除しても大丈夫か?」の確認に使えます。LSPなしだと「この名前でgrepしてみたけど全部ではないかも」という不確かさがありましたけど、LSPありだと「12箇所で参照されています」と正確な数字が出てくるので。
室谷型の認識もできるので、「同名の別の変数」は参照にカウントされない。これはマジで助かりますよね。
Claude CodeのLSPを有効にする方法:3ステップで完了

テキトー教師実際に設定する手順を見ていきましょう。大きく分けると「ENABLE_LSP_TOOLを有効にする」「プラグインマーケットプレイスを追加する」「言語プラグインをインストールする」の3ステップです。
ステップ1:ENABLE_LSP_TOOLの設定
室谷まずLSP機能自体を有効にする必要があります。一番シンプルなのは、起動時に環境変数を渡す方法です。
ENABLE_LSP_TOOL=1 claude
テキトー教師これで試してみて動作確認ができたら、永続化しましょう。settings.jsonに書くのが正式な方法です。
// ~/.claude/settings.json(ユーザースコープ)
{
"env": {
"ENABLE_LSP_TOOL": "1"
}
}
室谷~/.claude/settings.json に書くとユーザー全体に適用されます。特定のプロジェクトだけに適用したい場合は .claude/settings.json に書けばOKです。
テキトー教師受講生さんが混乱しやすいのが、この「ユーザースコープ vs プロジェクトスコープ」の違いですね。LSPは基本的にユーザースコープで設定しておいて、どのプロジェクトでも使えるようにしておくのがおすすめです。
ステップ2:プラグインマーケットプレイスを追加する
室谷次に、LSPプラグインを取得するためのマーケットプレイスを追加します。公式マーケットプレイスは自動で使えますが、コミュニティのPiebald-AIマーケットプレイスも追加しておくのが実用的です。
# Claude Code内で実行
/plugin marketplace add Piebald-AI/claude-code-lsps
テキトー教師このコマンドはClaude Codeを起動した後、対話的に実行します。一度追加すれば永続化されるので、毎回実行する必要はありません。
室谷公式マーケットプレイスには Python(Pyright)、TypeScript、Rustの基本的なものが揃っています。ただ、GoのGopls、Java、Kotlin等はコミュニティマーケットプレイスにある方が充実しているんですよね。
テキトー教師Piebald-AIのマーケットプレイスは2026年4月時点で25言語以上をカバーしています。TypeScript/JavaScript(vtsls)、Rust(rust-analyzer)、Python(pyright)、Go(gopls)、Java(jdtls)、Kotlin、Scala(metals)、C/C++(clangd)、PHP(phpactor)、Ruby(ruby-lsp)、C#(omnisharp)、PowerShell、HTML/CSS(vscode-langservers)、LaTeX(texlab)、Julia、Vue(vue-volar)、Svelte、OCaml、Ada、Dart、Solidity、Markdownなど。
ステップ3:言語プラグインのインストール
室谷マーケットプレイスが追加できたら、使いたい言語のプラグインをインストールします。
# TypeScript/JavaScriptの場合
/plugin install vtsls@claude-code-lsps
# Pythonの場合
/plugin install pyright@claude-code-lsps
# Rustの場合
/plugin install rust-analyzer@claude-code-lsps
# Goの場合
/plugin install gopls@claude-code-lsps
テキトー教師@claude-code-lsps の部分がマーケットプレイス名の指定です。省略すると公式マーケットプレイスから探します。
室谷インストール後はClaude Codeを再起動するのを忘れずに。プラグインは起動時に読み込まれるので、再起動しないと有効になりません。
テキトー教師これを忘れて「なんか動かない」ってなる受講生さん、めちゃくちゃ多いですね(笑)。インストール後の再起動は必須です。
言語別LSPのセットアップ:バイナリインストール方法一覧
室谷プラグインを入れただけではまだ動きません。プラグインはClaude Codeと言語サーバーの「橋渡し設定」で、実際に動く言語サーバーのバイナリは別途インストールが必要です。
テキトー教師この2段階が混乱ポイントで、「プラグインをインストールしたのになぜ動かないの?」という相談の原因がほとんどここですね。整理するとこうなります。
| 言語 | プラグイン名 | 言語サーバーのインストール |
|---|---|---|
| Python | pyright | pip install pyright または npm install -g pyright |
| TypeScript/JS | vtsls | npm install -g @vtsls/language-server typescript |
| Go | gopls | go install golang.org/x/tools/gopls@latest |
| Rust | rust-analyzer | brew install rust-analyzer または rustup component add rust-analyzer |
| Java | jdtls | brew install jdtls(Java 21以上が必要) |
| C/C++ | clangd | brew install llvm または xcode-select --install |
| C# | omnisharp | brew install omnisharp/omnisharp-roslyn/omnisharp-mono |
| Kotlin | kotlin-lsp | brew install kotlin-language-server |
| Ruby | ruby-lsp | gem install ruby-lsp |
| PHP | phpactor | composer global require phpactor/phpactor |
| HTML/CSS | vscode-langservers | npm install -g vscode-langservers-extracted |
室谷バイナリをインストールしたら、
which pyright とか which gopls で正しくPATHに入っているかを確認してください。PATHが通っていないとClaude Codeから見つけられません。
テキトー教師Goの場合は特に注意が必要で、
$GOPATH/bin がPATHに入っているか確認してください。入っていない場合は export PATH=$PATH:$(go env GOPATH)/bin を .zshrc や .bashrc に追加します。
室谷Javaの場合はJava 21以上が必要なのも落とし穴ですね。古いバージョンが入っているとjdtlsが起動しない。
java --version で確認してから進めるのが確実です。LSPの動作確認:正しく動いているかのテスト方法
テキトー教師セットアップが完了したら、実際に動いているかを確認しましょう。確認方法はシンプルで、Claude Codeに自然言語でLSPが使いそうな質問をすれば大丈夫です。
室谷たとえばこんな感じです。TypeScriptのプロジェクトで「
動いていなければ「ファイルを検索してみます...」という感じで時間がかかるグレップ処理が走ります。
handleRequest 関数の定義に移動して」と聞いたとき、LSPが動いていれば「src/server.ts の42行目にあります」と即座に返ってきます。動いていなければ「ファイルを検索してみます...」という感じで時間がかかるグレップ処理が走ります。
テキトー教師もう少し正確に確認したい場合は、
/plugin コマンドで確認できます。/plugin
室谷このコマンドでプラグイン管理UIが開いて、インストール済みのプラグイン一覧と、エラーがあれば「Errors」タブに表示されます。「Errors」タブに何も出ていなければOKです。
テキトー教師エラーが出ている場合の定番パターンが「Executable not found in $PATH」で、これはバイナリが見つからないということです。さっきの言語サーバーのインストールをやり直してください。
LSP動作確認のチェックリスト
以下の順番でチェックしていくと問題の特定がしやすくなります。
ENABLE_LSP_TOOL=1が設定されているか(settings.jsonまたは環境変数)- Claude Codeを再起動したか
- プラグインが「Installed」タブに表示されているか(
/pluginで確認) - 「Errors」タブにエラーが出ていないか
- 言語サーバーのバイナリがPATHに入っているか(
which pyright等で確認)
室谷5番が特に見落とされがちですね。バイナリが入っていても、シェルのプロファイルを再読み込みしていないとPATHが反映されていないことがあります。
.zshrc に追加したなら source ~/.zshrc も忘れずに。よくあるエラーと対処法

「No LSP server available for file type」
テキトー教師このエラーが出るときのチェックポイントは3つです。
室谷1つ目は「そもそもその言語のプラグインをインストールしているか」ですね。プラグインなしでLSP機能を使おうとするとこのエラーになります。
テキトー教師2つ目が「プラグインのファイル拡張子マッピングに対応しているか」。たとえばPythonのpyrightプラグインは
.py と .pyi に対応していますが、それ以外のPythonファイルがある場合は設定が必要になることがあります。
室谷3つ目がインストール後の再起動未実施です。さっきも言いましたが、これが一番多い原因ですw。
テキトー教師対処法は、まず
/plugin でインストール済みを確認して、なければインストール、あれば再起動という順番です。LSPプラグインが入っているのに動かない
室谷このパターンで多いのが、プラグインのキャッシュ問題です。以下のコマンドでプラグインキャッシュを削除して再インストールすると解決することがあります。
rm -rf ~/.claude/plugins/cache
テキトー教師その後Claude Codeを再起動して、プラグインを
/plugin install でインストールし直せばOKです。
室谷GitHubのIssue #15619でも報告されていましたが、「公式プラグインのplugin.jsonに認識されないキーが含まれていてバリデーションエラーになる」問題があって、その場合はキャッシュ内のplugin.jsonを手動で修正する必要があることがあります。コミュニティのissueを追っておくのがいいですね。
テキトー教師で「lsp」で検索すると最新の既知の問題が確認できます。
TypeScriptのLSPでエラーが多発する
室谷TypeScript/JavaScriptで
vtsls を使う場合、TypeScript本体もインストールが必要です。これを忘れると型解析が動かないんですよね。npm install -g @vtsls/language-server typescript
テキトー教師typescript がなければ vtsls は起動しても型チェックができないので、vtsls だけ入れても不完全です。セットでインストールしてください。LSPのオペレーション活用例:実践的な使い方
室谷セットアップが完了したら、実際にどう活用するかを見ていきましょう。LSPの各オペレーションをClaude Codeにどう指示するか、具体的なプロンプト例を紹介します。
テキトー教師大事なのは「Claude Codeに自然言語で依頼すれば、LLMが自動的にLSPオペレーションを選んで使ってくれる」という点ですね。こっちが「goToDefinitionを使ってください」と明示する必要はほとんどないです。
コードナビゲーション
室谷一番使うのがやはり定義への移動と参照検索です。
プロンプト例(定義に移動):
「
UserServiceクラスがどこで定義されているか教えて。そのソースコードも見せて。」
プロンプト例(参照を探す):
「
processPayment関数が何箇所で呼ばれているか調べて。それぞれの呼び出し元も教えて。」
テキトー教師「この関数を削除/変更しても安全か確認して」という依頼でもLSPのfindReferencesが活用されます。受講生さんに「リファクタリング前の影響範囲チェックに使ってみて」とよく言うんですが、これが特に効果的です。
リファクタリング支援
室谷大規模なリファクタリングでLSPの真価が発揮されます。
プロンプト例(影響範囲の事前調査):
「
LegacyAuthServiceクラスを削除したい。コールハイアラーキーを調べて、削除前に修正が必要な箇所を全てリストアップして。」
テキトー教師これをテキスト検索でやろうとすると、「同名の文字列が含まれるコメントも全部引っかかる」「型の参照なのか値の参照なのか区別できない」という問題があります。LSPなら「コードとして意味のある参照」だけ正確に取得できます。
室谷MYUUUのプロジェクトでこういうケースがあって、テキスト検索だと47件ヒットしていたのが、LSPの
findReferences だと23件が実際の参照で、残りはコメントや文字列だったということがありました。半分ノイズだったわけで・・・正確な情報で作業できるかどうかは全然違います。型エラーのデバッグ
テキトー教師diagnostics オペレーションも地味に強力で、「今のファイルに型エラーはある?」と聞くだけで、IDEと同じリアルタイム診断が返ってきます。
室谷これ、Claude Codeにコードを書かせた直後に「型エラーないか確認して」と続けると、書いてすぐ検証サイクルが回るんですよね。LSPなしだとこれができなくて、別途TypeScriptコンパイラを手動実行する必要があって面倒でした。
プロンプト例(型チェック):
「
src/api/handlers.tsに型エラーがないか確認して。あれば修正して。」
LSPプラグインの設定をカスタマイズする:.lsp.jsonの書き方
テキトー教師公式マーケットプレイスやコミュニティマーケットプレイスにない言語でLSPを使いたい場合や、既存の設定をカスタマイズしたい場合は、
.lsp.json を自分で書くことができます。
室谷構造はシンプルで、言語サーバー名をキーにして設定を書くだけです。
{
"go": {
"command": "gopls",
"args": ["serve"],
"extensionToLanguage": {
".go": "go"
},
"transport": "stdio",
"startupTimeout": 60000,
"shutdownTimeout": 15000,
"maxRestarts": 3
}
}
テキトー教師設定のフィールドを整理するとこうなります。
| フィールド | 必須 | 説明 |
|---|---|---|
| command | 必須 | 実行するLSPバイナリ(PATHに入っている必要がある) |
| extensionToLanguage | 必須 | ファイル拡張子と言語IDのマッピング |
| args | 任意 | コマンドライン引数(通常は ["--stdio"]) |
| transport | 任意 | 通信方式(stdio がデフォルト) |
| env | 任意 | 言語サーバー起動時の環境変数 |
| initializationOptions | 任意 | LSP初期化時のオプション |
| settings | 任意 | workspace/didChangeConfiguration で渡す設定 |
| startupTimeout | 任意 | 起動タイムアウト(ミリ秒) |
| shutdownTimeout | 任意 | 終了タイムアウト(ミリ秒) |
| maxRestarts | 任意 | クラッシュ時の最大再起動回数(デフォルト: 3) |
室谷この
.lsp.json はどこに置くかが大事で、プラグインを作る場合はプラグインルートに置きます。プロジェクトスコープで使いたいなら .claude/.lsp.json に置けばOKです。
テキトー教師複数の言語サーバーを1つの
.lsp.json に定義することもできます。たとえば vscode-langservers はHTMLとCSSの両方をカバーしていて、1ファイルで2つのサーバーを設定できます。LSPと他のClaude Code機能の組み合わせ
室谷LSPは単体でも強力ですが、他の機能と組み合わせるとさらに活用できます。特にサブエージェントと組み合わせるのが面白くて・・・
テキトー教師あ、これわかります。コードベース全体を複数エージェントで並列解析する場合、各エージェントがLSPを使ってシンボルを正確に追えるので、結果の精度が上がりますよね。
室谷MYUUUでやったのが「大規模なAPIリファクタリングを3つのエージェントで並列で進めて、それぞれのエージェントがLSPで影響範囲を確認しながら作業する」というパターンです。これは独断でやらないようにしながら、確認してから進める感じで・・・LSPの精度があってこそできる使い方でした。
テキトー教師HooksとLSPの組み合わせも実践的です。ファイルを保存するたびに自動でLSPのdiagnosticsを実行して、型エラーがあれば通知するHookを設定しておくと、開発サイクルがかなり締まりますよね。
室谷そこまで組み合わせると、本格的なIDEに近い体験になってきますよね。「ターミナルで完結するIDEレベルの開発環境」って感じで、これがLSPサポートを入れたAnthropicの狙いなんだと思います。
Claude CodeのLSP対応状況:VSコードとの比較
テキトー教師現実的な話もしておきましょう。Claude CodeのLSPは強力ですが、VS CodeのネイティブなLSP実装と比べると、対応言語数でまだ差があります。
室谷整理するとこういう状況ですね。
| 項目 | Claude Code LSP | VS Code LSP |
|---|---|---|
| 対応言語数(公式) | Python、TypeScript、Rust等(少数) | 100以上 |
| 対応言語数(コミュニティ) | 25言語以上(Piebald-AI) | 数千以上 |
| セットアップ | 中程度(3ステップ) | 低(拡張機能1クリック) |
| AI連携 | ネイティブ | 拡張機能経由 |
| コンテキスト窓 | 20万トークン以上 | N/A |
| 使用シーン | ターミナルネイティブ、大規模コード解析 | GUI、日常開発 |
テキトー教師これを見て「VS Codeでいいじゃないか」と思う人もいるかもしれないですけど、用途が違うんですよね。Claude Codeは「AIと一緒にコードを読んで、大きな変更を安全にやる」ための道具で、VS Codeは「自分でコードを書く」ための道具です。
室谷そこが本質なんですよね。LSPサポートは「AIが正確にコードを理解できるようにするための機能」であって、「エディタの代わりになるための機能」ではない。
20万トークンのコンテキストの中でAIがLSPを使ってナビゲーションするという体験は、VS Codeには再現できないんですよ。
20万トークンのコンテキストの中でAIがLSPを使ってナビゲーションするという体験は、VS Codeには再現できないんですよ。
テキトー教師Cursor等の「AIエディタ」との比較も面白いですよね。CursorはGUIで使いやすいですが、Claude Codeはターミナルネイティブで、大規模なコードベース解析や自動化・CI/CD連携では有利な面があります。
よくある質問(FAQ)
室谷ここまでの内容を踏まえて、よくある質問にまとめて答えておきましょう。
テキトー教師コミュニティや講座でよく出る質問を中心にいきます。
室谷「LSPプラグインは有料ですか?」という質問がまず多いですね。これは無料です。
Claude CodeのプラグインシステムもLSPプラグインも無料で使えます。LSP機能自体を使うにはClaude Codeのプランが必要ですが、それはLSPに関係なく必要なものです。
Claude CodeのプラグインシステムもLSPプラグインも無料で使えます。LSP機能自体を使うにはClaude Codeのプランが必要ですが、それはLSPに関係なく必要なものです。
テキトー教師「どのLSPプラグインをまず入れればいいですか?」という質問には、メインで使っている言語のものから入れましょうと答えています。TypeScriptを書くなら
vtsls、Pythonなら pyright から始めるのが定石です。
室谷「LSPを有効にすると遅くなりませんか?」という心配もわかります。言語サーバーはバックグラウンドで動くので、起動時に少し時間がかかりますが、一度起動してしまえば以降の操作は高速です。
テキスト検索より圧倒的に速くなるケースが多いです。
テキスト検索より圧倒的に速くなるケースが多いです。
テキトー教師「複数の言語プラグインを同時に入れても大丈夫ですか?」という質問には、はい大丈夫ですと答えられます。ただし各言語サーバーがメモリを使うので、あまり多く入れすぎるとメモリ消費が大きくなる可能性はあります。
実際に使う言語のものだけ入れるのが現実的です。
実際に使う言語のものだけ入れるのが現実的です。
室谷「Windowsでも動きますか?」も多い質問ですね。
Windows環境では、WSL2(Windows Subsystem for Linux)を使ってLinux上でClaude Codeを動かすのが推奨される方法です。ネイティブWindowsでも動きますが、一部の言語サーバーはLinux/macOSでの動作が安定していることが多いです。
claude code lsp windows というKWもボリュームがありました。Windows環境では、WSL2(Windows Subsystem for Linux)を使ってLinux上でClaude Codeを動かすのが推奨される方法です。ネイティブWindowsでも動きますが、一部の言語サーバーはLinux/macOSでの動作が安定していることが多いです。
テキトー教師「LSPとMCPは何が違うの?」という質問も最近増えてきました。MCPはClaude Codeが外部のツールやデータソースと連携するための仕組みで、LSPはコード編集のための言語インテリジェンスを提供する仕組みです。
目的が違うので、両方設定して使うものです。
目的が違うので、両方設定して使うものです。
室谷「Serena LSPって何?」という質問も来ることがあって・・・
Piebald-AIのマーケットプレイスと競合する位置づけで、それぞれ独自のアプローチで言語サポートを提供しています。
claude code lsp vs serena というKWもありましたね。Serenaは別のLSPサーバー実装で、Claude Codeで使うためのサードパーティツールです。Piebald-AIのマーケットプレイスと競合する位置づけで、それぞれ独自のアプローチで言語サポートを提供しています。
まとめ:Claude CodeのLSPで開発体験を大きく変える
テキトー教師今回のポイントをまとめると、LSPを有効にすることでコードナビゲーションが900倍以上速くなり、意味的に正確な参照検索ができるようになります。設定は3ステップで完了します。
室谷1️つ目は
3つ目は使いたい言語のプラグインと言語サーバーのバイナリをインストールすること。この順番でやれば大体うまくいきます。
ENABLE_LSP_TOOL=1 をsettings.jsonのenvに設定すること。2つ目はマーケットプレイス(公式 or Piebald-AI)を追加すること。3つ目は使いたい言語のプラグインと言語サーバーのバイナリをインストールすること。この順番でやれば大体うまくいきます。
テキトー教師「大規模なコードベースでClaude Codeを使っていて、動作が遅い」と感じているなら、まずLSPを試してみてください。特にTypeScript、Python、Rust、Goを使っているプロジェクトでは即効性があります。
室谷.AI(ドットエーアイ)コミュニティでも「LSP入れてから全然違う」という声が多くて、これは体験してみないとわからない部分もあるんですよね。セットアップ自体は30分もあれば完了するので、ぜひ試してみてください。
