Blog · Guía · 29 de octubre de 2026

Elige un runtime de agente AEGIS del registro estándar

También en: English, Português, 日本語, Deutsch, Français, 한국어, 简体中文, Italiano, हिन्दी · 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, sobre todo el Standard Runtime Registry, la entrada aegis.runtime.list de Management Tools y la CLI Reference, y la revisó la empresa; esta versión en español es una traducción de la guía original en inglés. Cada línea de YAML, llamada y comando de abajo están copiados de esas páginas, y ninguno se ejecutó para esta guía. Las citas van en inglés con la traducción al lado. Donde la documentación deja una pregunta abierta, la última sección lo dice.

AEGIS by 100monkeys.ai, in beta, ejecuta cada agente en un contenedor. Un manifiesto de agente puede nombrar un lenguaje y una versión en lugar de una imagen, y el orquestador elige la imagen. La página del registro lo dice claro: "Using StandardRuntime means you never specify a Docker image directly." (Usar StandardRuntime significa que nunca especificas una imagen de Docker directamente). Esta guía elige un runtime, lo comprueba antes de desplegar y muestra qué ocurre en tiempo de ejecución.

Paso 1. Entiende qué decide el registro

Cuando un manifiesto da spec.runtime.language y spec.runtime.version, el orquestador "resolves them to a deterministic, pinned Docker image at execution time." (los resuelve a una imagen de Docker determinista y fijada en el momento de la ejecución). La correspondencia vive en runtime-registry.yaml, guardado en el repositorio del orquestador y cargado cuando arranca el daemon. Lo importante para una revisión es que dos agentes que nombran el mismo par se ejecutan sobre la misma imagen, y nadie escribe una etiqueta de imagen en un manifiesto.

Paso 2. Pregunta al registro qué acepta

Un agente que escribe manifiestos de otros agentes, o una persona desde un cliente, puede llamar a la herramienta integrada aegis.runtime.list. Sin argumentos enumera todos los runtimes; con un lenguaje, filtra:

{}
{ "language": "python" }

La respuesta nombra el language, version, image, description y un indicador deprecated de cada runtime, además de custom_runtime_supported. La página del registro da el motivo de la herramienta: "prevents hallucinated language-version combinations from being written into manifests." (evita que se escriban en los manifiestos combinaciones de lenguaje y versión inventadas). Está disponible en el contexto de seguridad aegis-system-agent-runtime "with no additional configuration" (sin configuración adicional).

Paso 3. Elige un par admitido

La matriz de la página del registro, tal como está:

LenguajeVersionesImagen
python3.11, 3.10; 3.9 obsoletapython:3.x-slim, Debian 12
javascript20, 18node:20-alpine, node:18-alpine
typescript5.1node:20-alpine
go1.21, 1.20golang:1.x-alpine
rust1.75, 1.74rust:1.x-alpine
bash5python:3.11-slim, con python3 para el bootstrap

Los manifiestos que nombran una versión obsoleta "still execute but emit a warning in the execution log" (se siguen ejecutando pero emiten un aviso en el registro de ejecución). La página nombra python: "3.9" como obsoleta y dice pasar a 3.10 o 3.11. Las retiradas se anuncian "two phases in advance" (con dos fases de antelación), y una versión retirada no pasa la validación.

Paso 4. Escríbelo en el manifiesto

spec:
  runtime:
    language: "python"   # Required (StandardRuntime)
    version: "3.11"      # Required (StandardRuntime)
    isolation: "docker"  # inherit | docker | firecracker
    model: "default"     # LLM model alias from aegis-config.yaml

"Specifying an unsupported language+version combination is rejected at execution validation time with a descriptive error. There is no fallback to a default version." (Indicar una combinación de language+version no admitida se rechaza al validar la ejecución con un error descriptivo. No hay recurso a una versión por defecto). La última frase es la útil: una errata no se ejecuta en silencio sobre otro intérprete.

Paso 5. Valida y luego despliega

aegis agent deploy ./agent.yaml --validate-only
aegis agent deploy ./agent.yaml

--validate-only analiza y valida sin desplegar. Desplegar dos veces el mismo nombre y versión falla salvo que añadas --force.

Paso 6. Instala lo que necesita el agente, o pasa a una imagen propia

Cada imagen estándar lleva la herramienta de paquetes de su lenguaje: pip y apt en las imágenes de Python, npm y apk en las de Node, go y apk en Go, cargo y rustc en Rust. Para TypeScript el orquestador fija TYPESCRIPT_VERSION=5.1 y la documentación dice que tu bootstrap debe instalar la cadena de herramientas con npm install -g typescript ts-node. Cuando un agente necesita paquetes del sistema como ffmpeg, una versión que el registro no tiene, binarios precompilados o dependencias privadas, la respuesta de la página es un Custom Runtime, tu propia imagen, en lugar de instalar lo mismo en cada ejecución.

Paso 7. Entiende qué ocurre cuando arranca el agente

Para un runtime estándar, el orquestador resuelve el par a una imagen, crea el contenedor con un proceso principal que solo lo mantiene vivo, sube su bootstrap.py a /usr/local/bin/aegis-bootstrap si aún no está ahí, y lo ejecuta con el prompt. El bootstrap se conecta de vuelta al gateway de despacho del orquestador y ejecuta el bucle de iteración: "generate → execute → validate → refine" (generar, ejecutar, validar, refinar).

Paso 8. En tu propio nodo, deja el archivo del registro donde lo busca el daemon

# aegis-config.yaml
spec:
  runtime:
    runtime_registry_path: "runtime-registry.yaml"

La ruta por defecto es relativa al directorio de trabajo del daemon. Si el archivo falta o no se puede analizar, el daemon "hard-fails at boot" (falla en el arranque sin continuar), porque "a missing registry makes every StandardRuntime agent execution impossible." (un registro ausente hace imposible toda ejecución de agentes StandardRuntime). Fija una ruta absoluta cuando el daemon se ejecuta desde otro directorio o dentro de una imagen de contenedor.

Lo que la documentación deja abierto

Siguiente

El runtime es un campo del manifiesto de agente. Para el resto, lee El manifiesto de agente de AEGIS: cada campo y qué impone. AEGIS se instala con el comando que aparece en 100monkeys.ai:

curl -fsSL https://get.100monkeys.ai | bash

Instala AEGIS desde 100monkeys.ai