Renforcement des garde-fous stricts pour les agents IA OpenClaw : contrôle d'approbation et limites de concurrence

Un développeur exécutant un bot OpenClaw sur un Mac mini avec Ollama (GLM 5.2, repli sur Anthropic Sonnet 4.6 et Haiku) a rencontré un problème classique : le bot enfreint à plusieurs reprises des règles strictes, comme « n'envoyez jamais d'e-mails sans approbation » et « maximum 5 appels simultanés », même s'il confirme avoir compris à chaque fois. L'hypothèse de l'utilisateur est juste : il s'agit de règles comme contexte, pas de règles comme contraintes. Le modèle traite les instructions comme des conseils, donc aucun rappel ou renforcement de mémoire ne corrige cela.
La solution standard est de déplacer l'application en dehors de la boucle de raisonnement du modèle. On ne peut pas compter sur un prédicteur statistique de texte pour imposer des limites strictes ; il faut des vérifications déterministes dans la couche d'orchestration.
Contrôle d'approbation pour les appels d'outils
Pour soumettre les e-mails (ou toute action dangereuse) à approbation, intégrez l'appel d'outil dans un schéma avec intervention humaine :
- Lorsque le modèle demande l'envoi d'un e-mail, interceptez l'appel avant son exécution.
- Présentez une invite de confirmation dans Discord (par exemple, des boutons ou une réaction).
- Uniquement si l'utilisateur approuve, exécutez l'appel API réel.
# Pseudo-code dans votre gestionnaire d'outils OpenClaw
if tool == "send_email":
message = f"Approuver l'envoi de l'e-mail à {to} ?"
if not await discord_approval(message):
return "Utilisateur rejeté. N'envoyez pas."
# procéder à l'appel API e-mail
Cela garantit que le modèle ne peut physiquement pas contourner le contrôle, quoi qu'il dise.
Limites de concurrence au niveau de l'orchestration
Pour les limites de concurrence comme "max 5", implémentez un sémaphore ou un compteur dans le répartiteur de commandes :
import asyncio
semaphore = asyncio.Semaphore(5)
async def handle_tool_call(tool, args):
async with semaphore:
# exécuter l'appel d'outil
Toute tentative dépassant la limite attend ou échoue immédiatement, indépendamment de l'intention du modèle.
Est-ce un problème spécifique à GLM/Ollama ?
L'utilisateur demande si cela est spécifique à GLM ou général aux modèles locaux. D'après la discussion r/openclaw, il s'agit d'une limitation générale des LLM : tous les modèles traitent les instructions comme du contexte, pas comme des contraintes. Le seul prompt ne peut pas imposer des limites strictes. La solution nécessite toujours une application au niveau de l'infrastructure.
Recommandation
Arrêtez de reformuler les règles dans la mémoire ou les compétences. Au lieu de cela, intégrez des vérifications explicites dans votre couche d'appel d'outils. Traitez le modèle comme un moteur de suggestions, pas comme un exécuteur de politiques.
📖 Lire la source complète : r/openclaw
👀 See Also

Graph Memory vs Markdown : pourquoi les fichiers plats deviennent une dette de prompt à grande échelle
Un développeur partage comment un système de mémoire en Markdown pour agents IA a grossi jusqu'à 80+ fichiers et 5 millions de caractères, transformant la récupération en jeu de devinettes. La solution : une mémoire en graphe avec nœuds et arêtes, pour que l'agent ne rende que le contexte pertinent par tâche.

La synchronisation iCloud Desktop/Documents provoque des problèmes de perte de fichiers avec Claude sur Mac
Un utilisateur de Mac signale que l'activation de la synchronisation iCloud Drive pour les dossiers Bureau et Documents entraîne la création de fichiers en double par Claude et peut provoquer une perte de données permanente, y compris des dossiers cachés /.claude que iCloud ne sauvegarde pas.

Claude Code Visual : Notes pratiques sur les Hooks, Sous-agents, MCP et CLAUDE.md
Un développeur partage son expérience pratique avec Claude Code Visual, couvrant la syntaxe des hooks MCP, CLAUDE.md pour le contexte du projet, les modèles de délégation des sous-agents et la commande /loop pour les tâches récurrentes.

Comment le routage de tâches simples vers des modèles moins chers a réduit les coûts de l'IA de 40 %
Un utilisateur d'OpenClaw a réduit sa facture d'IA de 40 % en analysant les journaux d'utilisation et en redirigeant les tâches simples comme les opérations sur fichiers et les questions-réponses vers des modèles moins chers tels que DeepSeek-v3 et Gemini Flash, tout en réservant Claude Sonnet pour les tâches de raisonnement complexes.