
2026/02/25 6:53
**Pi – 最小限のターミナルコーディングハーネス** 高速開発とテストを直接コマンドラインから行える、軽量フレームワークです。
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Pi は軽量でターミナルベースのコーディングアシスタントで、コアは意図的に小さく保たれつつ、TypeScript モジュール・プロンプト・テーマ・スキルを通じて広範な拡張性を提供します。
4 つのモードで動作します:対話型 TUI、スクリプト用のプリント/JSON モード、RPC インターフェース(stdin/stdout 上の JSON)、SDK 統合(例:clawdbot サンプル)。
Pi は Anthropic、OpenAI、Google、Azure、Bedrock、Mistral、Groq、Cerebras、xAI、Hugging Face、Kimi For Coding、MiniMax、OpenRouter、Ollama など、15 社以上の AI プロバイダーをサポートし、API‑キーまたは OAuth 認証で接続します。
セッションはツリー構造化されており、ユーザーはでナビゲーションし、/treeで HTML にエクスポートしたり、GitHub gist URL を共有 (/export) できます。/share
コンテキストエンジニアリングが中心です:Pi は最小限のシステムプロンプトを使用し、とAGENTS.mdでプロジェクト単位のオーバーライドを許可し、古いメッセージを自動圧縮し、必要に応じてスキルパッケージをロードし、RAG や長期記憶などのダイナミック拡張をサポートします。SYSTEM.md
キューシステムはユーザーがエージェントを操作()したり、ツール処理中にフォローアップメッセージを送信(Enter)できるようにします。Alt+Enter
拡張機能は TypeScript モジュールとして書かれ、サブエージェント、プランモード、権限ゲート、SSH 実行、サンドボックス化、MCP 統合、カスタムエディタ、オーバーレイなどのプリミティブを提供します。50 以上の例パッケージが存在します。
Pi は MCP、サブエージェント、権限ポップアップ、プランモード、やることリスト、バックグラウンド Bash などのビルトイン機能を意図的に省略しており、これらは拡張機能またはサードパーティーパッケージで追加できます。
コンテキスト圧縮は拡張機能(トピックベースの要約、コード認識型要約、代替要約モデル)を通じて完全にカスタマイズ可能です。
プロンプトテンプレートはで展開される再利用可能な Markdown ファイルであり、スキルは指示とツールをオンデマンドでロードする機能パッケージを提供します。/name
Pi の哲学は、ワークフローを決定付けずに積極的な拡張性を重視し、ユーザーがエクステンション、スキル、プロンプト、パッケージをインストールまたは構築することでアシスタントを形成できるようにします。
本文
$ npm install -g @mariozechner/pi-coding-agent
About – Why pi?
- Pi は最小限のターミナルコーディングハーネスです。Pi をあなたのワークフローに合わせて調整してください、逆ではありません。
- TypeScript エクステンション、スキル、プロンプトテンプレート、テーマで拡張します。これらを pi パッケージとしてまとめ、npm や git 経由で共有できます。
- Pi は強力なデフォルト設定を備えていますが、サブエージェントやプランモードといった機能は省いています。Pi に「自分の望むもの」を構築させるか、自分の方法に合わせたパッケージをインストールしてください。
- 四つのモード:対話型、print/JSON、RPC、SDK。実際の統合例は clawdbot を参照してください。
- ドキュメントを読む。
Providers & Models – 15+ providers, hundreds of models
- Anthropic、OpenAI、Google、Azure、Bedrock、Mistral、Groq、Cerebras、xAI、Hugging Face、Kimi For Coding、MiniMax、OpenRouter、Ollama 等。
- API キーまたは OAuth で認証します。
や/model
でセッション中にモデルを切り替えられます。お気に入りのモデルはCtrl+L
でサイクルできます。Ctrl+P
またはエクステンション経由でカスタムプロバイダーとモデルを追加します。models.json
Sessions – Tree‑structured, shareable history
- セッションはツリー構造として保存されます。
を使って任意の過去ポイントへ移動し、そこから続けられます。すべての枝が一つのファイルに格納されます。/tree - メッセージタイプでフィルタリングしたり、ブックマークとしてラベル付けできます。
で HTML にエクスポート、または/export
で GitHub gist にアップロードし、レンダリング可能な共有 URL を取得します。/share
Context – Context engineering
- Pi の最小限のシステムプロンプトと拡張性により、本格的なコンテキストエンジニアリングが可能です。コンテキストウィンドウに何を入れるか、どのように管理するかを制御できます。
:起動時にAGENTS.md
、親ディレクトリ、および現在のディレクトリからロードされるプロジェクト指示書です。~/.pi/agent/
:デフォルトシステムプロンプトをプロジェクトごとに置き換えたり追加したりできます。SYSTEM.md- Compaction:コンテキスト上限に近づくと古いメッセージを自動要約します。拡張機能で完全カスタマイズ可能です—トピックベースの圧縮、コード認識サマリー、別モデル使用など。
- Skills:指示書とツールを備えた能力パッケージがオンデマンドでロードされます。プロンプトキャッシュを破壊せずに段階的開示。スキル参照。
- Prompt templates:Markdown ファイルとして再利用可能なプロンプト。
と入力すると展開します。プロンプトテンプレート参照。/name - Dynamic context:拡張機能が各ターン前にメッセージを注入したり、履歴をフィルタリングしたり、RAG を実装したり、長期記憶を構築したりできます。
Queuing – Steer or follow up
- エージェント作業中でもメッセージを送信できます。
はステアリングメッセージ(現在のツール後に配達され、残りのツールを中断します)。Enter
はフォローアップメッセージ(エージェントが終了するまで待ちます)。Alt+Enter
Extensions – Primitives, not features
- 他のエージェントが組み込む機能は自分で構築できます。拡張機能は TypeScript モジュールで、ツール、コマンド、キーボードショートカット、イベント、およびフル TUI へアクセスします。
- サブエージェント、プランモード、権限ゲート、パス保護、SSH 実行、サンドボックス化、MCP 統合、カスタムエディタ、ステータスバー、オーバーレイなど – すべて可能です。
- 作りたくない場合は pi に構築させるか、自分の方法で機能するパッケージをインストールします。50+ の例を参照。
Packages – Install and share
拡張、スキル、プロンプト、テーマをパッケージとしてまとめます。npm や git からインストール:
$ pi install npm:@foo/pi-tools $ pi install git:github.com/badlogic/pi-doom
または@1.2.3
でバージョン固定できます。@tag
で全て更新、pi update
で一覧表示、pi list
で設定変更。pi config- インストールせずにテストするには
を使用します。pi -e git:github.com/user/repo - npm や Discord でパッケージを探し、
キーワードで共有。pi-package
パッケージ一覧を見る。
Integration – Four modes
- Interactive:フル TUI エクスペリエンス。
- Print/JSON:スクリプト用に
、イベントストリームにはpi -p "query"
を使用。--mode json - RPC:非 Node 統合向けに stdin/stdout 上で JSON プロトコル。
参照。docs/rpc.md - SDK:アプリに pi を埋め込む。clawdbot の実例を参照。
Philosophy – What we didn’t build
- Pi は積極的に拡張可能であるため、ワークフローを決定付ける必要はありません。他のツールが組み込む機能は、エクステンション、スキル、またはサードパーティ pi パッケージから構築できます。これによりコアは最小限で保ちつつ、自分のやり方に合わせて Pi を形作れます。
- No MCP – README 付き CLI ツール(Skills 参照)を構築するか、MCP サポートを追加する拡張機能を開発します。理由は?
- No sub‑agents – tmux 経由で pi インスタンスを生成したり、自分でエクステンションを作成したり、パッケージをインストールして実現できます。
- No permission popups – コンテナ内で動かすか、環境とセキュリティ要件に合わせて拡張機能で確認フローを構築します。
- No plan mode – ファイルへ計画を書き出すか、エクステンションで実装するか、パッケージをインストールして利用します。
- No built‑in to‑dos –
を使用するか、拡張機能で独自に構築します。TODO.md - No background bash – tmux を使います。完全な可観測性と直接対話が可能です。
ブログ記事で全体の根拠を読む。