Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Anatomie d’un agent

Un agent est configuré sous la forme d’un bloc unique [agents.<alias>]. Chaque champ est soit une référence à un élément configuré ailleurs, soit une surcharge propre à l’agent. Le tableau ci-dessous est généré à partir du schéma de configuration, il correspond donc toujours à la version en cours d’exécution. Cliquez sur un champ pour le développer ; cliquez à nouveau pour voir comment le définir.

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

Bloc de publication A2A par agent ([agents.<alias>.a2a]). Contrôle si cet alias est découvrable en tant qu’agent A2A conforme à la spécification et quelles compétences résolues apparaissent sur sa carte. Fermé par défaut (published = false, aucune compétence exposée). Voir crate::multi_agent::AgentA2aConfig.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.a2a.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.a2a.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Initialise les outils mcp_bundles de cet agent lorsqu’il prend en charge une session ACP (session/new). Désactivé par défaut : les serveurs MCP sont des processus/services externes qui peuvent bloquer le démarrage lors de la connexion, et ACP session/new doit retourner rapidement. Activez cette option lorsque cet agent doit appeler ses outils mcp_bundles via ACP ; session/new prend alors en charge le coût de connexion MCP unique (borné et non fatal par serveur). Défini par agent pour que chaque profil ACP active cette option indépendamment ; lorsque cet agent est le défaut ACP (acp.default_agent, ou le seul agent configuré), le paramètre est automatiquement pris en compte pour les sessions qui omettent agentAlias.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.acp_enable_mcp.

zerocode

Dans le panneau Config, définissez le champ agents.<alias>.acp_enable_mcp.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Alias de canaux gérés par cet agent (p. ex. ["telegram.<alias>", "discord.<alias>"]). Chaque entrée est un ChannelRef résolu via [channels.<type>.<alias>] ; Config::validate() échoue explicitement en cas de références orphelines.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.channels.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.channels.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Substitution facultative pour le classificateur d’intention de réponse LLM par message (classify_channel_reply_intent dans zeroclaw-channels). Lorsque non vide, l’orchestrateur de canal achemine l’appel de classification « ce message doit-il recevoir une réponse ? » vers le [providers.models.<type>.<alias>] référencé ici, au lieu de réutiliser le model_provider de l’agent principal. La source de vérité pour api_key / uri / model / temperature, etc. est l’entrée [providers.models.<type>.<alias>] référencée. Ce champ est une référence uniquement (JAMAIS une copie), conformément au principe SINGLE SOURCE OF TRUTH d’AGENTS.md. Vide (Default) = hérite du fournisseur+modèle résolu de l’agent principal (préserve le comportement antérieur à la PR ; rétrocompatible). Cas d’usage : la classification est une simple décision REPLY/NO_REPLY peu coûteuse, qui ne nécessite pas un modèle haut de gamme. Pointez ce champ vers un petit modèle rapide/gratuit (p. ex. kimi-k2.5, qwen-turbo) tandis que model_provider reste sur le modèle de réponse coûteux (p. ex. qwen3.6-plus). Remarque : les noms de tables TOML ne peuvent pas contenir de ., donc l’alias kimi-k2.5 doit être écrit sous la forme [providers.models.custom.kimi-k2-5]. La chaîne sous-jacente model = "kimi-k2.5" peut toujours contenir des points. Les canaux ACP (IDE-direct) répondent toujours et ignorent entièrement le classificateur, donc ce champ n’a aucun effet sur le trafic ACP.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.classifier_provider.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.classifier_provider.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Alias de tâches cron. Chaque entrée référence cron[key], une tâche planifiée déclarative invoquée par le planificateur selon son déclencheur configuré. Lorsque la tâche cron se déclenche, cet agent est l’acteur qui exécute la tâche.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.cron_jobs.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.cron_jobs.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Autoriser automatiquement la délégation à chaque agent partageant le profil de risque de cet agent. La valeur par défaut true préserve la portée historique où tout pair de même profil constitue une cible de délégation. Définissez false pour exclure cet agent afin que seule la liste delegates explicite soit accessible. Le contrôle d’accès (déterminant si la délégation est autorisée) reste défini par delegation_policy.mode du profil de risque ; ceci ne fait que restreindre la portée.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.delegate_same_risk_profile.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.delegate_same_risk_profile.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Liste explicite des délégués : alias d’agent supplémentaires vers lesquels cet agent peut déléguer, au-delà des pairs de même profil. Peut être vide. Les entrées de type chaîne sont acceptées pour une édition manuelle concise et chargées en tant que délégués bornés ; la configuration enregistrée émet des entrées d’objet avec des modes explicites. Les entrées peuvent nommer des agents sur un profil de risque différent. Config::validate() échoue de manière stricte en cas d’alias orphelin, d’alias en double ou d’auto-référence.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.delegates.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.delegates.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Format d’identité par agent ([agents.<alias>.identity]). Chaque agent génère son propre IDENTITY.md / SOUL.md dans son espace de travail individuel ; ce bloc sélectionne le format (OpenClaw ou AIEOS) ainsi que la source optionnelle, en ligne ou par fichier, du document d’identité de l’agent.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.identity.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.identity.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Alias des bundles de connaissances. Additif : l’agent charge chaque bundle listé.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.knowledge_bundles.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.knowledge_bundles.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Alias des bundles MCP. Chaque entrée référence mcp_bundles[key], un groupe nommé de serveurs MCP. Sécurisé par défaut : un agent ne se voit accorder que les serveurs nommés par ses bundles. Un agent sans mcp_bundles ne reçoit aucun serveur MCP (l’omission n’est pas une autorisation). Voir Config::mcp_servers_for_agent.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.mcp_bundles.

