OpenCode: OpenCode LSP Integration

最終更新:2026-08-31

--- title: OpenCode LSPサーバー設定 description: LSPサーバーを設定してIDEレベルのコード分析機能を取得する order: 16 lang: ja

LSP(Language Server Protocol)により、OpenCodeはIDEレベルのコード分析機能を獲得します。

1. 学習内容


2. LSPとは

LSPはコード補完、定義ジャンプ、参照検索、シンボル名変更、診断情報、ホバー情報を提供。


3. OpenCodeでLSPを有効化

BASH
export OPENCODE_EXPERIMENTAL_LSP_TOOL=true

opencode.jsonで設定:

JSON
{
  "lsp": {
    "typescript": {
      "command": "typescript-language-server",
      "args": ["--stdio"]
    },
    "python": {
      "command": "pylsp",
      "args": []
    }
  }
}

4. 主要言語サーバー

言語 サーバー インストール
TypeScript/JS typescript-language-server npm i -g typescript-language-server typescript
Python pylsp / pyright pip install python-lsp-server / npm i -g pyright
Go gopls go install golang.org/x/tools/gopls@latest
Rust rust-analyzer rustup component add rust-analyzer
C/C++ clangd システムパッケージマネージャー

5. 使用方法

有効化後、AIはLSPツールで精密な分析を実行:

TEXT 📖 参照専用
auth関数のすべての参照を見つけて

❓ FAQ

Q LSPは必須ですか?
A いいえ。LSPなしでもOpenCodeはファイル読み取りと検索でコード分析可能。LSPはより精密な分析(定義ジャンプ、参照検索)を追加する拡張機能。
Q LSPサーバーの起動が遅い場合?
A 大規模プロジェクトは初回起動時にインデックスが必要。LSPサーバーを事前に起動しておけば、OpenCodeは既存のインスタンスを再利用。

📖 まとめ


📝 練習問題

  1. 基本問題:主要プログラミング言語のLSPサーバーをインストールしてください。

  2. 応用問題:opencode.jsonでLSPを設定し、定義ジャンプと参照検索を使用可能にしてください。

  3. チャレンジ問題:LSPの有無でOpenCodeのコード分析精度を比較してください。

Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%