Pi:四つの道具と短い指示だけで組んだターミナルのコーディングエージェント
要約
わざと小さく作られたターミナルのコーディングエージェント。道具は四つ、システムプロンプトは千トークン未満、残りはエージェント自身が書ける拡張の仕組みに任せる。計画モードも課題の一覧も道具のサーバーも内蔵せず、なぜ入れないのかをはっきり書いている。無料で公開。
おすすめ- ソフト名
- Pi
- バージョン
- 0.87.1
- 料金
- 無料
- オープンソース
- オープンソース
- OS
- macOSLinuxWindows
- 公式サイト
- https://pi.dev
- 更新日時
- 2026-10-06 12:09
コーディングエージェントはこの二年、育ち続けてきた。数週間ごとに何かが増える。サブエージェント、計画モード、権限の問い合わせ、背景のシェル、内蔵の課題一覧、外部ツールのサーバーの一式、特定のモデル向けに調整された指示の断片。どれも筋は通って聞こえる。それでも正直な試し方は簡単だ。その大半を切っても、仕事はちゃんと終わる。実際に使われ続けるのは、たいていファイルを読み、ファイルを書き換え、コマンドを走らせる三つである。
もう一つ、あまり語られないが忠実に効いてくる厄介さがある。多くのエージェントは黙って文脈に文字を差し込み、それを利用者に見せない。振る舞いが変わり、説明は「そのほうが賢くなる」というものだ。道具が何をしているかを知りたい技術者にとって、朝九時には調子よく回っていた流れが十時に崩れる理由は、ここにある。誰かが変更を求めたからではなく、新しい版が自分の指示の言い回しを変えたからだ。
Pi はこの二つを苦情ではなく設計の条件として扱う。道具は四つ、システムプロンプトは千トークン未満、そして「いかにも格好いい」もののほとんどを意図的に作らない。欠けている部分は、後からエージェント自身がスクリプト言語で書いた拡張で埋める。作者は公開の世界の古参で、よく知られたゲームの枠組みを書いた人である。2026 年の春に、広く使われている web の枠組みの作者が起こした公益の会社に引き取られ、以降きわめて大きな注目を集めている。

四つの道具と、一息で読める指示
道具の全体はこうだ。ファイルを読む、ファイルを書く、正確な文字列の置き換えでファイルを編集する、シェルのコマンドを実行する。これがこの作品の標準の姿である。モデルごとの断片を数えれば一万トークンを超えるのが普通のハーネスと比べると、違いは言葉の上ではない。ふだんの場合、仕事を始める前に文脈の窓の相当な部分がすでに使われている。
測った結果は原則より面白い。比べられるプログラミングの課題では、同じ仕事が同種のエージェントより一倍半から二倍速く終わる。百万行の保管庫での横並びの評価では、費用と通過率のほとんどの組み合わせで、よく知られた商用ハーネス二つを上回った。そして単なる挨拶でおよそ千百トークン、窓の千分の四に満たない。目立つ別のものは一万八千、七パーセントを使ってしまう。
端末の比較表でも上位五つに入り、同じ表の他の三つは作り込まれた商用製品だった。「ほとんど何もない」道具が「何でもある」道具を負かしたことは、作者の見立てを裏づける。model はすでに大量のエージェントの仕事で訓練されており、コーディングのハーネスとは何かを知っている。大きな足場で思い出させる必要はない。
自分で自分を拡張できることが、本当の機能
「小さい」は切り捨てではない。何を機能と数えるかの定義が変わったのだ。四つの道具は床であり、より高い能力は拡張として積み上げる。部品を書けば、自分の道具を登録し、斜線の命令を足し、鍵盤の割り当てを広げ、出来事を受け取り、端末の画面を自分で並べられる。五十余りの例が添えられており、サブエージェント、計画モード、権限の関門、経路の保護、遠隔の実行、砂箱、外部ツールの取り込み、独自の編集画面、状態の行、重ね表示までを覆う。
さらに面白い半分は、自分で書かなくてよいことだ。データベース照会の道具が欲しいと言えば、シェルでスクリプトを走らせる形で書いてくれる。小さな表示の部品が欲しいと言えば、その部品を書く。読み込み直せば、新しい能力がその場で効く。道具の限界は提供元の予定表ではなく、自分の流れが決める。拡張は班や公開向けにまとめられる。すでに言語サーバーの支援を足した分かれや、端末の中で丸ごとゲームが動く拡張も現れている。

四つの入口、利用者の種類ごとに一つ
対話のモードは、端末の画面一式、差分の描画、新しい鍵盤の取り決め、行内の画像、押せる参照を備える。一度だけのモードは、問いを一つ受け取り、答えて終わり、機械が読める出来事の流れを出すので、管や自動化に向く。標準の入出力で小さな取り決めを話すモードは、スクリプトの実行環境がない場所に組み込むためのもの。そして関数の形で組み込むモードがあり、少なくとも一つの多プラットフォームの助手はそうやって作られている。
model の対応は広く、しかも重くない。十数の提供元と数百の model、会話の途中で切り替えでき、独自の提供元と model は設定の文書か拡張で足せる。
口を挟む二つのやり方には触れておきたい。閉じた箱の感じに直接効くからだ。決定の鍵を押すと即座に導く。いま走っている道具の呼び出しを打ち切り、新しい指示を文脈に入れる。別の組み合わせは順番待ちで、その回が終わってから扱う。流れを壊さずに方向を変えられ、どちらを使ったかも分かる。
意図的に作らなかったものの一覧
この作品は「作らなかったこと」の頁を残している。珍しく、役に立つ正直さだ。外部ツールのサーバーは付けない。よく使われる閲覧の自動化サーバーは、二十一の道具の定義を一度に文脈へ流し込み、一万三千を超えるトークン、窓の七から九パーセントを、仕事が始まる前に使ってしまう。代わりにエージェントは必要な説明を自分で読み、命令の行の道具を呼ぶ。使った分だけトークンを払う。
計画モードも入れない。計画は素の文書に書き、エージェントが読み、直し、引用でき、コードと一緒に版で管理する。課題の一覧も入れない。その種の一覧は model を集中させるより迷わせる回数のほうが多い、という判断だ。背景のシェルも入れない。端末の多重化の道具がすでにその仕事をし、しかもすべて観察できるからだ。サブエージェントも入れない。同じエージェントの二つ目を別の区画で走らせるほうが、隠れた委任より見える。
いずれも拡張の仕組みで取り戻せる。そこが要点である。中核は薄いままで、肝心の能力は一つも失わない。作者自身のまとめはこうだ。追加を作り出す機械をこしらえ、自分はというとわざと質素な部屋に住んでいる、と。
だれに向くか
機能が使い道より速く育つ道具に疲れた人、あるいは提供元の予定表ではなく自分の流れに道具の形を決めてほしい人にとって、いま真面目に触る価値のある端末のコーディングエージェントである。機能が一つ足りないのではなく、前提が違う。代価は、一時間かけて拡張を書く気になること、あるいはエージェントに書かせることだ。ここでの最小は工学の姿勢であり、雑な製品の言い訳ではない。