はじめに
ターミナルで動く AI コーディングエージェントは、OpenCode(17万スター超)や Claude Code、Codex CLI など選択肢が増え続けています。そんな中、Mario Zechner が開発した Pi というコーディングエージェントが、逆張りの設計思想で注目を集めています。2026年4月に Mario は Flask や Jinja2 の作者として知られる Armin Ronacher らが参加する Earendil に加わり、Pi はその中核プロジェクトになりました1。Ronacher 自身も Pi を使って Pi を改善する「ドッグフーディング」の過程を自身のブログで発信しています。
Claude Code や Cline のシステムプロンプトは 7,000〜10,000 トークン規模になっていますが、Pi は システムプロンプトを 1,000 トークン未満に切り詰める ことを目標に設計されています2。標準ツールはわずか4つ。それ以外の機能は「必要になった時だけ」オンデマンドで読み込む仕組みです。
本記事では、実際に Pi をグローバルインストールし、CLI の中身を確認した手順をまとめます。
この記事で学べること
- Pi の最小主義な設計思想(4ツール+lazy skills)
- 実際にインストールしてヘルプ・組み込みツール一覧を確認する手順
- Claude Code など既存エージェントとの設計思想の違い
対象読者
- 複数の AI コーディングエージェントを比較検討している方
- システムプロンプトの肥大化・コンテキスト消費に課題を感じている方
前提環境
- Node.js: v18 以上(npm が使えること)
- OS: macOS / Linux(Windows は WSL 推奨)
TL;DR
- Pi は GitHub で 68.2k スター(2026年7月時点・2026年5月に Earendil 組織へ移管)を集める MIT ライセンスの OSS コーディングエージェント
- 標準ツールは
read/bash/edit/writeの4つのみ。grep/find/lsはデフォルトオフ - 「lazy skills」機構により、追加機能は説明文だけを常時コンテキストに置き、呼び出された時だけ全文をロードする
- Anthropic・OpenAI・Gemini・Bedrock など20以上のプロバイダに対応(マルチベンダー対応が最初から前提)
背景・課題
Claude Code や OpenCode のようなフル装備のコーディングエージェントは、MCP 対応・サブエージェント・Plan モード・ToDo 管理など機能が豊富な反面、システムプロンプトとツール定義だけで数千トークンを消費します。Tensorlake のベンチマーク記事によれば、この規模は 7,000〜10,000 トークンに達するとされています。
タスクが単純でも、毎回のリクエストでこの固定コストを払い続けることになります。Pi はここに疑問を投げかけ、「本当に必要なツールだけを常駐させ、それ以外はオンデマンドで拡張する」設計を選びました。
やったこと
ステップ1: インストール
npm でグローバルインストールします(--ignore-scripts はビルドスクリプトの実行を抑止するセキュリティ推奨オプション)。
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
pnpm / bun でも同様にインストールできます3。
pnpm add -g --ignore-scripts @earendil-works/pi-coding-agent
bun add -g --ignore-scripts @earendil-works/pi-coding-agent
筆者はローカル検証のため --prefix でインストール先を指定して実行しました。
npm install --ignore-scripts -g --prefix ./local @earendil-works/pi-coding-agent
./local/bin/pi --version
# => 0.80.3
ステップ2: ヘルプで全体像を確認する
pi --help
実行すると、4つの動作モード(インタラクティブ TUI / --print での非対話実行 / --mode rpc での標準入出力プロトコル / SDK 組み込み)と、--provider --model --thinking など多数のオプションが表示されます。筆者の実機確認では、ANTHROPIC_API_KEY OPENAI_API_KEY GEMINI_API_KEY AWS_BEARER_TOKEN_BEDROCK OPENROUTER_API_KEY など 20以上のプロバイダ に対応する環境変数がヘルプに列挙されていました(Azure・Cloudflare・Xiaomi のようにリージョン/デプロイ別の変数を含めると行数はさらに増えます)。特定ベンダーに縛られない設計が最初から前提になっていることがわかります。
ステップ3: 組み込みツールを確認する
pi --help の末尾には、組み込みツール一覧がそのまま表示されます。
Built-in Tool Names:
read - Read file contents
bash - Execute bash commands
edit - Edit files with find/replace
write - Write files (creates/overwrites)
grep - Search file contents (read-only, off by default)
find - Find files by glob pattern (read-only, off by default)
ls - List directory contents (read-only, off by default)
デフォルトで有効なのは read bash edit write の4つだけで、grep find ls はオフになっています。ツール定義もプロンプトのトークン消費源になるため、「使う可能性があるものを全部載せる」のではなく「本当に要るものだけ載せる」思想が徹底されています。
ステップ4: 拡張機能(skills)のインストール構文を確認する
pi install --help
Examples:
pi install npm:@foo/bar
pi install git:github.com/user/repo
pi install git:git@github.com:user/repo
pi install https://github.com/user/repo
pi install ./local/path
npm パッケージ・Git リポジトリ・ローカルパスのいずれからも拡張を追加できます。Pi のドキュメントでは、この拡張は「スキル」と呼ばれ、説明文だけを常時コンテキストに置き、/skill:name での呼び出しや自動検出があった時だけ全文とツールスキーマをロードする「lazy skills」という仕組みで実現されています2。プロンプトキャッシュを消費せずに機能を段階的に開示できるのが利点です。
ハマりポイント
ポイント1: デフォルトプロバイダは Google
--help の --provider オプションを見ると、デフォルトは google(Gemini)でした。Anthropic の Claude を使いたい場合は --provider anthropic --model <モデル名> を明示するか、ANTHROPIC_API_KEY を設定した上で /model コマンド(または Ctrl+L)でモデルを切り替える必要があります。
注意: 本記事の検証はインストールと CLI ヘルプの確認までに留めています。実際に LLM へリクエストを送るには、上記いずれかのプロバイダの API キーが別途必要です。
ポイント2: --ignore-scripts を外さない
README ではセキュリティ推奨として --ignore-scripts 付きのインストールコマンドが案内されています。npm パッケージの postinstall スクリプト実行を抑止するためのオプションで、サプライチェーン攻撃対策の一環と考えられます。省略せずに使うのが無難です。
まとめ
- Pi は「フル装備で足し算する」既存エージェントとは逆に、「4ツール+オンデマンド拡張」で引き算する設計のコーディングエージェント
- 実際にインストールして
--helpを見るだけでも、20以上のプロバイダ対応・4つの標準ツール・拡張インストール構文といった設計思想の輪郭がつかめる - システムプロンプトの肥大化に課題を感じている場合、比較対象として触ってみる価値がある
筆者は今回インストールと CLI 探索までに留めましたが、次は実際に API キーを設定してタスクを解かせ、Claude Code との体感差(応答速度・トークン消費量)を比較してみたいと思います。
参考リンク
- earendil-works/pi(GitHub) — 本体リポジトリ、スター数・ライセンス確認に使用
- Pi Coding Agent 公式サイト — インストールコマンド・CLIモードの説明
- Pi: a coding agent with efficient system prompting(Tensorlake) — システムプロンプトのトークン数比較の出典
- Building Pi With Pi(Armin Ronacher) — Mario ZechnerとEarendilの関係性の出典
-
Building Pi With Pi(Armin Ronacher, 2026)に「Pi is now part of Earendil, but in the important sense it is still Mario's project.」との記述あり ↩
-
Pi: a coding agent with efficient system prompting (2026年時点。Claude Code/Clineのシステムプロンプトが7,000〜10,000トークン規模、Piは1,000トークン未満とする比較) ↩ ↩2
-
Pi Coding Agent 公式サイト のインストール手順(npm/pnpm/bunの3方式を掲載) ↩