Reforçando Limites Rígidos para Agentes de IA do OpenClaw: Controle de Aprovação e Limites de Concorrência

Um desenvolvedor executando um bot OpenClaw em um Mac mini com Ollama (GLM 5.2, fallback para Anthropic Sonnet 4.6 e Haiku) encontrou um problema clássico: o bot viola repetidamente regras rígidas—como "nunca envie e-mails sem aprovação" e "máximo de 5 chamadas concorrentes"—mesmo confirmando entendimento a cada vez. A hipótese do usuário está correta: isso é regras-como-contexto, não regras-como-constraints. O modelo trata instruções como aconselhamento, então nenhuma quantidade de prompt ou reforço de memória resolve.
A correção padrão é mover a aplicação para fora do loop de raciocínio do modelo. Você não pode confiar em um preditor estatístico de texto para impor limites rígidos; você precisa de verificações determinísticas na camada de orquestração.
Gate de Aprovação para Chamadas de Ferramentas
Para gate de e-mails (ou qualquer ação perigosa) atrás de aprovação, envolva a chamada de ferramenta em um padrão humano-no-loop:
- Quando o modelo solicitar o envio de e-mail, intercepte a chamada antes que ela execute.
- Apresente um prompt de confirmação no Discord (por exemplo, botões ou uma reação).
- Apenas se o usuário aprovar, execute a chamada de API real.
# Pseudo-código no seu manipulador de ferramentas OpenClaw
if tool == "send_email":
message = f"Aprovar envio de e-mail para {to}?"
if not await discord_approval(message):
return "Usuário rejeitou. Não envie."
# prossiga com a chamada de API de e-mail
Isso garante que o modelo fisicamente não possa contornar o gate—não importa o que ele diga.
Limites de Concorrência na Camada de Orquestração
Para limites de concorrência como "máximo 5", implemente um semáforo ou contador no despachante de comandos:
import asyncio
semaphore = asyncio.Semaphore(5)
async def handle_tool_call(tool, args):
async with semaphore:
# execute a chamada de ferramenta
Qualquer tentativa acima do limite espera ou falha imediatamente, independentemente da intenção do modelo.
Isso é um Problema Específico do GLM/Ollama?
O usuário pergunta se isso é específico do GLM ou geral para modelos locais. Com base na discussão do r/openclaw, isso é uma limitação geral de LLMs—todos os modelos tratam instruções como contexto, não como restrições. Apenas prompts não podem impor limites rígidos. A solução sempre requer aplicação em nível de infraestrutura.
Recomendação
Pare de reafirmar regras na memória ou habilidades. Em vez disso, construa verificações explícitas na sua camada de chamada de ferramentas. Trate o modelo como um motor de sugestões, não um aplicador de políticas.
📖 Leia a fonte completa: r/openclaw
👀 See Also
A resposta de um subagente não é um comprovante de conclusão: lista de verificação do orquestrador
O sessions_spawn do OpenClaw é não bloqueante—uma resposta não significa conclusão. Use yield e Task Flow, e reconcilie o estado do filho para evitar falsos sucessos.

Verificar créditos de reset de Codex não utilizados em várias contas ChatGPT via OpenClaw
Um usuário descobriu que créditos de redefinição de limite de taxa estavam expirando em uma segunda conta OAuth. O agente varreu ambas, encontrou 6 não utilizados no total. Resgatou um para limpar o tempo de espera em menos de um minuto. Armadilhas incluem endpoint não documentado e problemas de descoberta de habilidades.

Mudança do GitHub Copilot Pro+ para a API Direta da Anthropic: Uma Análise de Custos
Uma comparação de custos de um desenvolvedor mostra que a API direta da Anthropic pode ser mais barata que o GitHub Copilot Pro+ para desenvolvedores individuais, com o Sonnet 4.6 cobrindo 80% dos casos de uso do Opus.
Inferência de LLM: Técnicas para a Fronteira Eficiente
Guia da Baseten sobre engenharia de inferência de LLM: como tamanho de lote, paralelismo e quantização permitem trocar latência por throughput ou expandir toda a fronteira.