AI にコードを書かせる道具は、いまや機能の多さより「毎日使って壊れないか」のほうが重要になってきています。今回取り上げるのは、長く Claude Code を使っていた開発者が、細かな不満の積み重ねから Pi に乗り換えたという話です。単なる乗り換え報告ではなく、AI コーディング支援ツールに何を求め、何にうんざりするのかがかなりはっきり出ています。製品の派手な機能追加が、必ずしも使い心地の改善につながらないことも見えてきます。
筆者は、Claude Code が Claude Pro のサブスクリプションで使えるようになってから長く愛用してきたと書いています。最初に触れたときは、週末の気まぐれな個人プロジェクトに対して、ひとつの prompt だけで雑多な Python コードを出してくることに興奮したそうです。数年後には、このサービスが新しいソフトウェア開発の流れを作った重要な存在として振り返られるはずだ、とも見ています。
それでも最終的に、筆者は Claude Code を主力の coding harness として使うのをやめ、Pi に移る決断をしました。きっかけは大きな一発ではなく、小さな不満の蓄積です。記事の中では、Anthropic がその決断の翌日に Claude Code の AGENTS.md 対応を発表したことにも触れていますが、筆者にとっては遅すぎたと感じられたようです。
不満の中心にあるのは、まず設定ファイルまわりです。Claude Code では CLAUDE.md があちこちの GitHub hobby repo に置かれる一方で、ユーザー側は AGENTS.md と CLAUDE.md の二つの形式の間でコピーや symlink を気にしなければならない。筆者はこれを、便利な宣伝にはなっても使う側には面倒が残る仕組みだと見ています。
次に、VSCode 連携の使い勝手です。筆者は Claude Code を VSCode の中で使っており、IDE と harness をつなぐことで、ファイル内の選択範囲を context に入れられる点を評価していました。ただし接続できるセッションは 1 つだけで、別タブで別作業を始めると、そちらは IDE の text selection を受け取れません。この不具合は 2025 年 12 月の時点まで遡って報告されているのに、別の無関係な bug の duplicate として閉じられたそうです。公式の VSCode GUI extension なら複数タブを開けるものの、built-in の slash command の半分が GUI では動かず、custom status line のサポートもなく、複数の subagent の出力が主チャットに時系列で混ざって読みにくいといいます。
さらに筆者は、Anthropic が品質や安定性よりも機能追加を急いでいるように見えるとも書いています。dynamic workflows、agent teams、ultrareviews などは enterprise customer がより多くの tokens を消費するには便利かもしれないが、自分には不要だという見方です。加えて、Claude Code は今年だけで 244 回も release され、その 4 分の 3 以上で system prompt か tool descriptions が変わったと指摘しています。こうした変更は、特に新しい指示がユーザーの prompt や repo の慣習とぶつかると、LLM の挙動を大きく変えてしまう。にもかかわらず、system prompt を 80% 削っても、Claude Code は Pi よりかなり多い overhead を抱えたままだと述べています。default の Bash tool の説明文が約 3,000 tokens もあり、その大半は git の使い方や GitHub で PR を開く手順だそうです。モデルはもともとそれらを知っているはずで、そこに長い説明は要らないというのが筆者の主張です。
最後に筆者は、Claude Code を嫌いになったわけではないと断っています。Anthropic が作ったものは本当に面白いし、最初にこの領域へ踏み込んだ難しさも理解している。それでも今は、Pi のほうが自分に合う。最初の数日は手直しが必要だったが、その後は安定して動き、最小限の設計と高いカスタマイズ性が気に入っているそうです。すでに自分用の extension をいくつか書いており、整えたら公開したいとも書いています。
この文章で面白いのは、筆者が Claude Code を切った理由が、派手な失敗ではなく、積み上がった「細かい嫌さ」だという点です。多くの製品レビューは、どこかの機能が壊れた、遅い、料金が高い、のような分かりやすい不満で終わります。でもここでは違う。設定の二重管理、IDE 連携の制約、GUI extension の中途半端さ、過剰な release 頻度、tool description の肥大化。どれも単体なら我慢できそうなのに、毎日触ると効いてくる。私はここに、AI コーディング支援の本当の競争軸が見えると思う。
とくに system prompt や tool description を頻繁にいじる話は、見逃しにくい論点です。モデル側の改善を積極的に回しているように見えても、利用者からすると「昨日まで安定していた挙動が、今日は少し違う」になりかねない。生成 AI の道具は、賢さそのものより、再現性のほうがずっと重要になる場面があるはずです。コード生成はその最たる例で、開発者は毎回ゼロから驚きたいわけではない。前と同じように振る舞い、前と同じルールを尊重し、必要なときだけ差分を出してくれることを望む。筆者が Pi の「安定」を評価しているのは、単に控えめだからではなく、開発の流れを乱さないからだと思います。
一方で、Anthropic 側の動きも一概に間違いとは言い切れません。企業向けの機能を増やし、複雑な作業を自動化しようとすれば、機能が増えるのは自然です。agent teams や ultrareviews は、特定の現場では役に立つのではないかとも思います。ただ、問題は「誰のための進化か」が曖昧になることです。筆者の不満は、個人開発者向けの素朴な使い方と、企業向けの厚い機能群が同じ製品の中で押し合いへし合いしているところにある。プロダクトの方向が定まらないと、利用者は自分の使い方に合わせて逃げ道を探すしかありません。
Pi が評価されているのも、単に新しいからではないでしょう。記事を読む限り、Pi は万能な後発製品というより、余計なものを削って、足りない部分は自分で足せる余地を残した道具です。これは open source harness の強みそのものです。必要な extension を自分で書けるなら、巨大な製品が全部を抱え込む必要はない。筆者が 20 分ほどで複数タブ対応の extension を作れたという記述は、その象徴です。大規模な製品が何ヶ月も抱えている不便さが、個人の工夫で案外すぐ解けることもある。だからこそ、重い製品を使い続ける理由は、機能数よりも日々の扱いやすさで決まるのだと思います。
もうひとつ気になったのは、筆者が Claude Code を「vision の弱い製品」と見ている点です。これは単なる辛口ではなく、プロダクト設計の話として重要です。新機能を思いつくエンジニアや PM の熱量は強い。でも、そこで「それは本当に全員に必要か」と止める役目が弱いと、便利さより摩擦が増える。AI ツールはとくに、内部の複雑さがそのまま外の使いにくさへ漏れやすい領域です。筆者の離脱は、Claude Code が悪いというより、成長のさせ方が人によってはもう耐えられなくなった、というサインに見えました。