Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Anatomía de un agente

Un agente se configura como un único bloque [agents.<alias>]. Cada campo es una referencia a algo configurado en otro lugar o una sobrescritura específica del agente. La tabla siguiente se genera a partir del esquema de configuración, por lo que siempre coincide con la compilación en ejecución. Haz clic en un campo para expandirlo; haz clic de nuevo para ver cómo configurarlo.

a2a AgentA2aConfig · default {"exposed_skills":[],"published":false}

Bloque de publicación A2A por agente ([agents.<alias>.a2a]). Controla si este alias es detectable como un agente A2A conforme a la especificación y qué habilidades resueltas aparecen en su tarjeta. Cerrado por defecto (published = false, sin habilidades expuestas). Véase crate::multi_agent::AgentA2aConfig.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Open /config/agents and set the agents.<alias>.a2a field.

zerocode

En el panel Config, establece el campo agents.<alias>.a2a.

zeroclaw config

zeroclaw config set agents.<alias>.a2a <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__a2a=
acp_enable_mcp bool · default false

Inicializa las herramientas mcp_bundles de este agente cuando sirva una sesión de ACP (session/new). Desactivado por defecto: los servidores MCP son procesos/servicios externos que pueden bloquear el inicio mientras se conectan, y se espera que ACP session/new devuelva la respuesta rápidamente. Habilítalo cuando este agente deba llamar a sus herramientas mcp_bundles a través de ACP; entonces session/new asume el coste de conexión de MCP de una sola vez (acotado y no fatal por servidor). Configúralo por agente para que cada perfil ACP lo active de forma independiente; cuando este agente sea el ACP predeterminado (acp.default_agent, o el único agente configurado), la marca se aplica automáticamente a las sesiones que omiten agentAlias.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abra /config/agents y establezca el campo agents.<alias>.acp_enable_mcp.

zerocode

En el panel Config, establece el campo agents.<alias>.acp_enable_mcp.

zeroclaw config

zeroclaw config set agents.<alias>.acp_enable_mcp <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__acp_enable_mcp=
channels ChannelRef[] · default []

Alias de canal que maneja este agente (p. ej. ["telegram.<alias>", "discord.<alias>"]). Cada entrada es un ChannelRef que se resuelve a través de [channels.<type>.<alias>]; Config::validate() falla de forma explícita ante referencias colgantes.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abra /config/agents y configure el campo agents.<alias>.channels.

zerocode

En el panel Config, establece el campo agents.<alias>.channels.

zeroclaw config

zeroclaw config set agents.<alias>.channels <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__channels=
classifier_provider ModelProviderRef · default ""

Anulación opcional para el clasificador LLM de intención de respuesta por mensaje (classify_channel_reply_intent en zeroclaw-channels). Cuando no está vacío, el orquestador de canales enruta la llamada de clasificación “¿debe responderse este mensaje?” al [providers.models.<type>.<alias>] referenciado aquí, en lugar de reutilizar el model_provider del agente principal. La fuente de verdad para api_key / uri / model / temperature, etc., es la entrada [providers.models.<type>.<alias>] referenciada. Este campo es solo una referencia (NUNCA una copia), conforme a SINGLE SOURCE OF TRUTH de AGENTS.md. Vacío (Default) = hereda el proveedor+modelo resuelto del agente principal (preserva el comportamiento previo al PR; compatible con versiones anteriores). Caso de uso: la clasificación es una decisión barata de REPLY/NO_REPLY, no necesita un modelo de gama alta. Apunte esto a un modelo pequeño rápido/gratuito (p. ej., kimi-k2.5, qwen-turbo) mientras model_provider permanece en el modelo de respuesta costoso (p. ej., qwen3.6-plus). Nota: los nombres de tablas TOML no pueden contener ., por lo que el alias kimi-k2.5 debe escribirse como [providers.models.custom.kimi-k2-5]. La cadena subyacente model = "kimi-k2.5" aún puede contener puntos. Los canales ACP (directos al IDE) siempre responden y omiten el clasificador por completo, por lo que este campo no tiene ningún efecto en el tráfico ACP.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.classifier_provider.

zerocode

En el panel Config, establece el campo agents.<alias>.classifier_provider.

zeroclaw config

zeroclaw config set agents.<alias>.classifier_provider <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__classifier_provider=
cron_jobs string[] · default []

Alias de trabajos cron. Cada entrada hace referencia a cron[key], un trabajo programado declarativo invocado por el planificador según su disparador configurado. Cuando el cron se activa, este agente es el actor que ejecuta el trabajo.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abra /config/agents y configure el campo agents.<alias>.cron_jobs.

zerocode

En el panel Config, establece el campo agents.<alias>.cron_jobs.

zeroclaw config

zeroclaw config set agents.<alias>.cron_jobs <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__cron_jobs=
delegate_same_risk_profile bool · default true

