Pi Agent コアコンセプト

Pi Agent を正式に使用する前に、その中核概念と動作方法を理解しておくと、より早く使い始めることができます。


ひとことで言うと Pi Agent

Pi Agent はターミナルで動作する AI プログラミングアシスタントです。

起動するとチャットソフトのようなインターフェースが表示され、自然言語で要求を入力すると、AI がコードを読み取り、コマンドを実行し、ファイルを変更します。


4つの実行モード

Pi Agent は4つの実行モードをサポートしており、さまざまなシーンに対応します:

モードコマンド説明適用シーン
対話モードpi(デフォルト)ターミナル TUI インターフェースで、リアルタイム対話、すべての機能をサポート日常開発、対話型プログラミング
Print モードpi -p "プロンプト"一回限りのQ&Aで、結果を出力して終了スクリプト統合、クイック検索
JSON モードpi --mode jsonすべてのイベントを JSON 行で出力し、プログラム解析に適していますツールチェーン統合、データ分析
RPC モードpi --mode rpcstdin/stdout の JSONL プロトコルで統合プロセス間通信、エディタプラグイン

対話モードは直接起動して TUI インターフェースに入ります:

$ pi
Pi Agent 0.1.x  |  ~/projects/サンプル-demo
claude-sonnet-4  |  上下文 2%  |  $0.0000
>

Print モードは回答が終わると終了するので、スクリプトに組み込むのに適しています:

$ pi -p "总结这个项目"
这是一个 TypeScript 命令行工具,核心逻辑位于 src/ 目录,包含会话管理、工具调度和扩展加载三个模块。
Tokens: 1.2k 输入 / 320 输出  |  费用 $0.0081

JSON モードは各イベントを1行の JSON として出力し、プログラムで解析しやすくします:

$ pi --mode json -p "总结这个项目"
{"type":"session","id":"a1b2c3d4"}
{"type":"message_start","role":"assistant"}
{"type":"message_end","usage":{"input":1200,"output":320}}

RPC モードは stdin/stdout を介して JSONL メッセージを送受信し、エディタプラグインから呼び出せるようにします:

$ pi --mode rpc
{"id":1,"method":"prompt","params":{"message":"列出 src 目录"}}
{"id":1,"result":{"state":"idle","messages":2}}

初心者としては、ほとんどの時間を対話モードで作業することになります。

慣れてきたら、Print モードをスクリプト自動化に使用できます。


組み込みツール

Pi Agent は起動後、デフォルトで AI に以下の4つの組み込みツールを提供します。さらに grep、find、ls の3つの読み取り専用ツールをオプションで有効にできます:

ツール名機能例デフォルト状態
readファイル内容の読み取りAI が src/main.ts を読み取ってコードロジックを理解するデフォルトで有効
writeファイルの作成または上書きAI が新規ファイルを作成するか、ファイル全体を書き換えるデフォルトで有効
editファイル内の内容を正確に置換AI が関数内の特定の数行のコードを修正するデフォルトで有効
bashシェルコマンドの実行AI がテストの実行、依存関係のインストール、lint の実行を行うデフォルトで有効
grepファイル内のテキスト検索AI が特定の関数がどのファイルで呼び出されているかを検索するオプションで有効
findファイル名で検索AI が *.test.ts という名前のすべてのファイルを探すオプションで有効
lsディレクトリ内容の一覧表示AI がディレクトリ構造を確認してモジュールを特定するオプションで有効

3つの読み取り専用ツールは--toolsパラメータで手動に有効にします。例:pi --tools read,grep,find,ls。


拡張システム

Pi Agent は以下の5つの方法で機能を拡張します:

拡張方法ファイル形式用途難易度
Extensions(拡張)TypeScript(.ts)カスタムツール、イベントリスナー、コマンド、UI コンポーネントを登録プログラミングが必要
Skills(スキル)Markdown(SKILL.md)専門分野のワークフロー指示とスクリプトを提供Markdown が書ければOK
Prompt Templates(プロンプトテンプレート)Markdown(.md)再利用可能なプロンプトで、パラメータをサポート最も簡単
Themes(テーマ)JSON(.json)ターミナルインターフェースの配色をカスタマイズ簡単
Packages(パッケージ)npm/git プロジェクト上記4種類のリソースをパッケージ化して共有必要に応じて

初心者としては、すべての拡張方法をすぐに理解する必要はありません。

まず基本的な使い方から始めて、ニーズが増えてきたら徐々に拡張システムを試してみてください。


ファイル読み込み順序

Pi Agent は起動時にプロジェクト指示ファイルを自動的に読み込み、AI の行動規範を取り決めることができます:

レベルパス適用範囲優先度
グローバル設定~/.pi/agent/AGENTS.mdすべてのプロジェクト最も低く、共通のベースラインとして
プロジェクト設定プロジェクトディレクトリおよび親ディレクトリ内の AGENTS.md または CLAUDE.md現在のプロジェクト最も高く、グローバル指示を上書き可能

プロジェクトレベルの設定は親ディレクトリから上に向かって走査して読み込まれ、最終的に現在のディレクトリの設定とマージされます。

以前 Claude Code を使用していた場合は、既存の CLAUDE.md ファイルをそのまま再利用できます。Pi Agent が自動的に認識して読み込みます。


セッションとブランチ

Pi Agent のセッションシステムは、最も特徴的な機能の1つです。

各会話は自動的にセッションファイルとして保存され、~/.pi/agent/sessions/に格納されます。

セッション内部はツリー構造です。任意の履歴ノードから新しい探索方向に「ブランチ」を作成でき、以前の会話を失うことはありません。

Pi Agent 会话树分叉结构示意

これは、さまざまな実装方法を試す必要がある場合に非常に便利です。各アイデアを独立して保持し、いつでも遡ることができます。

その他の拡張