Architect fbad91c9de feat: --dangerously-skip-permissions + user orchestrator
Changes:
- claude_provider.py: Added --dangerously-skip-permissions flag
- docs/DEPLOYMENT.md: Full deployment documentation

Why:
- Claude CLI blocks --dangerously-skip-permissions with root
- Created non-root user "orchestrator" to run agents without confirmations
- Service now runs as User=orchestrator

Architecture:
- /home/orchestrator/orchestrator/ - Orchestrator code
- /opt/architect-app-v2/ - Web panel
- User orchestrator owns SSH keys and can execute commands
2025-12-23 18:26:00 +00:00
2025-12-23 16:22:49 +01:00
2025-12-23 16:22:49 +01:00

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
Readme 106 KiB
Languages
Python 88.8%
PLpgSQL 6.7%
Shell 4.5%