Permite automáticamente la delegación a todos los agentes que comparten el perfil de riesgo de este agente. El valor predeterminado true conserva el alcance histórico en el que cualquier par del mismo perfil es un destino de delegación. Establece false para excluir este agente, de modo que solo se pueda acceder a la lista explícita delegates. El control (si la delegación está permitida en absoluto) sigue dependiendo de delegation_policy.mode del perfil de riesgo; esto solo restringe el alcance.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.delegate_same_risk_profile.

zerocode

En el panel Config, establece el campo agents.<alias>.delegate_same_risk_profile.

zeroclaw config

zeroclaw config set agents.<alias>.delegate_same_risk_profile <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__delegate_same_risk_profile=
delegates DelegateTargetConfig[] · default []

Lista explícita de delegados: alias adicionales de agentes a los que este agente puede delegar, además de los pares del mismo perfil. Puede estar vacía. Se aceptan entradas de cadena para edición manual concisa y se cargan como delegados acotados; la configuración guardada emite entradas de objeto con modos explícitos. Las entradas pueden nombrar agentes en un perfil de riesgo distinto. Config::validate() falla de forma contundente ante un alias colgante, un alias duplicado o una autorreferencia.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.delegates.

zerocode

En el panel Config, establece el campo agents.<alias>.delegates.

zeroclaw config

zeroclaw config set agents.<alias>.delegates <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__delegates=
identity IdentityConfig · default {"aieos_inline":null,"aieos_path":null,"format":"openclaw"}

Formato de identidad por agente ([agents.<alias>.identity]). Cada agente genera su propio IDENTITY.md / SOUL.md dentro de su espacio de trabajo por agente; este bloque selecciona el formato (OpenClaw o AIEOS) y la fuente opcional inline/archivo para el documento de identidad del agente.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y establece el campo agents.<alias>.identity.

zerocode

En el panel Config, establece el campo agents.<alias>.identity.

zeroclaw config

zeroclaw config set agents.<alias>.identity <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__identity=
knowledge_bundles string[] · default []

Alias de paquetes de conocimiento. Aditivo: el agente carga todos los paquetes listados.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.knowledge_bundles.

zerocode

En el panel Config, establece el campo agents.<alias>.knowledge_bundles.

zeroclaw config

zeroclaw config set agents.<alias>.knowledge_bundles <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__knowledge_bundles=
mcp_bundles string[] · default []

Alias de bundle de MCP. Cada entrada hace referencia a mcp_bundles[key], un grupo con nombre de servidores MCP. Seguro por defecto: a un agente solo se le conceden los servidores nombrados por sus bundles. Un agente sin mcp_bundles no recibe servidores MCP (la omisión no es una concesión). Consulte Config::mcp_servers_for_agent.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.mcp_bundles.

zerocode

En el panel Config, establece el campo agents.<alias>.mcp_bundles.

zeroclaw config

zeroclaw config set agents.<alias>.mcp_bundles <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__mcp_bundles=
memory AgentMemoryConfig · default {"backend":"sqlite"}

Selección del backend de memoria por agente ([agents.<alias>.memory]). El campo backend se bloquea al crear el agente y es inmutable en cargas posteriores. El valor predeterminado es Sqlite. Consulte crate::multi_agent::AgentMemoryConfig.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y establece el campo agents.<alias>.memory.

zerocode

En el panel Config, establece el campo agents.<alias>.memory.

zeroclaw config

zeroclaw config set agents.<alias>.memory <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__memory=
model_provider ModelProviderRef · default ""

Alias de proveedor de modelo con notación de puntos (p. ej. "anthropic.<alias>"). Se resuelve a través de model_providers.<type>.<alias> en tiempo de ejecución; Config::validate() falla de forma explícita ante referencias colgantes.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.model_provider.

zerocode

En el panel Config, establece el campo agents.<alias>.model_provider.

zeroclaw config

zeroclaw config set agents.<alias>.model_provider <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__model_provider=
precheck ChannelPrecheckConfig · default {"enabled":true,"timeout_secs":5}

Controles de prechequeo de intención de respuesta por agente. La llamada del clasificador lee este bloque en el momento del mensaje; la selección de modelo/proveedor permanece en classifier_provider, por lo que solo hay una única fuente de verdad de enrutamiento.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y establece el campo agents.<alias>.precheck.

zerocode

En el panel Config, establece el campo agents.<alias>.precheck.

zeroclaw config

zeroclaw config set agents.<alias>.precheck <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__precheck=
risk_profile RiskProfileRef · default ""

Alias del perfil de riesgo (p. ej., "default"). Resuelve las barreras de protección de delegación en tiempo de ejecución.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.risk_profile.

zerocode

En el panel Config, establece el campo agents.<alias>.risk_profile.

zeroclaw config

zeroclaw config set agents.<alias>.risk_profile <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__risk_profile=
runtime_profile RuntimeProfileRef · default ""

Alias del perfil de tiempo de ejecución (p. ej. "default"). Resuelve la configuración de agentes/iteración.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y establece el campo agents.<alias>.runtime_profile.

zerocode

En el panel Config, establece el campo agents.<alias>.runtime_profile.

zeroclaw config

zeroclaw config set agents.<alias>.runtime_profile <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__runtime_profile=
skill_bundles string[] · default []

