9月12日、Techstrong.aiが「AWS Open-Sources Pizza Bot, an Inbox for Background AI Agents」と題した記事を公開した。AWSがバックグラウンドで動作するAIエージェントの非同期タスク管理を実現するオープンソースアプリケーション「Pizza Bot」を公開したことについて詳しく紹介されている。
チャット型エージェントUIへのアンチテーゼ
AIエージェントのUIといえば、ターミナルやチャットウィンドウでエージェントの進捗をリアルタイム監視するスタイルが一般的だ。しかしそのモデルは、タスクが数分以上かかる場合や人間の承認待ちが発生する場合に破綻する。
AWSオープンソースブログの著者であるJoseph DolivoとIgor Filはこう指摘する。「ライブチャットは両者が同時に接続していることを前提とする。短いやり取りならそれで十分だが、タスクが数分かかったり、承認待ちが生じたり、ユーザーが離席中にスケジュール実行されるような場合には成立しない。」
Pizza Botはこの問題に対し、メール型インボックスというUIで応答する。エージェントにタスクを割り当てると、エージェントはバックグラウンドで独立して動作し、完了時または人間の判断が必要なタイミングで通知を返す。ユーザーは監視し続けなくてよい。
インボックスの構造と承認フロー
インボックスは3つのビューで構成される。
- All:スレッド履歴の全件表示
- Unread:ユーザーがまだ確認していない完了タスク
- Action:承認または回答を待って一時停止中のタスク
さらにActivityパネルでは、メインエージェントから委譲されたサブエージェント(スペシャリストエージェント)ごとのトランスクリプトやツール呼び出し履歴を確認できる。
承認フローの設計が特徴的だ。ツール呼び出しごとに承認ポリシーを設定でき、ユーザーが後から別のデバイスで応答するまでワークフローは永続的に一時停止したまま維持される。承認・却下だけでなく、提案されたアクションをユーザーが編集してから実行するinterruptOnポリシーも備える。
MCP(Model Context Protocol)サーバーはユーザーの権限で動作するため、AWSはMCPサーバーのインストールを暗黙の副作用ではなく明示的な判断として設計したと説明している。
アーキテクチャ:ローカルファースト、モデル非依存
Pizza Botはサーバー・クライアント構成を取る。サーバー側はNode.jsベースでエージェントを実行してHTTPで状態を提供し、クライアントはElectron製デスクトップアプリ、ブラウザ、ターミナルのいずれでも動作する。クライアント側のブラウザUIはReactで実装されており、エージェントとのやり取りはサーバーが一元管理する設計だ。サーバー側で状態を保持するため、ブラウザを閉じたりデバイスを切り替えてもエージェントの実行は継続される。
データはローカルフォルダにSQLiteデータベースと通常ファイルとして保存され、テレメトリは一切ない。対応モデルプロバイダーはAnthropic、Amazon Bedrock、Google Gemini、OpenAI、OpenRouter、およびOllamaによるローカルモデルと幅広い。エージェントオーケストレーション層にはAmazon Bedrock Agentsとの親和性が考慮されているものの、特定のAWSサービスへの依存はなく、上記プロバイダーであればローカル環境単体でも完結する。
起動方法は手動起動、Webhook、cronスケジュールの3通り。電源オフ中にスケジュールが飛んだ場合は、起動時に未実行のスケジュールを1回だけ実行する(全件リプレイはしない)設計だ。
Amazon社内での実績と、オープンソース版の課題
Pizza Botの前身はAmazon社内ツールで、2,000人以上の従業員がミーティング準備、フォローアップ、メール下書き、Slackサマリー、CRMログ記録、Webリサーチなどに利用していた。ただし、オープンソース版はゼロから再実装されており、Amazon内部システムと連携していた既存のスキルやMCPインテグレーションは含まれていない。
外部採用者は、カレンダー、メール、CRM、ドキュメントリポジトリといった各種システムとのインテグレーションを自前で構築する必要がある。AWSもこれを認めており、「オープンソースコミュニティがAmazonの社内エコシステムが解決済みだったインテグレーションギャップを埋められるかどうか」が実質的な成否を左右すると述べている。
なお、ライセンスはApache 2.0で、AWSサポートやSLAの提供はなく、運用・セキュリティ・バックアップはユーザー自身の責任となる。プロジェクト名はAmazonの「2ピザチーム」思想(チームの規模はピザ2枚で賄える人数が理想とする、Amazonが提唱したプロダクト開発哲学)に由来し、開発チームは自らを「Chefs」と呼んでいる。
詳細はAWS Open-Sources Pizza Bot, an Inbox for Background AI Agentsを参照していただきたい。