Pi Agentの開発者が語る、アジェンティック・エンジニアリングの実践法
概要
Flaskの生みの親でPi agentを擁するArendelle創業者アーミン・ロナカーが、Pi agentがなぜミニマルな設計のままトップクラスの性能を出せているのか、そして自身の実際のエージェント開発ワークフローを語る。ハーネス設計の思想からローカル/クラウド運用の使い分け、業界全体の今後の課題まで幅広く議論している。
主なポイント
- Pi agentはツールを増やさず基本的にbashだけを与える設計で、CodexなどもRGコマンド呼び出しなど内部的にbash依存を強めており、これがコンテキスト効率の良いアプローチとして業界標準になりつつある
- 最新モデルでは「interleaved system messages」により、ツールを必要になった時点で読み込む(deferred tool loading)という新しいパターンが可能になっている
- Claude Codeはピーク時よりツール数を減らす方向に転換しており、OpenCode 2はプラグイン全面採用など「自己拡張可能なソフトウェア」がトレンド
- クローズドウェイトモデルのサーバーサイド圧縮(compaction)はセッションを可搬性のないものにしてしまい、エコシステムロックインの一因になっている
- エージェントの「中断・再開」を可能にする永続性(durability)や、ターミナルUIを離れて独自のUIを構築する仕組みは未解決の課題として残っている
- クラウド型コーディングエージェントは開発環境構築が不十分なことが多く、実例としてPostgresが実際には起動しておらずテストが常にモックアウトされていたケースを紹介
- 著者自身はいまだにローカルのMac/Linuxマシン(SSH/Tailscale経由)を主戦場にしており、GitHub Actionsで一部Pi実行を自動化する程度に留めている
- エージェントはネット上の学習データが豊富なLinux操作を特に得意とし、Rust・NixOS・Kafkaなど従来人間には複雑すぎた技術の採用が今後増えると予測
- AIコーディング普及の実効果については懐疑的で、企業のROI事例は乏しく、むしろ個人のサイドプロジェクトで顕著な成果が出ていると指摘
実践に使えること
- 複雑なツール体系より「bash一本槍」でエージェントに任せるミニマル設計を検討し、コンテキスト消費を抑える
- クラウドエージェント環境を使う際は、DB接続やテストが実際に動いているか(モックされていないか)を必ず確認する
- ローカルの開発環境が高速・安定している場合は、無理にクラウド移行せずTailscale等でリモートマシンに接続する運用も選択肢に入れる
- 長時間ジョブや複数エージェント運用を見据え、エージェントの中断・再開(durability)の仕組みを自前の運用フローに組み込むことを検討する
- Rust・NixOS・Kafkaなど「人間には複雑だがエージェントは得意」な技術スタックの採用を再検討する