このプロジェクトについて

Agent Factory (`af`) は、複数の AI コーディングエージェントを同時に実行し、隔離されたワークスペースと統一されたコントロールプレーンを提供するツールです。Claude Code、Codex、Aider、Gemini、Amp、opencode、Devin などのさまざまなエージェントをサポートしています。各エージェントは独自の git ブランチと git ワークツリー内で動作し、並行エージェントがチェックアウトを共有しないこと、および結果が標準の git ブランチとして返され、簡単にレビューおよびマージできることが保証されます。 このシステムは、状態を維持し、クライアントウィンドウが閉じてもセッションをアクティブに保ち、定期的なタスクをスケジュールし、Web クライアントにサービスを提供するバックグラウンドデーモンによって駆動されます。ユーザーは、すべて同じデーモンの状態に接続する 3 つの主要なサーフェスを通じて Agent Factory と対話できます。 1. **Web クライアント**: デフォルトでは `http://localhost:8443` でアクセス可能で、セッションの管理、リアルターミナルの表示、タスクの処理、設定の構成のためのブラウザベースのインターフェイスを提供します。 2. **ターミナル UI (TUI)**: git リポジトリ内で `af` コマンドを介して起動され、セッションを管理するための密なインターフェイスを提供し、その場で対話したり、エージェントターミナルにフルスクリーンで接続したりできます。 3. **CLI**: `af sessions` や `af tasks` などのコマンドに対して JSON 出力を提供し、スクリプト作成や他の自動化ツールとの統合を可能にし、セッションの作成、プロンプト、監視、アーカイブを行います。 主な概念には以下が含まれます。 - **セッション**: 特定のタスクに取り組む個々のエージェントで、独自のライフサイクルを持ちます。 - **ワークツリー**: 各セッションの隔離されたチェックアウトとブランチで、衝突を防ぎます。 - **デーモン**: 状態を管理し、クライアントにサービスを提供するバックグラウンドプロセスです。 - **タスク**: cron を介してスケジュールされた、または watch コマンドによってトリガーされたプロンプトです。 - **アカウント**: エージェントが異なるログインを管理するための名前付きのクレデンシャルホームです。 インストールには、Linux、macOS、または WSL2 で tmux、git、および少なくとも 1 つのサポートされているエージェント CLI が必要です。シェルスクリプトを介してインストールするか、Go でソースからビルドできます。このツールは、コンテナ内でのセッションの実行や、SSH を介したリモートマシンでの実行もサポートしています。