JetBrains IDEとClaude Codeを連携させて擬似Clineにする
ClineはVSCode拡張なので、IntelliJやWebStormなどのJetBrains製品のエディタには対応していません。
JetBrains版のエージェントとも言えるJunieの登場も控えていますが、他のユーザーのレビューによると他ツールと同じ開発体験を実現するのは難しそうでしたClaude 3.7 Sonnetをモデルに指定して使うことは出来なさそうでした。コーディングタスク能力にかなり差があるのでClaudeを使いたいところです。[1]
そこでCLI(TUI)ベースのコーディングエージェントのClaude Codeの出番です。
MCPで2つを接続することによりエージェントからIDEで開いているファイルや選択範囲などを取得できるようにします。
JetBrains IDEはターミナルウィンドウを搭載しているので、その中でClaude Codeを実行します。
※完成図(一見Cline風)
セットアップ
※全体の構成
まずJetBrains IDEをMCP Serverに対応させるプラグインとして以下をインストールします(筆者はWebStorm)。
分かりづらいのですが、このプラグインがMCPサーバーというわけではなくMCPサーバーと通信できるようにするエディタ側の拡張機能です。
次にClaude Codeに追加するMCPサーバーとしてJetBrains MCP Proxy Serverを設定します。
これはMCPサーバーです。Claude Code(MCPクライアント機能を持つプログラム)→npx -y @jetbrains/mcp-proxy...
で起動するプロセスと標準出力で応答する、という関係です。
以下のコマンドで追加します。
❯ claude mcp add mcp-jetbrains -- npx -y @jetbrains/mcp-proxy
Added stdio MCP server mcp-jetbrains with command: npx -y @jetbrains/mcp-proxy to project config
正常に設定できると以下のようにリストされます。
❯ claude mcp list
mcp-jetbrains: npx -y @jetbrains/mcp-proxy
使ってみよう
ではWebStormを立ち上げコーディングをしてみましょう。Cline(むしろCursor)っぽくするためにターミナルを横に移動しましょうか。以下から操作できます。
ターミナル内でclaudeコマンドでClaude Codeを起動します。この時MCPサーバーに接続されます。
MCPサーバーの動作を確認するために何かファイルを開いて「今開いているファイルは何?」と聞いてみます。すると”mcp-jetbrains: get_open_in_editor_file_path”というツールを使ってよいか尋ねられます。”Yes, and don't ask again...”にしておくとこのツールの許可は以後自動になります。
テキスト選択をClaude Codeが検知できるかも試します。「この選択した部分を説明してほしい」と指示をしました。選択ツールを使ってくれます。ちなみに「選択した部分」を省略したら伝わりませんでした。ニホンゴ難しい。
個人的にはVSCodeベースのAIコーディングツールの一番気に入っているところは差分の表示→レビューが快適なところです。この部分は本ソリューションでどうなるでしょう? Claude CodeはデフォルトでDIFFをターミナルに色付きで出力します。それは生きていますね。
そしてJetBrainsは⌘+0
でGitのステージファイルの操作ビューが開けます。
これがある程度代替手段になりそうですが、ClineやCursorほどの柔軟性はない印象です。いっそSourceTreeなどの外部DIFFツールで開いてもいいかもしれません。試行錯誤中です。
おわりに
以上、JetBrains IDEと Claude Codeを利用したCline風コーディングエージェント環境を構築する方法を紹介しました。完全なClineと同等の開発者体験を再現するのは難しいですが、代替手段としてぜひ試してみてください。
そしてJetBrains IDE版Clineの開発に関心のある方は以下のディスカッションに参加してください(筆者はコメントしたところ作る方に関心がある人は少ないのかスルーされました)。
またこの方法の組み合わせは以下のように代替可能です
- Claude CodeのかわりにAiderやGooseを使う
- AiderはMCPに未対応
- Gooseは他社モデルも使える
- IDE組み込みターミナルではなくてiTerm2などを外部ウィンドウで並べる
- Claude Codeのタスクの通知を受信できる
追記
Firebenderというプラグインでも近い体験ができます。
-
現在はClaudeを使えるようです https://plugins.jetbrains.com/plugin/26104-jetbrains-junie-eap ↩︎
Discussion
普段、Riderを使っているので助かります。
Claude CodeはWindowsだとネイティブ非対応でWSLが必要なのですがmpc-jetbrainsのREADMEで解説されているCladue Desktopでも動いたのでGUIが好みならこっちが良さそうです。