Chaque agent dans une configuration multi-agent peut remplacer la politique globale de sandbox et d’outils. Cette page couvre la configuration par agent, les règles de précédence et des exemples.Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
Isolation en sandbox
Backends et modes — référence complète du sandbox.
Sandbox vs politique d’outils vs mode élevé
Déboguer « pourquoi est-ce bloqué ? »
Mode élevé
Exécution élevée pour les expéditeurs approuvés.
Exemples de configuration
Exemple 1 : agent personnel + agent familial restreint
Exemple 1 : agent personnel + agent familial restreint
- agent
main: s’exécute sur l’hôte, accès complet aux outils. - agent
family: s’exécute dans Docker (un conteneur par agent), uniquementreadet les envois de messages dans la conversation actuelle.
Exemple 2 : agent de travail avec sandbox partagé
Exemple 2 : agent de travail avec sandbox partagé
Exemple 2b : profil de codage global + agent de messagerie uniquement
Exemple 2b : profil de codage global + agent de messagerie uniquement
- les agents par défaut obtiennent les outils de codage.
- l’agent
supportest limité à la messagerie (+ outil Slack).
Exemple 3 : différents modes de sandbox par agent
Exemple 3 : différents modes de sandbox par agent
Précédence de la configuration
Lorsque des configurations globales (agents.defaults.*) et propres à l’agent (agents.list[].*) existent toutes deux :
Configuration du sandbox
Les paramètres propres à l’agent remplacent les paramètres globaux :agents.list[].sandbox.{docker,browser,prune}.* remplace agents.defaults.sandbox.{docker,browser,prune}.* pour cet agent (ignoré lorsque la portée du sandbox se résout en "shared").Restrictions d’outils
L’ordre de filtrage est le suivant :Profil d’outils du fournisseur
tools.byProvider[provider].profile ou agents.list[].tools.byProvider[provider].profile.Règles de précédence
Règles de précédence
- Chaque niveau peut restreindre davantage les outils, mais ne peut pas réautoriser des outils refusés par des niveaux précédents.
- Si
agents.list[].tools.sandbox.toolsest défini, il remplacetools.sandbox.toolspour cet agent. - Si
agents.list[].tools.profileest défini, il remplacetools.profilepour cet agent. - Les clés d’outils de fournisseur acceptent soit
provider(par exemplegoogle-antigravity), soitprovider/model(par exempleopenai/gpt-5.4).
Comportement d’une liste d’autorisation vide
Comportement d’une liste d’autorisation vide
Si une liste d’autorisation explicite dans cette chaîne laisse l’exécution sans aucun outil appelable, OpenClaw s’arrête avant de soumettre l’invite au modèle. C’est intentionnel : un agent configuré avec un outil manquant comme
agents.list[].tools.allow: ["query_db"] doit échouer clairement jusqu’à ce que le Plugin qui enregistre query_db soit activé, au lieu de continuer comme agent texte uniquement.group:*, qui s’étendent à plusieurs outils. Consultez Groupes d’outils pour la liste complète.
Les remplacements élevés par agent (agents.list[].tools.elevated) peuvent restreindre davantage l’exécution élevée pour des agents spécifiques. Consultez Mode élevé pour plus de détails.
Migration depuis un agent unique
- Before (single agent)
- After (multi-agent)
Les anciennes configurations
agent.* sont migrées par openclaw doctor ; privilégiez désormais agents.defaults + agents.list.Exemples de restriction des outils
- Read-only agent
- Shell execution with filesystem tools disabled
- Communication-only
Piège courant : “non-main”
Tests
Après avoir configuré le sandbox et les outils multi-agents :Test tool restrictions
- Envoyez un message nécessitant des outils restreints.
- Vérifiez que l’agent ne peut pas utiliser les outils refusés.
Dépannage
Agent not sandboxed despite `mode: 'all'`
Agent not sandboxed despite `mode: 'all'`
- Vérifiez s’il existe un
agents.defaults.sandbox.modeglobal qui le remplace. - La configuration propre à l’agent est prioritaire ; définissez donc
agents.list[].sandbox.mode: "all".
Tools still available despite deny list
Tools still available despite deny list
- Vérifiez l’ordre de filtrage des outils : global → agent → sandbox → sous-agent.
- Chaque niveau ne peut que restreindre davantage, pas réaccorder.
- Vérifiez avec les logs :
[tools] filtering tools for agent:${agentId}.
Container not isolated per agent
Container not isolated per agent
- Définissez
scope: "agent"dans la configuration de sandbox propre à l’agent. - La valeur par défaut est
"session", ce qui crée un conteneur par session.
Articles connexes
- Mode élevé
- Routage multi-agent
- Configuration du bac à sable
- Bac à sable vs politique des outils vs mode élevé — débogage de « pourquoi est-ce bloqué ? »
- Bac à sable — référence complète du bac à sable (modes, portées, backends, images)
- Gestion des sessions