Agent Collaboration
Un servidor dinámico para gestionar la colaboración multiagente dentro de sesiones tmux, con configuraciones flexibles de paneles y detección automática.
Documentación
Servidor MCP Agent Collaboration
La versión en inglés está aquí
Es un servidor MCP completamente autónomo que permite que múltiples agentes de IA trabajen en colaboración. Al permitir que agentes como Claude Code utilicen esta herramienta, los agentes pueden iniciar y controlar a otros agentes, ejecutando tareas complejas como un equipo.
✨ Características
- Arquitectura simple: Operación intuitiva especificando directamente los números de panel
- Soporte para múltiples agentes: Control simultáneo de Claude Code y Gemini
- Gestión flexible de sesiones: Soporte para trabajo paralelo en múltiples proyectos
- Gestión avanzada de estado: Monitoreo en tiempo real del estado de ejecución de los agentes
🎯 Trabajo colaborativo entre agentes
⚠️ Acerca de la función de autenticación automática
Para automatizar la autenticación de nuevos agentes, se requiere Playwright MCP. Si Playwright MCP no está instalado, la autenticación debe realizarse manualmente. Consulte la función de autenticación automática delegada para más detalles.
El propósito principal de este servidor MCP es que los agentes gestionen a otros agentes. Por ejemplo:
- El agente jefe divide las tareas y las asigna a múltiples agentes trabajadores
- Cada agente trabaja en su área de especialización (Claude Code en codificación, Gemini en generación de imágenes)
- Los agentes se envían mensajes entre sí y comparten el progreso
- Un agente revisa e integra los resultados de trabajo de otros agentes
- Autenticación automática delegada: si un nuevo agente solicita autenticación, un agente ya autenticado la realiza automáticamente en su nombre
🛠️ Herramientas proporcionadas
Seis herramientas disponibles para los agentes:
1. start_agent - Inicio del agente
start_agent(target="multiagent:0.2", agentType="claude")
start_agent(target="multiagent:0.3", agentType="gemini")
Inicia un agente de IA en el objetivo tmux especificado.
- target: Formato de objetivo tmux ("session:window.pane", ej.: "multiagent:0.5")
- agentType: claude (desarrollo de código general) o gemini (tareas de generación de imágenes)
- additionalArgs: Argumentos adicionales (opcional)
2. get_agent_status - Verificación de estado
get_agent_status() // 全エージェントの状態を確認
get_agent_status(target="multiagent:0.2") // 特定ペインの詳細状態を確認
get_agent_status(target="multiagent:*") // セッション内全ペインの状態確認
Estados disponibles
| Estado | Icono | Descripción |
|---|---|---|
running_claude | ✅ | Claude Code en ejecución, esperando entrada |
running_gemini | 💎 | Gemini en ejecución, esperando entrada |
auth_claude | 🔐 | Claude Code en proceso de autenticación |
auth_gemini | 🔑 | Gemini en proceso de autenticación |
executing_claude | ⚡ | Claude en ejecución (mostrando ESC to interrupt) |
stopped | ⚫ | Agente detenido o en estado de shell |
3. send_message - Envío de mensajes
send_message(target="multiagent:0.2", message="こんにちは")
send_message(target="multiagent:0.3", message="C-c", sendEnter=false) // Ctrl+C送信
Envía mensajes o caracteres de control al panel especificado. Incluye función avanzada de envío de mensajes.
4. capture_screen - Captura de pantalla
capture_screen(target="multiagent:0.2") // 全履歴キャプチャ
capture_screen(target="multiagent:0.3", lines=50) // 最後の50行
Obtiene el contenido de pantalla del panel.
5. parallel_implement - Implementación paralela
parallel_implement(prompt="ユーザー認証機能を実装してください")
parallel_implement(prompt="リファクタリングを実行", workerCount=5, complexity="complex")
Múltiples agentes trabajadores implementan la misma tarea en paralelo, y el agente jefe selecciona e integra el mejor resultado.
Importante: esta función debe ejecutarse dentro de un repositorio Git. Cada trabajador trabaja en su propio Git worktree.
- prompt: Instrucciones de implementación (obligatorio)
- workerCount: Número de trabajadores (predeterminado: 3)
- complexity: Complejidad de la tarea (simple, medium, complex)
- agentType: Agente a utilizar (claude, gemini)
- autoMerge: Fusión automática al finalizar (predeterminado: false)
6. get_parallel_status - Verificación de estado de implementación paralela
get_parallel_status() // 全セッションの一覧を取得
get_parallel_status(sessionId="parallel_20240105_123456") // 特定セッションの詳細
Verifica el progreso de las sesiones de implementación paralela. Se puede obtener el estado de trabajo de cada trabajador, la tasa de finalización, información de errores, etc.
📦 Configuración
1. Instalación
Mediante npm (recomendado):
npm install -g agent-collaboration-mcp@latest
Directamente desde GitHub:
git clone https://github.com/nishimoto265/Agent_Collaboration_MCP.git
cd Agent_Collaboration_MCP
npm install
2. Adición a Claude Code (recomendado)
Método sencillo (usando CLI):
claude mcp add agent-collaboration npx agent-collaboration-mcp@latest
Si se utiliza la función de autenticación automática, agregue también Playwright MCP:
claude mcp add playwright npx @playwright/mcp@latest
O bien, usando configuración JSON:
- Cree
.mcp.jsonen la raíz del proyecto:
{
"mcpServers": {
"agent-collaboration": {
"command": "npx",
"args": ["agent-collaboration-mcp"]
}
}
}
- Para instalación local:
{
"mcpServers": {
"agent-collaboration": {
"command": "node",
"args": ["/absolute/path/to/Agent_Collaboration_MCP/index.js"]
}
}
}
3. Preparación de la sesión de tmux
# デフォルトセッション(multiagent)を作成
tmux new-session -d -s multiagent
# 複数プロジェクトの場合
tmux new-session -d -s project1
tmux new-session -d -s project2
💡 Ejemplos de uso
Uso básico
// 1. エージェントを起動
start_agent(target="multiagent:0.2", agentType="claude")
start_agent(target="multiagent:0.3", agentType="claude")
// 2. ステータス確認
get_agent_status()
// 3. タスクを指示
send_message(target="multiagent:0.2", message="READMEを確認してください")
send_message(target="multiagent:0.3", message="テストを実行してください")
// 4. 結果を確認
capture_screen(target="multiagent:0.3")
Ejemplo de trabajo con múltiples sesiones
// プロジェクト1での作業
start_agent(target="project1:0.0", agentType="claude")
send_message(target="project1:0.0", message="バックエンドAPIを実装してください")
// プロジェクト2での並行作業
start_agent(target="project2:0.0", agentType="gemini")
send_message(target="project2:0.0", message="UIデザインを作成してください")
Función de autenticación automática delegada (opcional)
Si desea automatizar la autenticación de nuevos agentes, puede combinarlo con Playwright MCP para que un agente ya autenticado realice automáticamente la autenticación en nombre del nuevo agente.
// Playwright MCPがインストールされている場合の動作
start_agent(target="multiagent:0.5", agentType="claude")
// 認証が必要な場合、以下が自動実行されます:
// 1. 既存の認証済みエージェントを検出
// 2. 新エージェントの認証URLを抽出
// 3. Playwright MCPを使用してブラウザで自動認証
// 4. 認証コードを自動的に新エージェントに送信
Ejemplo de colaboración multiagente
// Boss エージェント(タスク管理)
start_agent(target="multiagent:0.0", agentType="claude")
// Worker エージェント群
start_agent(target="multiagent:0.1", agentType="claude") // コード開発担当
start_agent(target="multiagent:0.2", agentType="gemini") // 画像生成担当
start_agent(target="multiagent:0.3", agentType="claude") // テスト担当
// Bossからタスク分割指示
send_message(target="multiagent:0.0", message="プロジェクトの進捗確認と各チームへのタスク分割をお願いします")
// 各Workerの状態監視
get_agent_status()
Detención y control de emergencia
// プロセスを停止
send_message(target="multiagent:0.2", message="C-c", sendEnter=false)
// 画面をクリア
send_message(target="multiagent:0.2", message="C-l", sendEnter=false)
🔧 Requisitos previos
Obligatorios
- Node.js 18 o superior
- tmux
- Sesión de tmux:
tmux new-session -d -s multiagent
Opcional (para automatización de autenticación)
- Playwright MCP: Necesario para automatizar la autenticación de agentes
🚀 Funciones avanzadas
Especificación flexible de objetivos
- Especificación de sesión: Trabajo paralelo en diferentes proyectos
- Comodines:
multiagent:*para apuntar a todos los paneles - Especificación intuitiva de números: Especificación simple con
0,1,2...
Detección precisa de estado
- Monitoreo en tiempo real: Determinación inmediata del estado de ejecución del agente
- Identificación de múltiples estados: Distinción precisa entre ejecución, autenticación, detención, etc.
- Visualización con iconos: Visualización de estado fácil de entender
🚨 Solución de problemas
La sesión de tmux no existe
# multiagentセッションを作成
tmux new-session -d -s multiagent
El agente no se inicia
- Verifique el estado con
get_agent_status() - Verifique los mensajes de error con
capture_screen() - El sistema de autenticación delegada suele resolver el problema automáticamente
No se envían mensajes
- Verifique si el agente está iniciado con
get_agent_status() - Verifique que la sesión de tmux exista
- Verifique que el formato del objetivo sea correcto ("session:window.pane")
📄 Personalización de scripts
Agent Collaboration MCP utiliza los scripts dentro de scripts/agent_tools/. Si tiene su propio método de inicio de agentes o de envío de mensajes, personalice estos scripts:
agent_manager.sh: Definición de comandos de inicio de agentespane_controller.sh: Definición del método de envío de mensajes
🤝 Contribuciones
Se agradecen las contribuciones a este proyecto. Por favor, reporte errores o sugiera funciones.
📄 Licencia
Licencia MIT