Piコーディングエージェントの使い方
この記事では、最小限の設計哲学を持つAIコーディングエージェントPiを紹介します。コア機能のみを提供し、拡張ポイントを介してカスタマイズできる点が特徴です。インストール方法、認証、カスタム拡張の作成方法を解説し、実際の使用における利点を評価します。
Piは、Mario Zechnerによって開発されたAIコーディングエージェントで、その核心理念はほとんどの競合とは正反対です。可能な限り多くの機能を内蔵するのではなく、最小限のコアから始め、拡張ポイントを通じてユーザーが必要に応じて機能を追加できるようにします。Zechnerは2025年11月の記事で、主流のコーディングアシスタントがユーザーに見えないコンテキストを注入し、リリースごとに動作を変更し、モデルが実際に受け取る内容の可視性が低いと批判しました。そのため、彼はPi、つまり拡張ポイントに囲まれた小さなコアループを構築しました。このプロジェクトは急速に注目を集め、FlaskとJinja2の作成者であるArmin Ronacherが2026年1月にPiを公に支持し、その後彼の会社Earendil Inc.がプロジェクトを買収し、クラウドプラットフォームLefosを立ち上げました。買収に伴い、PiのコアがMITライセンスを維持しつつ、有料層とホステッドサービスの余地を残すガバナンス文書RFC 0015が公開されました。本稿執筆時点で、PiのGitHubリポジトリは70,000スターを超えています。
Piの内蔵ツールセットはわずか4つ:read、write、edit、bashです。pi --helpを実行すると確認できます。他のエージェントがネイティブに提供する機能は、Piではユーザーが追加するものとされています。MCPサポート、サブエージェント、プランモード、権限確認ポップアップ、内蔵のTODO追跡、バックグラウンドbash実行はありません。理由はトークンコストにあります。他のエージェントのデフォルトシステムプロンプトは7,000〜10,000トークンですが、Piのシステムプロンプトは1,000トークン未満で、ユーザー自身のAGENTS.mdファイルのみを注入します。前提として、フロンティアモデルはすでにエージェントタスクについて強化学習で訓練されており、プロンプトが小さいほどモデルは実際の作業により多くのコンテキスト予算を使えるというものです。
Piのインストールは単一のコマンドで完了します。npmパッケージとして提供され、推奨される方法はnpm install -g --ignore-scripts @earendil-works/pi-coding-agentです。macOS/Linuxではスタンドアロンインストールスクリプトも利用できます。クリーンな環境でnpmコマンドを実行したところ、約11秒で完了し、131パッケージがインストールされ、pi --versionが0.80.3を返しました。認証には2つの方法があります。プロバイダがサポートしていれば、Piセッション内で/loginを実行してOAuthフローを開始できます。そうでなければ、起動前に環境変数(export ANTHROPIC_API_KEY=sk-ant-your-key-hereなど)を設定します。セッションを開始するには、cd your-project-directory && piと入力します。セッション中は/modelでプロバイダを切り替え、Ctrl+Pでお気に入りを循環できます。PiはAnthropic、OpenAI、Google、Ollamaなど15以上のプロバイダをサポートしています。
Piには権限確認が組み込まれていないため、ユーザーは自分でTypeScript拡張を構築できます。記事では実際の拡張を示しています。pi.on("tool_call")フックを使用してbashコマンドをインターセプトし、rm -rf、sudo、git push --forceなどのリスクの高い操作をチェックし、ctx.ui.confirmで確認を求め、{ block: true, reason: ... }を返して実行をブロックします。拡張ではpi.registerToolでカスタムツール(例:count_words)を追加することもでき、TypeBoxスキーマで入力を検証します。pi.registerCommandでスラッシュコマンドも追加可能です。テストはpi -e ./permission-gate.ts --list-models anthropicで実行でき、実際のPiバイナリでエラーなく動作しました。
実際の使用では、Piのミニマリズムが特に3つの点で有用です。まずセッションツリー:/treeコマンドで任意の時点から分岐でき、元のスレッドを失うことなく別のアプローチを試せます。次にマルチプロバイダ切り替え:主要なAPIとローカル推論をサポート。第三に拡張の制御性:ユーザー自身の脅威モデルに合わせて権限処理を構築できます。Piのドキュメントは拡張APIを詳細に説明しており、内蔵機能にないほぼすべてのものを構築できます。