VolundOS

Guardrails: a barreira que o agente não consegue contornar

Instrução no prompt depende de o modelo lembrar. Um guardrail roda fora do agente, em quatro pontos do turno, e o que a organização definiu o agente não afrouxa.

Atualizado em 11 de setembro de 2026

Guardrails: a barreira que o agente não consegue contornar

Camada funcional

Pedir a um agente, nas instruções, que ele não faça algo depende de o modelo lembrar do pedido. Isso não é barreira: é torcida.

Um guardrail é a outra coisa. Ele roda fora do agente, em pontos definidos do turno, e o resultado dele não é uma sugestão: é permissão, recusa ou correção — e qual desses três está disponível depende de quando ele dispara, porque uma ferramenta que já rodou não dá para impedir. Três eixos o descrevem:

  • Onde vale — na organização inteira, ou num agente específico.
  • Quando dispara — um dos quatro momentos do turno, e não só "antes de usar uma ferramenta".
  • Quem decide — negar direto pela regra, perguntar a um sistema seu, perguntar a um modelo, ou perguntar a um agente da sua própria organização, que julga pelas instruções que ele tem.

O que a organização define, o agente não afrouxa

O guardrail da organização é sempre avaliado. A configuração de um agente pode somar restrições — nunca relaxar, nunca desligar o que a organização definiu.

E a tela do agente mostra a política da organização primeiro, em modo leitura. A intenção é que ninguém descubra que ela existe só no momento em que o agente travar.

Como você usa

  1. Para a organização, na área de guardrails de governança: quem administra cria, edita e remove; qualquer membro consegue ler a lista.
  2. Para um agente, no menu de mais opções do diálogo do agente: disponível para quem pode configurar aquele agente. A tela mostra primeiro, em leitura, o que vem da organização — com o selo da origem — e depois o que é daquele agente.
  3. Ao criar um guardrail você escolhe quando ele dispara, em que ferramentas (todas, ou uma lista), que condição filtra a chamada antes de acionar o julgamento, quem decide e o que fazer com uma reprovação: bloquear, ou — só no gatilho de antes da ferramenta — reescrever o argumento.
  4. O formulário documenta o contrato enquanto você preenche: para cada gatilho, quais dados chegam ao julgamento; para cada tipo de decisor, o formato de resposta esperado, com exemplo copiável. Esse texto sai da mesma definição que o avaliador consome, então ele não pode divergir do que a máquina faz.
  5. O botão Testar roda o guardrail contra uma entrada de exemplo, sem gravar nada, e mostra o veredito cru — inclusive o motivo que o agente receberia. Ele existe porque, antes, um sistema seu respondendo fora do formato só dava sinal quando um agente real travava no meio de uma tarefa.
  6. O efeito vale a partir da próxima execução. A política é montada quando o agente parte. Uma conversa já em andamento não recebe a política nova, e a tela diz isso em vez de prometer efeito imediato.

Os quatro momentos

Quando disparaConsegue bloquear?Consegue reescrever?Vale em todos os motores?
Antes de usar uma ferramentasimsimsim
Depois de usar uma ferramentanão — a ferramenta já rodou; o que ele devolve é uma correçãonãonão
Antes de o agente formular a respostasimnãosim
Ao encerrar o turnosim, obrigando a continuarnãonão

Antes de usar uma ferramenta vale em todos os motores de execução. Depois de usar uma ferramenta e ao encerrar o turno só são avaliados quando o agente roda no executor Claude Code — nos outros motores eles não chegam a ser consultados.

Antes de o agente formular a resposta é a exceção, desde 27/08/2026: essa barreira passou a ser avaliada assim que a mensagem chega, antes de o agente começar a trabalhar — e por isso independe do motor. A seção abaixo conta o que muda na conversa.

A tela avisa isso ao escolher depois de usar uma ferramenta ou ao encerrar o turno — os dois que ela marca como indisponíveis fora do executor Claude Code. O aviso não impede salvar, porque o mesmo agente pode trocar de executor depois, e uma configuração recusada agora teria que ser refeita lá na frente.

