Blog · Guía · 28 de octubre de 2026

Instala AEGIS en un VPS Ubuntu nuevo y ejecuta tu primera tarea aprobada

También en: English, Português, 日本語, Deutsch, Français · Todas las guías en español

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:

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

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.

Instala AEGIS desde 100monkeys.ai