Blog · Guía · 28 de octubre de 2026
Instala AEGIS en un VPS Ubuntu nuevo y ejecuta tu primera tarea aprobada
Aviso: en 100monkeys.ai construimos AEGIS, así que lee esta guía como el relato de quien lo fabrica. La redactó uno de nuestros agentes de IA a partir de la documentación pública de AEGIS en docs.100monkeys.ai y la revisó la empresa; esta versión en español es una traducción de la guía original en inglés. Cada comando está copiado de esa documentación o de nuestra página de inicio. No ejecutamos esta secuencia exacta en un VPS nuevo para esta guía y, donde la documentación se contradice, lo decimos en lugar de adivinar.
AEGIS by 100monkeys.ai, in beta, es un orquestador autoalojado que ejecuta agentes autónomos en entornos aislados, con políticas aplicadas y estado duradero. Esta guía lleva un servidor Ubuntu recién creado hasta un stack local en marcha y después ejecuta un agente detrás de una compuerta de aprobación humana: el trabajo del agente se detiene y espera hasta que respondas que sí.
Antes de empezar
Ten claro para qué sirve la instalación rápida. La página Getting Started lo dice sin rodeos: aegis init "is designed for local testing and evaluation only. It uses an in-memory secrets store and does not deploy Keycloak (IAM) or OpenBao (secrets management)" (está pensado solo para pruebas y evaluación locales; usa un almacén de secretos en memoria y no despliega Keycloak ni OpenBao). La página Infrastructure Requirements indica como IAM "None (unauthenticated)" y como TLS "None". Para producción, la documentación remite al repositorio aegis-deploy.
Así que, en un VPS, trata este stack como un laboratorio privado. Las comprobaciones de salud de la CLI usan por defecto el host 127.0.0.1 y el puerto 8088. No abras ese puerto a internet; entra en la máquina por SSH.
Necesitas:
- Un servidor Ubuntu o Debian al que llegues por SSH con un usuario que pueda usar
sudo. El instalador "runs on Ubuntu or Debian (it needsapt-get)". - Una máquina x86_64. La versión que fija el instalador trae el archivo para Linux x86_64,
aegis-linux-x86_64.tar.gz. - Una clave de API de un proveedor de modelos. La página de proveedores de la documentación cubre OpenAI, Anthropic y Ollama, con el sistema de alias para traer tu propio modelo.
Paso 1. Ejecuta el instalador
Copia la línea de 100monkeys.ai, donde aparece impresa, y ejecútala con tu usuario normal:
curl -fsSL https://get.100monkeys.ai | bash
Si lo prefieres, lee antes el script. La documentación indica que https://get.100monkeys.ai redirige a install.sh en la rama main de aegis-orchestrator. En Linux instala curl, ca-certificates y fuse3 si faltan, instala libfuse3 cuando el binario lo necesita e instala Docker Engine (docker-ce) si no hay Docker. Si Docker funciona pero tu usuario no tiene acceso, te añade al grupo docker. Después instala aegis en /usr/local/bin/aegis y arranca el stack con aegis up --tag <version>.
Para fijar una versión, define AEGIS_VERSION con una etiqueta de release antes de ejecutarlo; la documentación enumera todos los paquetes publicados en la página Releases.
Paso 2. Comprueba el binario y el stack
aegis --version
aegis status
aegis status informa del estado del stack local. Si la instalación te añadió al grupo docker, cierra la sesión y vuelve a entrar para que las nuevas shells tengan el grupo.
Paso 3. Ejecuta la configuración guiada y elige un proveedor de modelos
aegis init
El asistente "prepares stack files, configures the node, starts Docker Compose services, verifies health, and can optionally load smoke-test agents" (prepara los archivos del stack, configura el nodo, arranca los servicios de Docker Compose, verifica la salud y puede cargar agentes de prueba). Acepta la prueba hello-world cuando te lo pregunte; la usarás en el siguiente paso. La configuración que escribe asigna los alias de modelo default, smart, judge y tool-judge al proveedor que elijas. El agente hello-world usa smart, y un alias que el nodo no tiene asignado falla con Model alias '<alias>' not found, así que completa la pregunta del proveedor. Los archivos del stack van a ~/.aegis salvo que pases --dir.
Paso 4. Ejecuta hello-world una vez, sin supervisión
Comprueba que el ciclo funciona antes de añadir una compuerta:
aegis task execute hello-world \
--input '{"task": "Write a Python function that returns the Fibonacci sequence up to n."}' \
--follow
--follow transmite los eventos de cada iteración. El agente genera código, ejecuta la validación y termina con éxito o lo refina en sucesivas iteraciones hasta que sus validadores pasan.
Paso 5. Escribe un workflow con una compuerta de aprobación
En AEGIS, una aprobación es un estado de workflow de tipo kind: Human. Guarda esto como approved-task.yaml. Sigue la forma del ejemplo de la página Building Workflows, reducido a un agente y una compuerta:
apiVersion: 100monkeys.ai/v1
kind: Workflow
metadata:
name: approved-task
version: "1.0.0"
description: "One agent drafts, a person approves, then the run completes."
spec:
initial_state: DRAFT
states:
DRAFT:
kind: Agent
agent: hello-world
timeout: 600s
transitions:
- condition: on_success
target: APPROVE
- condition: on_failure
target: FAILED
APPROVE:
kind: Human
prompt: |
Draft:
{{DRAFT.output}}
Approve? (yes/no)
timeout: 86400s
transitions:
- condition: input_equals_yes
target: DONE
- condition: input_equals_no
target: FAILED
DONE:
kind: System
command: "echo 'Approved'"
transitions: []
FAILED:
kind: System
command: "echo 'Rejected or failed'"
transitions: []
Paso 6. Despliégalo e inicia una ejecución
aegis workflow deploy ./approved-task.yaml --force
aegis workflow run approved-task \
--input '{"task": "Write a Python function that returns the Fibonacci sequence up to n."}'
El comando de ejecución imprime un id de ejecución. Síguelo:
aegis workflow logs <execution-id> --follow --verbose
aegis workflow executions get <execution-id>
Cuando el borrador está listo, executions get muestra el estado actual como APPROVE (WAITING FOR HUMAN SIGNAL). Nada de lo que hay después de la compuerta se ejecuta hasta que alguien responde.
Paso 7. Lee el borrador y responde
aegis workflow signal <execution-id> --response yes
Responde no para enviar la ejecución a FAILED. Una compuerta que nadie responde caduca tras su timeout; con el comportamiento por defecto, la ejecución se marca como fallida con el motivo human_input_timeout.
Un detalle: la documentación no se pone de acuerdo en la palabra. La página Human Approvals dice que una compuerta de sí o no acepta las respuestas ["yes", "no"]; la página Building Workflows envía --response approved; la página de la CLI muestra --response "approve". Usamos yes porque es la palabra que da nombre a la transición input_equals_yes. Si la ejecución no avanza, revisa executions get y prueba las otras formas.
Lo que esta guía no cubre
- Producción. Usa aegis-deploy, que añade Keycloak, OpenBao, TLS mediante Caddy y observabilidad.
- Exponer la API. Sin IAM en el stack de
aegis init, cualquiera que llegue al puerto 8088 puede actuar sobre él. - Dimensionar el hardware. La documentación da una matriz de dependencias (Docker 24.0+ o Podman 4.0+, PostgreSQL 15+, SeaweedFS, Temporal para los workflows), pero no encontramos una cifra mínima de RAM para el stack local, así que no la damos.
Siguiente
Para entender el porqué de la compuerta, lee Cómo dar a un orquestador un paso de aprobación. Para saber qué registrar en cada ejecución, lee Lista de trazabilidad para agentes de IA en producción. Si quieres que las notas y el código de tus agentes vivan en un solo registro que puedan leer y escribir por MCP, consulta Conecta Claude Code a Carbon Forge por MCP.