zerocode

Dans le panneau Config, définissez le champ agents.<alias>.mcp_bundles.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Sélection du backend de mémoire par agent ([agents.<alias>.memory]). Le champ backend est verrouillé à la création de l’agent et immuable lors des chargements suivants. La valeur par défaut est Sqlite. Voir crate::multi_agent::AgentMemoryConfig.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.memory.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.memory.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Alias de fournisseur de modèle en notation pointée (p. ex. "anthropic.<alias>"). Résolu via model_providers.<type>.<alias> à l’exécution ; Config::validate() échoue de manière explicite en cas de références pendantes.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.model_provider.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.model_provider.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Contrôles de prévérification de l’intention de réponse par agent. L’appel au classifieur lit ce bloc au moment du message ; la sélection du modèle/fournisseur reste sur classifier_provider afin qu’il n’y ait qu’une seule source de vérité pour le routage.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.precheck.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.precheck.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Alias de profil de risque (p. ex. "default"). Résout les garde-fous de délégation à l’exécution.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.risk_profile.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.risk_profile.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Alias de profil d’exécution (par ex. "default"). Résout les paramètres d’agentique et d’itération.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.runtime_profile.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.runtime_profile.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Alias des lots de compétences. Chaque entrée est résolue en skill_bundles[key].directory à l’exécution ; l’agent charge chaque lot répertorié.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.skill_bundles.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.skill_bundles.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Surcharge par agent pour le fournisseur de résumé de compression de contexte, sous forme d’une référence providers.models.<type>.<alias>. Vide (Par défaut) = hériter de context_compression.summary_provider du profil d’exécution, sinon le fournisseur+modèle résolu propre à l’agent. Référence uniquement, jamais une copie ; résolu par [Config::effective_summary_provider]. Validé dans Config::validate().

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.summary_provider.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.summary_provider.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Fournisseur de transcription / STT sous forme de référence d’alias en notation pointée (<type>.<alias>, p. ex. "groq.<alias>"). Résolu via transcription_providers.<type>.<alias>. Vide = l’agent n’a pas de préférence de transcription ; les canaux qui ingèrent de la voix ont tout de même besoin d’un fournisseur résolu (il n’existe pas de valeur par défaut globale), donc un flux vocal entrant vers un agent avec un transcription_provider vide échoue bruyamment à la frontière du canal.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.transcription_provider.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.transcription_provider.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Fournisseur TTS sous forme de référence d’alias en notation pointée (<type>.<alias>, p. ex. "openai.<alias>"). Résolu via tts_providers.<type>.<alias>. Vide = pas de TTS pour cet agent (il n’existe pas de concept de fournisseur global par défaut ; chaque agent qui souhaite utiliser le TTS définit son propre tts_provider).

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.tts_provider.

zerocode

Dans le panneau Config, définissez le champ agents.<alias>.tts_provider.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

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

Bloc de workspace par agent ([agents.<alias>.workspace]). Contient le chemin du système de fichiers de l’agent, la liste d’autorisation d’accès inter-agents, le booléen d’échappement du système de fichiers et la liste d’autorisation de mémoire inter-agents. Par défaut, l’agent est entièrement confiné (aucun accès inter-agents). Voir crate::multi_agent::AgentWorkspaceConfig.

Posez-le sur n’importe quelle surface :

Tableau de bord de la passerelle

Ouvrez /config/agents et définissez le champ agents.<alias>.workspace.

zerocode

Dans le volet Config, définissez le champ agents.<alias>.workspace.

zeroclaw config

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

Variable d’environnement

Exportez le remplacement (shells POSIX ; à placer dans ~/.bashrc, ~/.zshrc, .env ou un Dockerfile). Remplacez <alias> par l’alias littéral :

export ZEROCLAW_agents__<alias>__workspace=

Où pointent les références

La majeure partie de la configuration d’un agent consiste en des alias pointés (dotted aliases) renvoyant à des éléments configurés dans leurs propres sections. L’agent n’en possède aucun, il s’y réfère simplement, et la même cible peut être partagée par plusieurs agents. Le tableau des champs ci-dessus constitue la liste de référence ; voici où mène chaque type de référence :

  • Fournisseurs (Fournisseurs de modèles) : le modèle de chat de l’agent et ses fournisseurs associés de synthèse vocale, de transcription et de classification désignent chacun une entrée [providers.models.<type>.<alias>].
  • Profils (Sécurité et autonomie) : le profil de risque définit la posture d’autonomie et de sandbox ; le profil d’exécution définit les réglages opérationnels (plafonds d’itérations d’outils, budgets, délais d’expiration, limites de contexte).
  • Canaux (Canaux) : les surfaces de messagerie sur lesquelles l’agent répond. Lorsque deux agents partagent un canal, un groupe de pairs détermine s’ils peuvent s’adresser l’un à l’autre.
  • Bundles (Outils) : groupes réutilisables de compétences, de connaissances et de serveurs MCP attachés par alias.
  • Cron : tâches planifiées nommées liées à l’agent.

Les remplacements par agent

Une partie de la configuration d’un agent n’est pas une référence mais un bloc par agent qui remplace une valeur globale par défaut : le workspace, la mémoire et l’identité. Il s’agit du volet stocké sur disque de la jointure, traité dans Composants Filesystem.

Validation

Config::validate() échoue bruyamment au démarrage si model_provider ne correspond pas à une entrée de fournisseur configurée, ou si risk_profile ne correspond pas à un profil de risque configuré. Une référence incorrecte est détectée avant l’exécution de l’agent, et non ignorée silencieusement.