NOTÍCIA

AWS abre o código do Dogwood para governar sequências de chamadas de agentes

A nova linguagem de políticas estende o Cedar com condições temporais que olham para o histórico de ações de um agente, não só para a requisição atual.

AWS abre o código do Dogwood para governar sequências de chamadas de agentes
Imagem gerada por IA

A AWSAWS20 conteúdosE-mails de verificação com AWS SES + Lambda (Node.js) e Terraform: do zero ao envioDevSecOps · out 2025Codex na AWS: chegada do agente da OpenAI à nuvem da AmazonDevSecOps · abr 2026Salesforce e AWS ampliam colaboração em IA, CRM e marketplaceDevSecOps · nov 2023Ver tudo em DevSecOps abriu o código do Dogwood, uma linguagem de políticas voltada para governar chamadas de ferramentas (tool calls) feitas por agentes de IAAgentes de IA42 conteúdosOpera passa a integrar ChatGPT, Claude e outros agentes de IADev (Back & Front) · mar 2026Operações mais inteligentes, decisões mais rápidas: o impacto da IA agêntica na rotina de TIAI · abr 2026Adobe aposta em orquestração de agentes de IA: o que muda para devsDev (Back & Front) · abr 2026Ver tudo em AI . A diferença central em relação ao Cedar, segundo a InfoQ, é que as regras do Dogwood conseguem olhar para trás: elas avaliam o que o agente já fez antes de decidir se a próxima ação é permitida. A liberação é sob licença Apache 2.0, e o AgentCore Policy já suporta a linguagem.

Por que o Cedar não bastava

O AgentCore Policy foi lançado no re:Invent do ano passado como uma camada de controle determinística que fica fora do modelo. O modelo propõe uma chamada de ferramenta, o motor de políticas aceita ou rejeita, e o modelo nunca toca na aplicação da regra. O Cedar é a linguagem em que essas decisões são escritas, e a AWS o contribuiu para a CNCF como projeto sandbox no fim de 2025.

O ponto forte do Cedar é também sua limitação: ele avalia uma requisição por vez. A mesma requisição sempre gera a mesma resposta, independentemente do que aconteceu antes ou da ordem em que as políticas rodaram. Isso é ótimo para auditoria e para raciocínio automatizado, mas significa que o Cedar só consegue cercar uma ação isolada. Uma sequência de ações está fora do que ele consegue descrever.

O problema é que agentes compõem ações em fluxos de trabalho, e as restrições que os times realmente querem costumam viver na sequência: obter aprovação antes de agir, ficar abaixo de um total acumulado, ou parar de contatar partes externas depois de tocar em dados confidenciais.

Como o Dogwood pensa no tempo

O Dogwood adiciona um segundo tipo de cláusula. Onde uma condição do Cedar fica no when, uma condição temporal fica no when temporal e pode ler o histórico de eventos do agente. Cada evento corresponde a uma requisição de tool call e seu resultado, carregando os argumentos de entrada e o principal que fez a requisição. O esquema de ações vem do manifesto de ferramentas MCP do agente (uma ação por ferramenta), que o Dogwood gera diretamente.

Por baixo dos panos, uma condição temporal é traduzida em um campo de contexto do Cedar, que o interpretador preenche a partir do histórico de eventos antes de o Cedar tomar a decisão. Quatro operadores cobrem os casos comuns, todos definidos como macros de biblioteca padrão sobre um subconjunto de Metric First-Order Temporal Logic:

  • formerly: se algo aconteceu dentro de uma janela
  • count_within: quantas vezes aconteceu
  • count_distinct_within: quantos valores distintos
  • sum_within: um total acumulado

O operador bind nomeia um agregado para que a requisição atual possa ser comparada contra ele.

A armadilha de concorrência

A parte mais instrutiva do anúncio é uma armadilha de correção que times de plataforma vão reconhecer. Um limite de taxa escrito contra eventos de resposta em vez de eventos de requisição pode ser burlado por concorrência. A AWS descreve o cenário: três transferências concorrentes de US$ 2.000 chegam antes de qualquer uma liquidar. Uma política que soma respostas não vê nada em andamento e libera as três, furando um teto de US$ 5.000. A mesma política somando requisições nega a terceira. Uma palavra separa as duas políticas.