Alias de paquetes de habilidades. Cada entrada se resuelve en skill_bundles[key].directory en tiempo de ejecución; el agente carga todos los paquetes listados.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.skill_bundles.

zerocode

En el panel Config, configure el campo agents.<alias>.skill_bundles.

zeroclaw config

zeroclaw config set agents.<alias>.skill_bundles <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__skill_bundles=
summary_provider ModelProviderRef · default ""

Anulación por agente para el proveedor del resumidor de compresión de contexto, como una referencia providers.models.<type>.<alias>. Vacío (Default) = hereda context_compression.summary_provider del perfil de ejecución; en caso contrario, el propio proveedor+modelo resuelto del agente. Solo referencia, nunca una copia; resuelto por [Config::effective_summary_provider]. Validado en Config::validate().

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y establece el campo agents.<alias>.summary_provider.

zerocode

En el panel Config, establece el campo agents.<alias>.summary_provider.

zeroclaw config

zeroclaw config set agents.<alias>.summary_provider <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__summary_provider=
transcription_provider TranscriptionProviderRef · default ""

Proveedor de transcripción / STT como una referencia de alias con puntos (<type>.<alias>, p. ej. "groq.<alias>"). Se resuelve a través de transcription_providers.<type>.<alias>. Vacío = el agente no tiene preferencia de transcripción; los canales que ingieren voz aún necesitan un proveedor resuelto (no existe un valor predeterminado global), por lo que un flujo de voz entrante hacia un agente con transcription_provider vacío genera un error explícito en el límite del canal.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.transcription_provider.

zerocode

En el panel Config, establece el campo agents.<alias>.transcription_provider.

zeroclaw config

zeroclaw config set agents.<alias>.transcription_provider <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__transcription_provider=
tts_provider TtsProviderRef · default ""

Proveedor de TTS como una referencia de alias con puntos (<type>.<alias>, p. ej. "openai.<alias>"). Se resuelve a través de tts_providers.<type>.<alias>. Vacío = sin TTS para este agente (no existe un concepto de proveedor predeterminado global; cada agente que quiera TTS establece su propio tts_provider).

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.tts_provider.

zerocode

En el panel Config, configure el campo agents.<alias>.tts_provider.

zeroclaw config

zeroclaw config set agents.<alias>.tts_provider <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__tts_provider=
workspace AgentWorkspaceConfig · default {"access":{},"read_memory_from":[],"unrestricted_filesystem":false}

Bloque de workspace por agente ([agents.<alias>.workspace]). Contiene la ruta del sistema de archivos del agente, la lista de permitidos de acceso entre agentes, el booleano de escape del sistema de archivos y la lista de permitidos de memoria entre agentes. El valor predeterminado es completamente aislado (sin acceso entre agentes). Consulte crate::multi_agent::AgentWorkspaceConfig.

Colócalo sobre cualquier superficie:

Panel de control del gateway

Abre /config/agents y configura el campo agents.<alias>.workspace.

zerocode

En el panel Config, configure el campo agents.<alias>.workspace.

zeroclaw config

zeroclaw config set agents.<alias>.workspace <value>

Variable de entorno

Exporte la anulación (shells POSIX; colóquelo en ~/.bashrc, ~/.zshrc, .env o un Dockerfile). Reemplace <alias> con el alias literal:

export ZEROCLAW_agents__<alias>__workspace=

A dónde apuntan las referencias

La mayor parte de la configuración de un agente son alias con notación de puntos que apuntan a elementos configurados en sus propias secciones. El agente no posee ninguno de ellos, solo los referencia, y el mismo destino puede ser compartido por muchos agentes. La tabla de campos anterior es la lista autoritativa; aquí se indica a dónde conduce cada tipo de referencia:

  • Proveedores (Model Providers): el modelo de chat del agente y sus proveedores complementarios de texto a voz, transcripción y clasificación nombran cada uno una entrada [providers.models.<type>.<alias>].
  • Perfiles (Seguridad y Autonomía): el perfil de riesgo establece la postura de autonomía y sandbox; el perfil de tiempo de ejecución establece el ajuste operativo (límites de iteración de herramientas, presupuestos, tiempos de espera, límites de contexto).
  • Canales (Canales): las superficies de mensajería en las que responde el agente. Cuando dos agentes comparten un canal, un grupo de pares decide si pueden dirigirse entre sí.
  • Bundles (Herramientas): grupos reutilizables de habilidades, conocimiento y servidores MCP adjuntados por alias.
  • Cron: trabajos programados con nombre vinculados al agente.

Las anulaciones por agente

Parte de la configuración de un agente no es una referencia sino un bloque por agente que anula un valor predeterminado global: el workspace, la memoria y la identidad. Esos son el lado en disco de la unión, cubiertos en Filesystem components.

Validación

Config::validate() falla de forma explícita al iniciar si model_provider no se resuelve a una entrada de proveedor configurada, o si risk_profile no se resuelve a un perfil de riesgo configurado. Una referencia incorrecta se detecta antes de que el agente se ejecute, no se ignora silenciosamente.