a99e58e809f2df726c5d9a8c9b90bcb4f5d9828b
- Crear orchestrator/utils.py con RateLimiter consolidado - Eliminar duplicados de providers/base.py y tools/executor.py - Agregar métodos reset() y available_calls al RateLimiter - Import compatible con ambos modos de ejecución 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
LLM Orchestrator
Sistema de orquestación multi-agente compatible con cualquier LLM.
¿Qué es esto?
Un framework para crear y coordinar múltiples agentes de IA que pueden:
- Ejecutar comandos en tu sistema
- Leer y escribir archivos
- Conectarse a servidores via SSH
- Hacer llamadas a APIs
- Trabajar juntos en tareas complejas
Características
- Multi-modelo: Claude, GPT-4, Gemini, Llama, Mistral, y 100+ más
- Herramientas universales: Bash, lectura/escritura de archivos, SSH, HTTP
- Agentes personalizables: Define tantos agentes como necesites
- LOGs automáticos: Registro de todas las acciones
- Sin dependencias pesadas: Solo Python estándar + LiteLLM opcional
Instalación
# Clonar o descomprimir
cd orchestrator
# Crear entorno virtual
python3 -m venv .venv
source .venv/bin/activate
# Instalar dependencias opcionales
pip install litellm # Para usar GPT-4, Gemini, Llama, etc.
Uso rápido
1. Define tus agentes
Edita config.yaml:
agents:
researcher:
role: "Investigador que busca información"
provider: claude
model: sonnet
tools: [bash, read, http_request]
coder:
role: "Programador que escribe código"
provider: litellm
model: gpt4o
tools: [read, write, bash]
reviewer:
role: "Revisor que valida el trabajo"
provider: litellm
model: gemini-pro
tools: [read, grep]
2. Ejecuta el orquestador
# Modo interactivo
python orchestrator/main.py
# Ejecutar un agente específico
python orchestrator/main.py --agent researcher --prompt "Busca información sobre X"
# Ver estado
python orchestrator/main.py --status
3. Comandos interactivos
/status - Ver estado del sistema
/agents - Listar agentes disponibles
/agent <nombre> - Cambiar agente activo
/logs <agente> - Ver historial del agente
/all - Ejecutar en todos los agentes
/quit - Salir
Estructura
orchestrator/
├── config.yaml # ← Tu configuración de agentes
├── orchestrator/
│ ├── main.py # Punto de entrada
│ ├── config.py # Carga de configuración
│ ├── providers/ # Conexión con LLMs
│ │ ├── claude_provider.py
│ │ └── litellm_provider.py
│ ├── tools/ # Herramientas disponibles
│ │ ├── executor.py
│ │ └── definitions.py
│ ├── agents/ # Lógica de agentes
│ │ └── base.py
│ └── tasks/ # Tareas predefinidas
├── logs/ # Historial por agente
├── outputs/ # Archivos generados
└── examples/ # Ejemplos de configuración
Providers disponibles
| Provider | Modelos | Requisito |
|---|---|---|
claude |
sonnet, opus, haiku | Claude Code CLI instalado |
litellm |
gpt4o, gemini-pro, llama3, mistral... | pip install litellm + API keys |
Herramientas disponibles
| Herramienta | Descripción |
|---|---|
bash |
Ejecuta comandos del sistema |
read |
Lee archivos |
write |
Escribe/crea archivos |
glob |
Busca archivos por patrón |
grep |
Busca texto en archivos |
ssh |
Ejecuta comandos en servidores remotos |
http_request |
Hace peticiones HTTP/API |
list_dir |
Lista contenido de directorios |
Ejemplos
Agente simple (solo conversación)
agents:
assistant:
role: "Asistente general"
provider: claude
model: sonnet
tools: [] # Sin herramientas
Equipo de desarrollo
agents:
architect:
role: "Diseña la arquitectura del sistema"
provider: claude
model: opus
tools: [read, write, bash]
developer:
role: "Implementa el código"
provider: litellm
model: gpt4o
tools: [read, write, bash, grep]
tester:
role: "Escribe y ejecuta tests"
provider: litellm
model: gemini-pro
tools: [read, bash]
Agentes con servidores
servers:
production:
host: 192.168.1.100
user: deploy
key: ~/.ssh/id_rsa
staging:
host: 192.168.1.101
user: deploy
key: ~/.ssh/id_rsa
agents:
deployer:
role: "Despliega aplicaciones a servidores"
provider: claude
model: sonnet
tools: [ssh, bash, read]
servers: [production, staging]
Variables de entorno
Para usar modelos de pago via LiteLLM:
export OPENAI_API_KEY="sk-..."
export GOOGLE_API_KEY="..."
export ANTHROPIC_API_KEY="..." # Si usas Claude via API
Licencia
MIT - Usa, modifica y comparte libremente.
Description
TZZR Orchestrator v5 - Sistema de orquestación multi-agente compatible con cualquier LLM
Languages
Python
88.8%
PLpgSQL
6.7%
Shell
4.5%