nicobailon/pi-interactive-shell
Pi coding agent extension that allows Pi to autonomously control interactive CLIs in an observable overlay. Full PTY emulation, no tmux, token efficient. User can take over anytime.
何を解決するか
Pi Interactive Shell は、AI コーディングエージェントがリアルタイムで対話が必要なコマンドラインインターフェース(CLI)を実行・操作できるようにします。たとえば、テキストエディタ(vim)、REPL、データベースシェル(psql)、または長時間実行されるプロセス(npm run dev)などです。このツールは、静的コマンド実行と対話型ターミナルセッションの間のギャップを埋め、エージェントと人間ユーザーの両方が監視・制御・セッションの引き渡しが可能な観測可能な TUI オーバーレイを提供します。
動作方法
このプロジェクトは、AI エージェントがサブプロセスを起動するために呼び出す interactive_shell というツールを提供します。4つの異なる運用モードをサポートしています:
- 対話モード:エージェントとユーザーが入力を送信し、ステータスを監視できるシェルを起動します。
- ハンドフリー:長時間実行されるビルドやサーバー向けに設計。エージェントは更新をポーリングし、ユーザーは監視します。
- ディスパッチ:「投げて忘れる」モード。エージェントは完了時または特定の終了条件にのみ通知を受けます。
- モニタ:イベント駆動型モード。出力ストリームに特定のトリガー(正規表現、文字列、ファイル変更)が検出されたときにエージェントを起動します。
ユーザーはオーバーレイに直接入力することで、いつでもセッションを引き継ぐことができ、Ctrl+G を使ってエージェントに制御を戻すことができます。
対象ユーザー
Pi コーディングエージェント(または Codex、Claude、Cursor などの互換エージェント)を使用し、複雑な CLI タスクを処理したり、サブエージェントを管理したり、システムログやテストを自律的に監視したい開発者向けです。
特徴
- 二重制御:リアルタイム TUI オーバーレイにより、AI エージェントと人間ユーザー間のスムーズな制御の引き渡しが可能。
- イベント駆動監視:ストリームトリガー、ポーリング差分、ファイルシステムウォッチャーに基づいてエージェントを起動可能。
- 構造化起動:Pi、Codex、Claude、Cursor などの他の AI エージェントをサブプロセスとしてネイティブに起動可能。
- 柔軟な入力:テキスト、名前付きキー(例:
Ctrl+C)、ブラケットペースト、16進バイトなど、複雑な TUI ナビゲーションに対応。 - 自動終了:出力の静寂が一定期間続くと、ローカル監視を知能的にキャンセル(静寂検出)。
- 復元可能な出力:ヘッドレスセッションから特定の失敗したテストの詳細やログを保持・照会できるオプトイン機能。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト