2025-03-14: IntelliJエージェントはよ、MCPブーム、Clineで遊ぶ、PythonからRustへ翻訳

IntelliJでコーディングエージェントを駆使したい

私はもうJetBrains IDEをメインにしていないのですが、PHPにかんしてはやはりVSCodeよりPHPStormに一日の長があり、IntelliJに返り咲けるチャンスを伺っているわけです。

今まではGooseのJetBrains MCP拡張を入れて試していたのですが、こいつはCline以上の暴れ馬ですべてを焼き尽くしてしまうので、人には勧めづらかった。

そこでClaude Codeがリリースされました。これは順当に良さそうで、MCPに対応していたので、Gooseのように連携できるなと睨みました。

検証結果をZennに投稿。この環境でしばらく過ごしてないのでまだなんとも言えないのですが、同士は試してみてほしい。

JetBrains IDEとClaude Codeを連携させて擬似Clineにする

その翌日、なんとなくHackerNewsを徘徊していて発見したのがFirebender。これはブログの記事にしました。Androidアプリを作って操作させてみたところ、最低限の期待は上回るできだったので、今後も引き続き使ってゆきたい。

Firebender: ついに登場したIntelliJプラグイン版コーディングエージェント
迷えるJetBrainsユーザー向けの朗報、VSCode偏重だったコーディングエージェント界に一石を投じる。 Firebenderとは FirebenderはAndroid Studio向けのAIコーディングアシスタント。Y Combinatorから出資を受けたスタートアップで、KevinとAmanの二人を中心に開発されている。 Firebender - Most powerful AI assistant in Android StudioWrite code 10x faster with Firebender, the most powerful AI assistant for Android Studio. コード補完、チャット、エージェントによる自律的なコーディングタスクの機能を持っている。2024年のリリース当初は「Android Studioに特化したGitHub Copilotより高速なコード補完」として開発されていたが、2025年になってCursorやCopilot Editsのようなエージェント機能を搭載してアップデートされた。 IntelliJプラグ

世間は空前のMCPブーム

いつの間にか日米タイムラインでみんなMCPサーバー活用の話を熱心にしていた。何がきっかけなのか未だに不明だけど、1月に私がMCPの話をしていた時の周りの引きの弱さからすると感慨深い。なんか推し技術が巣立っていった感傷がある。

私自身はMCP活用はアーリーアダプタたちのようにはうまくできてなくて、前述のGooseやDiveで遊んだり、自作コーディングエージェントの裏側にしていたり、Claude Codeなどの対応ツールのコードを読んだりする程度です。

anthropic-ai/claude-codeを読む
laisoさんのスクラップ

Clineで遊ぶ

私にとってClineは実コーディングというより中身を読んで遊ぶおもちゃという感じなんですけど、今週も色々試しました。

まずClineのWebサービスがはじまっていたのでサインアップして課金しました。これはOpenRouterのようなLLMのAPIを代理販売するサービスです。

次にClineが本当に内部Tree-Sitterツールを呼び出しているのか検証。定義してあるけど発動したことないToolナンバーワンなので気になっていました。結果、巨大なファイルをわざと読み込むように誘導したら使っていました。

ソースコードの文書解説では、Claude 3.7 Thinkingにしたら思いのほかそれっぽい文章を吐いてきたので、読みたい記事はもうこれで自給自足すればいいじゃんという気になりました。

外部にポストするなら周辺情報をもっと読みこんで書き直すことになるから、それは置き換えられないんですけど。

一旦Pythonを書いてからRustに清書する話

敬愛するMitsuhiko氏のブログを読んでた時に見かけた話です。出てきた話題を投稿したら広くシェアされました。エージェントがRustやTSの静的解析を延々と直し続けるループに思い当たることがみんなあるのか、共感している人が多かったです。私としてはRustもPythonもどっちもトップクラスに書ける人が言ってることに注目していました。

How I Use AI: Meet My Promptly Hired Model Intern
Due to popular request: my use of LLM explained.
Now it's not great at all languages. I find it performs exceptionally well at Python, somewhat okay at JavaScript and horrible at Rust. However, particularly if I wanna solve an algorithmic problem, I can often iterate in Python until I have what I want, then ask it to translate it to Rust. That's from my experience at least a decent way to get going quickly on some harder problems.
今、それはすべての言語で素晴らしいわけではありません。私はそれがPythonでは非常に優れており、JavaScriptではまあまあ、Rustではひどいと感じています。しかし、特にアルゴリズムの問題を解きたい場合、Pythonで繰り返し試して望むものを見つけた後、それをRustに翻訳するよう頼むことがよくあります。少なくとも私の経験からすると、それは難しい問題に素早く取り組むためのまずまずの方法です。

Subscribe to laiso

Sign up now to get access to the library of members-only issues.
Jamie Larson
Subscribe