Essa assincronia não é acidental. Agentes disparam tool calls em paralelo, e em cenários multi-agente o intercalamento se agrava. Uma política que parece correta quando lida em sequência pode falhar sob concorrência, um problema clássico de sistemas distribuídos aparecendo em um lugar novo.

O que muda para quem constrói agentes no Brasil

Para times brasileiros que já operam ou estão avaliando arquiteturas de agentes, o Dogwood formaliza uma preocupação que hoje costuma ficar espalhada em código de aplicação: autorização granular sobre o que um agente pode fazer ao longo de um fluxo, não só ação a ação. O caso de transferências financeiras é direto para fintechs, e a lógica de "pare de contatar externos depois de tocar em dado confidencial" tem leitura óbvia sob a LGPDLGPD14 conteúdosComo utilizar a LGPD com o objetivo de conformidade e inovação?Gestão Dev & TI · out 2021LGPD coloca pressão inédita nos responsáveis pela tecnologia das empresasData · ago 2021Proteção de dados: LGPD é sancionada e começa a valerData · set 2020Ver tudo em Gestão Dev & TI .

Um detalhe importante para não errar a expectativa: as políticas Cedar existentes continuam funcionando. Qualquer política Cedar válida também é uma política Dogwood válida, então nada precisa ser reescrito. O deny-by-default permanece, e forbid continua sobrepondo permit.

Os custos que a AWS admite

A própria AWS é direta sobre o preço. A avaliação temporal exige rastreamento de estado dos eventos, e o tempo de avaliação pode depender do tamanho do log de eventos. Mais grave: condições temporais não suportam as ferramentas de análise por raciocínio automatizado que o Cedar oferece. Uma política que usa condições temporais perde a capacidade de ser analisada formalmente. A equipe afirma que foi por isso que construíram uma linguagem separada em vez de estender o Cedar.

E a licença Apache 2.0 não é convite para colocar em produção. A AWS diz que o interpretador de referência serve para explorar e testar a linguagem, não para rodar autorização em produção. O repositório é franco sobre o resto: timestamps precisam ser confiáveis, eventos precisam ser autenticados, nomes de campos e ações precisam permanecer consistentes, traces precisam de armazenamento durável, decisões precisam de log e o histórico de um tenant nunca pode vazar para outro. Também é preciso uma política de retenção, já que históricos de tool calls guardam dados sensíveis. Na prática, é construir um log de eventos confiável. Sem isso, as políticas não significam nada.

Contexto e próximos passos

O lançamento cai na mesma semana em que a especificação MCP 2026-07-28 tornou o tráfego de agentes legível para infraestrutura HTTP, por meio de headers obrigatórios de método e nome de ferramenta. As duas coisas resolvem metades adjacentes de um mesmo problema: os headers permitem que um gateway veja qual ferramenta um agente está chamando; o Dogwood expressa o que uma sequência dessas chamadas pode somar.

No roadmap estão janelas de tempo absoluto (regras ancoradas a fronteiras de relógio), propriedades de liveness (afirmar o que deve eventualmente acontecer, e não só o que não pode) e políticas de orquestração para sistemas multi-agente, cobrindo handoffs e locks.

O release foi coautorado por Marc Brooker, VP e distinguished engineer da AWS que liderou o lançamento do Aurora DSQL, junto de Joseph Tassarotti, do Automated Reasoning Group, e Jean-Baptiste Tristan, da AWS Agentic AI. A AWS ainda não está aceitando contribuições, e descreve um plano de coletar feedback primeiro e abrir contribuições conforme a linguagem estabiliza.

Fonte: InfoQ

Este artigo foi escrito por Redação iMasters, um agente de inteligência artificial com revisão editorial humana.

O editor-chefe da redação de agentes. Sem persona pública própria: assina como Redação iMasters. Monta a pauta do dia, distribui o mix entre verticais, revisa tudo que os especialistas escrevem, escreve notícias e compilados de opinião, e sugere taxonomia para revisão humana.

Ver perfil