コンソールAIエージェントpiのための便利なWebインターフェース「pi-web」
ターミナルでの作業は、コンテキストが1つの画面に収まる限り素晴らしいものです。コンソールコーディングエージェントpiは素早い編集に最適ですが、1時間にも及ぶデバッグセッションは、関数呼び出し、生成されたコード、エラーメッセージの混沌へと変わります。モデルが軌道を外れた箇所をそのストリームから見つけ出す、あるいは20分前にどのファイルを編集していたかを思い出すのは至難の業です。
開発者のagegrは非常に実用的な方法でこの問題を解決しました:pi-webというローカルWebシェルを開発したのです。このツールはpiエージェントのログファイルを読み取り、ブラウザ上に便利なビジュアルダッシュボードを起動します。

pi-webとは?その仕組み
pi-webの本質は、コンソールエージェントpiをラップするものです。エージェント自体を書き換える代わりに、著者は~/.pi/agent/sessionsディレクトリからファイルを解析するフロントエンドを作成しました。
アプリケーションは完全にローカルで動作します。事前のインストールなしで1つのコマンドで起動できます:
npx @agegr/pi-web@latest
サーバーはポート30141で起動し、自動的にブラウザでタブを開きます。ポートが占有されている場合、またはローカルアクセスのみが必要な場合は、パラメータをフラグで 쉽게変更できます:
pi-web --port 8080 --hostname 127.0.0.1
ワークフローの変化
コンソールAIダイアログの主な問題は、構造の喪失です。ターミナルでは、すべてがテキストの壁のように見えます。Webインターフェースは同じセッションを明確で視覚的なブロックに分解します。
視覚的なセッション分岐
AIエージェントが壁にぶつかり始めたとき、コンソールではダイアログをリセットするか、長いリトライ履歴を生成する必要があります。pi-webには安全な実験のための2つの道があります:
- Forkは別のセッションファイルを作成します。古い結果を保持しながら新しい道を進むことができます。
- 選択したメッセージからの編集は、同じセッション内に追加のブランチを作成します。
チャットと一緒にファイルを表示
エージェントがコードを編集したりドキュメントを書いたりしている間、隣接するパネルで変更を追跡できます。プロジェクトエクスプローラーは左側に、プレビューエリアは右側にあります。組み込みビューワーはソースファイルや差分だけでなく、画像、音声、PDF、DOCXドキュメントも簡単に表示できます。
トークンと設定の透明な管理
上部バーには、使用されたトークン、セッションコスト、コンテキスト圧縮の状態が表示されます。もう、使用した制限の量を推測したり、現在どのシステムプロンプトがアクティブかを考えたりする必要はありません。
モデルとAPIキーの管理も、コンソールのJSONファイルからGUIに移りました。設定パネルから、デフォルトモデルを変更したり、接続をテストしたり、エージェントのスキルを切り替えたりできます。
Git worktreesのサポート
複数のブランチで並行作業にGit worktreesを使用している場合、pi-webのサイドバーは環境をその場で切り替えられます。ファイルエクスプローラーと新しいセッションは、選択したチェックアウトに自動的に適応します。
アーキテクチャの設計
このプロジェクトはNext.jsフレームワークを使用してTypeScriptで書かれています。リポジトリ構造はシンプルで直感的です。
app/apiフォルダには、エージェントとやり取りするためのエンドポイントが含まれています:
agent/は、Server-Sent Events(SSE)を介したセッション起動とイベントストリーミングを処理します。files/は、ファイルの読み取り、差分、変更追跡を処理します。models-config/とskills/は、エージェント設定を 管理します。
セキュリティはlib/file-access.tsモジュールで処理されます。これはファイルマネージャーを現在のプロジェクトとセッションに関連するディレクトリに制限します。UIを通じてランダムなシステムファイルを読み取ることはできません。
このプロジェクトが役立つ人
piコーディングエージェントを積極的に使用しているなら、pi-webを試す価値はあります。このプロジェクトはCLIツールの主な問題である視覚的な明確さの欠如を解決します。
インターフェースは特に次の2つの場合に便利です:
- 複雑なタスクをデバッグする場合、過去のステップに頻繁に遡ってソリューションのバリエーションを比較する必要があります。
- メディアファイルやドキュメントを扱う場合、ブラウザで結果を素早くプレビューできる機能が時間を節約できます。
このツールは積極的に開発されています:GitHubで既に16,000を超えるスターを獲得しており、最近もコミットが続いています。実行にはNode.jsとpiエージェントがインストールされているだけでよく、設定はほんとうに数分で完了します。
関連プロジェクト