A recusa passou a aparecer na hora, e com o motivo certo (27/08/2026)

Até 26/08/2026, a barreira antes de o agente formular a resposta só era decidida depois que o agente já tinha começado a trabalhar. Ela funcionava — nenhum texto barrado chegava ao modelo —, mas o que a conversa mostrava enganava: o turno terminava sem resposta nenhuma, e aparecia "O agente interrompeu o trabalho inesperadamente", igual a uma falha real, no lugar do motivo da política. Em alguns casos a plataforma chegava a trocar o agente de executor, como se a causa fosse o executor e não uma decisão de governança.

Agora a mesma barreira é avaliada assim que a mensagem chega. Duas consequências:

  • O motivo da política aparece na hora, como uma mensagem do agente na conversa, em vez de um aviso de falha depois da espera.
  • Passa a valer em todos os motores, inclusive naqueles que não tinham como avaliá-la antes.

Essa avaliação antecipada é o único ponto do mecanismo que, ao falhar por conta própria, deixa a mensagem seguir em frente — e ela segue direto para a barreira que já existia, que continua recusando por padrão. O contrário custaria mais caro do que protege: uma instabilidade em ler a política pararia toda conversa da plataforma, e não só as que a política alcança.

A mensagem barrada e o aviso da política continuam visíveis na conversa, para mostrar o que aconteceu, mas não voltam a ser enviados ao agente nas mensagens seguintes.

Na dúvida, bloqueia

Um guardrail é uma barreira de segurança, e barreira de segurança que falha aberta não é barreira. Todas as situações de falha foram desenhadas para o mesmo lado:

SituaçãoO que acontece
A condição usa uma forma que esta versão não reconhecebloqueia, dizendo que o guardrail precisa ser reconfigurado — não vira "vale para tudo", porque para uma ação que nega, "avaliar mais" seria bloquear mais
Não foi possível ler a política no começo da execuçãotenta de novo; persistindo, adota o plano conservador — registra todo gatilho de forma ampla e consulta a cada chamada
O decisor externo erra, responde fora do formato, estoura o tempo ou quebrabloqueia — a falha técnica vira reprovação, e não um erro sem decisão
A trilha de auditoria falha ao registraro guardrail não falha junto: a decisão é tomada de qualquer forma

A única exceção deliberada é o modo sombra: o guardrail avalia, registra na trilha e nunca nega. Serve para medir o efeito de uma regra antes de ligá-la de verdade.

Toda reprovação fica registrada

Reprovar — inclusive em modo sombra — grava na trilha de auditoria, como evento de segurança, com o agente identificado como autor.

Criar, editar e remover um guardrail da organização também grava, como acesso administrativo. Remover é a única ação dessa tela que amplia o que os agentes podem fazer, e por isso é a que mais importa ter registrada.

Duas decisões que valem explicar

A condição não aceita expressão regular. Só "sempre" e "contém". Isso é decisão, não lacuna: a condição roda antes de cada chamada de ferramenta, e um padrão mal formado travaria a ferramenta até o teto de tempo, em vez de apenas degradar. A mesma razão já valia para as condições de esteira.

O agente que julga julga, não executa. Quando o decisor é um agente da organização, o que se usa são as instruções e o modelo dele — ele não roda as próprias ferramentas nem abre conversa. O motivo é temporal: toda execução de agente é assíncrona por construção, e um veredito síncrono exigiria subir uma máquina e ficar perguntando se já acabou. A partida a frio, sozinha, costuma estourar o teto de espera do guardrail — que, bloqueando por padrão, travaria tudo.

O que dá para fazer, e onde

O que dá para fazerOnde
Definir uma barreira para todos os agentes da organizaçãoA área de guardrails, em governança
Definir uma barreira só para um agenteO menu de mais opções do diálogo daquele agente
Ver, em leitura, o que a organização já impõe àquele agenteA mesma tela do agente, no topo
Testar a regra contra um exemplo, sem gravarO botão de teste, no formulário
Ligar e desligar sem apagar a configuraçãoA própria lista

On this page