agent-orchestrator は何をしますか?
Claude、Codex、Gemini CLIを自動フェイルオーバーと共有コンテキストで連携し、信頼性の高いターミナルベースのAIワークフローを実現します。
概要
このツールは、複数のAIエージェントCLIを単一のオーケストレーターで管理します。各エージェントの応答を監視し、障害が発生した場合は自動的に代替エージェントに切り替えることで、中断のないワークフローを提供します。
主な機能
- 自動フェイルオーバー: プライマリエージェントが応答しない場合、自動的にバックアップエージェントに切り替えます。
- 共有コンテキスト: すべてのエージェント間で現在の作業ディレクトリ、環境変数、実行履歴を共有します。
- ヘルスチェック: 各エージェントの状態を定期的に監視し、利用可能かどうかを追跡します。
- カスタマイズ可能な設定:
orchestrator.json設定ファイルでエージェントの優先順位、タイムアウト値、リトライ回数を設定できます。
対応プラットフォーム
| エージェント | ステータス |
|---|---|
| Claude Code | ✅ サポート |
| Codex CLI | ✅ サポート |
| Gemini CLI | ✅ サポート |
インストール
git clone https://github.com/counterplaybloodtest96/agent-orchestrator.git
cd agent-orchestrator
npm install
使用方法
# 設定ファイル(orchestrator.json)を作成
cp config.example.json orchestrator.json
# オーケストレーターを起動
npm start
設定例(orchestrator.json)
{
"agents": [
{
"name": "claude",
"command": "claude",
"args": [],
"priority": 1,
"timeout": 30000
},
{
"name": "codex",
"command": "codex",
"args": [],
"priority": 2,
"timeout": 30000
},
{
"name": "gemini",
"command": "gemini",
"args": [],
"priority": 3,
"timeout": 30000
}
],
"failover": {
"enabled": true,
"maxRetries": 3,
"retryDelay": 1000
},
"sharedContext": {
"enabled": true,
"initialCwd": ".",
"envVars": ["PATH", "HOME", "PROJECT_ROOT"]
},
"healthCheck": {
"interval": 60000,
"timeout": 10000
}
}
アーキテクチャ
+-------------------+ +-------------------+
| ユーザー | | 設定ファイル |
| コマンドライン | | orchestrator.json |
+--------+----------+ +--------+----------+
| |
v v
+-------------------+ +-------------------+
| オーケストレーター |<------| エージェント設定 |
| (Node.js) | +-------------------+
+--------+----------+
|
+----+----+----+
| | | |
v v v v
+------+ +------+ +------+
|Claude| |Codex | |Gemini|
+------+ +------+ +------+
ライセンス
MIT