Pi Agent 紹介
Pi Agent(正式名称 Pi Coding Agent、以下 Pi と略します)は、ミニマルなターミナル AI プログラミングアシスタントであり、コマンドラインインターフェースでの自然言語による対話を通じて、コーディングタスクの完了を支援します。
Pi Agent は earendil-works チームによって開発されており、コアコードは簡潔に保ちつつ、拡張可能なプラグインシステムによってさまざまなワークフローをサポートしています。
Pi はターミナル内で動作する AI コーディングエージェントであり、Claude Code や OpenAI Codex CLI といったツールに似ています。
Pi の公式理念は次のとおりです:"There are many agent harnesses but this one is yours"(エージェントツールは数多くありますが、これはあなた自身のためのものです)。

Pi Agent とは
Pi Agent はターミナル(Terminal)内で動作するプログラミングアシスタントです。
プロジェクトディレクトリ内で起動し、自然言語で要件を説明すると、コードを読み取り、コマンドを実行し、ファイルを変更して、共同開発者のように動作します。
その中核となる設計原則は次のとおりです:コアは最小限に保つ、ワークフロー関連の機能は、コアに組み込むのではなく、Extensions(拡張)、Skills(スキル)、Prompt Templates(プロンプトテンプレート)、Themes(テーマ)を通じて実現します。
Pi Agent は意図的に、MCP、サブエージェント(sub-agent)、権限ポップアップ、Plan モード、To-Do(to-dos)、バックグラウンド Bash などの機能を内蔵していません。
これらのワークフローが必要な場合は、拡張機能やパッケージを通じてインストールできます。
Pi Agent と他のツールの違い
Pi Agent の位置づけは以下のツールと似ていますが、異なる点もあります:
| 比較項目 | Pi Agent | Claude Code | GitHub Copilot / Codex CLI |
|---|---|---|---|
| 実行方式 | ターミナル TUI | ターミナル TUI | ターミナル TUI |
| コアの規模 | ミニマル、MCP/サブエージェントなどの内蔵なし | 機能が豊富(Hook、MCP、サブエージェントなど) | 中程度 |
| 拡張方法 | TypeScript 拡張 + Skills + パッケージ | Hook + MCP サーバー + Skills | Skills + MCP |
| 対応 AI プロバイダー | 30+ プロバイダー(サブスクリプション + API キー) | Anthropic API が中心 | GitHub Copilot / OpenAI |
| セッション管理 | ツリー状ブランチ、fork/clone 対応 | リニア + ブランチ復元 | 基本的なセッション管理 |
| パッケージエコシステム | あり(npm/git 配布パッケージ) | 組み込みパッケージ管理なし | Skills リポジトリ |
| ローカルモデルサポート | 組み込みの llama.cpp サポート | 組み込みのクラウドプロバイダーが中心 | 組み込みのクラウドプロバイダーが中心 |
コア機能の概要
Pi Agent のコア機能は、実行モード、プロバイダー接続、組み込みツール、拡張システム、テーマカスタマイズを網羅しており、日常のターミナルプログラミング作業を十分にサポートします。
| 機能 | 説明 |
|---|---|
| マルチモード実行 | 対話モード、Print モード(-p)、JSON モード、RPC モード |
| 豊富な AI プロバイダー | Anthropic、OpenAI、Google Gemini、DeepSeek、Groq、xAI、Mistral など 30 以上のプロバイダーに対応 |
| 組み込みプログラミングツール | デフォルトで read(ファイル読み取り)、write(ファイル書き込み)、edit(ファイル編集)、bash(コマンド実行)の 4 つの組み込みツールが有効になっており、grep、find、ls は読み取り専用ツールとしてオプションで有効にできます |
| TypeScript 拡張 | カスタムツール、イベントフック、コマンド登録、UI インタラクション |
| Skills システム | Agent Skills 標準と互換性があり、必要に応じて専門的な機能をロード |
| ツリー状セッション | ブランチ、クローン、破棄ブランチのサマリーをサポートし、さまざまなアプローチを簡単に探索できます |
| プロンプトテンプレート | 再利用可能な Markdown プロンプトで、パラメータ置換に対応 |
| テーマカスタマイズ | 51 のカラートークン、ダーク/ライトテーマとカスタム配色に対応 |
| パッケージ管理 | npm/git を通じて拡張、スキル、テンプレート、テーマをインストールおよび共有 |
| ローカルモデル | 組み込みの llama.cpp ルーターサポートにより、ローカルモデルを直接管理可能 |
適用シーン
Pi Agent は以下のような使用シーンに適しています:
| シーン | 説明 |
|---|---|
| ターミナルでのコーディングタスク | ターミナル内でコード修正やエンジニアリングタスクを迅速に完了 |
| マルチモデル連携 | Ctrl+P で切り替えて、同じセッション内で複数の AI モデルを使用できます |
| カスタムツール拡張 | 開発チームが TypeScript で独自のツール、コマンド、UI コンポーネントを作成 |
| アプローチ探索 | セッションのツリー状ブランチを活用し、複数の実装アイデアを同時に保持 |
| 自動化タスク | コンテナやサンドボックス内で UI なしの自動化タスクを実行 |
| チーム共有設定 | パッケージシステムを通じてチーム間で拡張、スキル、テンプレート、テーマを共有 |
Pi Agent は開発者向けのツールであり、コマンドライン操作に精通していることを前提としています。
これまでターミナルでの作業経験がない場合は、先に基本的なシェル操作に慣れる時間を取ることをお勧めします。
設計哲学
Pi Agent の核心理念は次のとおりです:大きく網羅的なものではなく、組み合わせ可能な基本機能を提供する。
その開発者は、組み込み機能が多すぎるとツールが肥大化し、メンテナンスが困難になると考えています。
そのため Pi Agent はコアを最小限の実用範囲に限定し、残りの機能は拡張システムに任せています。
この設計の利点は次のとおりです:
| 利点 | 説明 |
|---|---|
| メンテナンスコストが低い | コアのコード量が少なく、理解と保守が容易 |
| 必要に応じてインストール | 本当に必要な機能だけをインストールでき、インターフェースをクリーンに保てる |
| 拡張のハードルが低い | TypeScript ファイル 1 つで実用的な拡張機能を作成できる |
| コミュニティ共創 | コミュニティは拡張パッケージを自由に貢献・共有できる |