DEV Community

Cover image for FullAgenticStack: Um Paradigma de Arquitetura de Software para Sistemas Totalmente Agênticos
suissAI
suissAI

Posted on

FullAgenticStack: Um Paradigma de Arquitetura de Software para Sistemas Totalmente Agênticos

Resumo

FullAgenticStack é um paradigma de arquitetura de software no qual agentes de inteligência artificial não são componentes auxiliares adicionados a uma aplicação tradicional.

Em vez disso, a agência torna-se uma primitiva arquitetural de primeira classe distribuída por toda a stack de software.

O conceito surgiu em 2025 a partir de experimentações práticas com agentes operando simultaneamente no frontend, no backend e na camada de dados. A percepção que originou o termo foi simples:

Se agentes são responsáveis por interagir com o usuário, executar regras de negócio, coordenar infraestrutura, manipular dados e produzir comportamento do sistema, então a arquitetura deixou de ser apenas “habilitada por IA”. A stack inteira tornou-se agêntica.

Um sistema FullAgenticStack, portanto, não é definido apenas pela existência de um LLM, chatbot ou agente autônomo.

Ele é definido pelo fato de que o próprio sistema é exposto, interpretado, orquestrado, executado, observado e evoluído através de agentes.

Este documento formaliza os requisitos arquiteturais de FullAgenticStack e propõe diferentes níveis de implementação, desde a arquitetura mínima compatível até um sistema totalmente distribuído, multimodal, poliglota e baseado em Zero Trust.


1. Motivação

Arquiteturas tradicionais de software normalmente separam o sistema em camadas como:

Frontend
   ↓
API
   ↓
Application
   ↓
Domain
   ↓
Database
Enter fullscreen mode Exit fullscreen mode

A inteligência artificial costuma ser introduzida como mais um componente isolado:

Frontend
   ↓
Backend
   ↓
AI API
   ↓
Database
Enter fullscreen mode Exit fullscreen mode

Nesse modelo, IA é apenas uma funcionalidade.

O software continua estruturado em torno de telas, formulários, endpoints, CRUDs, controllers e services.

FullAgenticStack altera essa relação.

Em vez de tratar inteligência artificial como mais um serviço, a arquitetura passa a tratar agentes como atores computacionais distribuídos por toda a stack.

Uma arquitetura FullAgenticStack passa, portanto, a se aproximar de:

Intenção Humana
      ↓
Interface em Linguagem Natural
      ↓
Classificação de Intenção
      ↓
Orquestração Agêntica
      ↓
Agents / Actors / Actions
      ↓
Dados / Infraestrutura / Serviços
      ↓
Evidências / Eventos / Observabilidade
Enter fullscreen mode Exit fullscreen mode

A principal abstração deixa de ser:

endpoint → controller → service
Enter fullscreen mode Exit fullscreen mode

e passa a ser:

intent → behavior → actions
Enter fullscreen mode Exit fullscreen mode

2. Definição

FullAgenticStack pode ser definido como:

Um paradigma de arquitetura de software no qual agência é uma primitiva computacional de primeira classe distribuída por toda a stack, permitindo que humanos e agentes interajam com o sistema por meio de intenções em linguagem natural, classificadas, orquestradas e executadas por agentes especializados responsáveis por interfaces, aplicação, domínio, dados, infraestrutura, segurança, observabilidade e recuperação.

Um sistema não pode ser considerado FullAgenticStack apenas porque possui um assistente de IA.

As funcionalidades reais do sistema precisam estar acessíveis através da arquitetura agêntica.

Essa distinção é fundamental.

A arquitetura:

Aplicação Tradicional
        +
      Chatbot
Enter fullscreen mode Exit fullscreen mode

não é FullAgenticStack.

O chatbot é apenas mais uma interface.

Em FullAgenticStack:

Intent
  ↓
Agentic Runtime
  ↓
System Capability
Enter fullscreen mode Exit fullscreen mode

A arquitetura agêntica passa a fazer parte do próprio modelo de execução.


3. Princípio Central: Tudo é uma Intenção

A regra arquitetural mais importante de FullAgenticStack é:

Toda funcionalidade disponível no sistema DEVE poder ser expressa e executada como um pedido em linguagem natural.

Se uma operação pode ser realizada através de:

interface gráfica
botão
API
comando
workflow
automação
Enter fullscreen mode Exit fullscreen mode

essa mesma capacidade deve estar disponível através de intenção.

Por exemplo, se um sistema financeiro oferece:

Criar cliente
Gerar cobrança
Cancelar cobrança
Analisar fluxo de caixa
Criar pagamento Pix
Buscar transação
Conciliar conta
Gerar relatório
Enter fullscreen mode Exit fullscreen mode

ele também deve aceitar pedidos como:

"Crie um cliente chamado João Silva."

"Gere uma cobrança de R$ 1.500 para a ACME Ltda."

"Mostre todas as cobranças vencidas deste mês."

"Concilie as transações bancárias de hoje."

"Gere o relatório de fluxo de caixa dos últimos 90 dias."
Enter fullscreen mode Exit fullscreen mode

A interface em linguagem natural não é uma camada de conveniência.

Ela faz parte do contrato arquitetural.


4. Rota Obrigatória de Linguagem Natural

Toda implementação FullAgenticStack DEVE expor pelo menos um ponto de entrada capaz de receber pedidos em linguagem natural.

A interface mínima canônica é:

POST /intent
Enter fullscreen mode Exit fullscreen mode

ou outra rota semanticamente equivalente.

Exemplo:

POST /intent
Content-Type: application/json
Enter fullscreen mode Exit fullscreen mode
{
  "input": "Mostre todos os clientes com cobranças vencidas"
}
Enter fullscreen mode Exit fullscreen mode

O runtime é responsável por transformar o pedido em um fluxo executável.

Conceitualmente:

POST /intent
     ↓
Normalização da Entrada
     ↓
Classificação da Intenção
     ↓
Resolução de Contexto
     ↓
Autorização
     ↓
Resolução do Behavior
     ↓
Seleção do Agent
     ↓
Orquestração de Actions
     ↓
Execução
     ↓
Evidência
     ↓
Resposta
Enter fullscreen mode Exit fullscreen mode

Quem faz o pedido não precisa saber:

qual serviço existe
qual microserviço é responsável
qual banco contém a informação
qual agente executa a operação
qual linguagem implementa a Action
qual endpoint interno deve ser chamado
Enter fullscreen mode Exit fullscreen mode

O usuário declara sua intenção.

O runtime resolve a execução.


5. Entrada Multimodal é Obrigatória

Uma interface FullAgenticStack NÃO DEVE ser limitada a texto digitado.

O ingresso de intenção deve suportar, no mínimo:

Texto
Áudio
Imagem
Enter fullscreen mode Exit fullscreen mode

Essas modalidades representam diferentes formas da mesma entidade fundamental:

Intenção Humana
Enter fullscreen mode Exit fullscreen mode

Por exemplo:

TEXTO

"Cadastre esta compra."
Enter fullscreen mode Exit fullscreen mode
ÁUDIO

"Eu comprei 20 caixas do produto X do fornecedor Y."
Enter fullscreen mode Exit fullscreen mode
IMAGEM

[foto de uma nota fiscal]
Enter fullscreen mode Exit fullscreen mode

Todas devem convergir para o mesmo pipeline agêntico:

Texto ────┐
Áudio ────┼──> Multimodal Intake
Imagem ───┘
                ↓
       Normalização Semântica
                ↓
       Classificação de Intenção
                ↓
             Execução
Enter fullscreen mode Exit fullscreen mode

Modalidades adicionais PODEM ser suportadas:

Vídeo
Documentos
Dados de sensores
Localização
Eventos estruturados
Entrada de dispositivos
Enter fullscreen mode Exit fullscreen mode

mas texto, áudio e imagem formam o modelo multimodal mínimo.


6. Arquitetura com uma Única Rota Humana

Uma arquitetura FullAgenticStack válida pode expor somente uma rota pública da aplicação:

POST /intent
Enter fullscreen mode Exit fullscreen mode

Humanos interagem exclusivamente com esse ponto de entrada.

Internamente, o sistema executa todo o roteamento e a orquestração.

Exemplo:

Humano
  ↓
POST /intent
  ↓
GatewayAgent
  ↓
Intent Resolver
  ↓
┌─────────────────────────────┐
│ FinancialAgent              │
│ CustomerAgent               │
│ InventoryAgent              │
│ SalesAgent                  │
│ SupportAgent                │
│ ReportingAgent              │
└─────────────────────────────┘
Enter fullscreen mode Exit fullscreen mode

Internamente, os agentes podem se comunicar por:

eventos
mensagens
actors
filas
streams
RPC
A2A
MCP
APIs internas
Enter fullscreen mode Exit fullscreen mode

mas esses mecanismos não precisam ser expostos diretamente às pessoas.

Nesse modelo, a API humana pode ser reduzida semanticamente a:

POST /
Enter fullscreen mode Exit fullscreen mode

significando:

"Peça ao sistema para fazer alguma coisa."
Enter fullscreen mode Exit fullscreen mode

7. Humanos Não Devem Conhecer a API Interna

APIs tradicionais obrigam o consumidor a conhecer detalhes de implementação.

Exemplo:

POST /customers
POST /invoices
GET /reports
POST /payments
PATCH /orders/:id
Enter fullscreen mode Exit fullscreen mode

FullAgenticStack inverte essa relação.

O usuário expressa o objetivo:

"Crie um cliente."

"Cancele a cobrança 882."

"Gere um relatório."

"Pague esta cobrança usando Pix."
Enter fullscreen mode Exit fullscreen mode

O runtime determina qual capability deve executar o pedido.

Assim:

API Tradicional

Humano
  ↓
entende a API
  ↓
escolhe endpoint
  ↓
formata payload
Enter fullscreen mode Exit fullscreen mode

transforma-se em:

FullAgenticStack

Humano
  ↓
expressa a intenção
  ↓
runtime entende a arquitetura
  ↓
runtime orquestra a execução
Enter fullscreen mode Exit fullscreen mode

O conhecimento sobre o sistema pertence ao runtime, não ao usuário.


8. Intent como Interface Universal do Sistema

Um dos princípios centrais de FullAgenticStack é:

Intent é a interface universal entre humanos, agentes e capabilities de software.

Em vez de projetar o sistema em torno de centenas de comandos públicos:

create_customer
delete_customer
create_invoice
send_invoice
cancel_invoice
create_product
update_stock
find_order
Enter fullscreen mode Exit fullscreen mode

a interface pública pode permanecer estável:

submit(intent)
Enter fullscreen mode Exit fullscreen mode

enquanto o catálogo interno de capabilities evolui independentemente.

Isso reduz o acoplamento entre o usuário e os detalhes de implementação.

Também permite que a mesma capability seja invocada por:

Web
Mobile
WhatsApp
Voz
Terminal
Wearables
Automação
Outro Agent
Enter fullscreen mode Exit fullscreen mode

sem redefinir a operação de domínio.


9. WhatsApp-First como Interface FullAgenticStack

Um dos primeiros contextos práticos dos quais FullAgenticStack surgiu foi o desenvolvimento de software WhatsApp-First.

Em uma arquitetura WhatsApp-First:

Mensagem no WhatsApp
       ↓
      Intent
       ↓
 Agentic Runtime
       ↓
    Behavior
       ↓
     Actions
       ↓
    Resposta
Enter fullscreen mode Exit fullscreen mode

O WhatsApp deixa de ser apenas um canal de notificação.

Ele torna-se uma interface de software.

Pedidos como:

"Mostre as vendas de hoje."

"Crie uma cobrança para Maria."

"Quanto temos em estoque?"

"Pague esta conta."

"Envie o relatório de ontem."
Enter fullscreen mode Exit fullscreen mode

substituem grande parte da navegação tradicional.

Entretanto, FullAgenticStack é mais amplo que WhatsApp-First.

WhatsApp-First é apenas uma possível interface humana para uma arquitetura FullAgenticStack.


10. Níveis de Maturidade FullAgenticStack

Implementações FullAgenticStack podem ser compreendidas através de níveis crescentes de integração arquitetural.

Nível 0 — AI-Enhanced

Software Tradicional
       +
      LLM
Enter fullscreen mode Exit fullscreen mode

Exemplo:

aplicação + chatbot
Enter fullscreen mode Exit fullscreen mode

Isso não é FullAgenticStack.


Nível 1 — Agentic Interface

A linguagem natural passa a poder executar funcionalidades reais do sistema.

Humano
  ↓
Linguagem Natural
  ↓
Agent
  ↓
Serviços Tradicionais
Enter fullscreen mode Exit fullscreen mode

Nesse nível, o backend ainda pode ser tradicional.


Nível 2 — Agentic Orchestration

A aplicação introduz agentes especializados.

Intent
  ↓
Orchestrator
  ↓
Agents Especializados
  ↓
Actions
Enter fullscreen mode Exit fullscreen mode

Exemplo:

CustomerAgent
InventoryAgent
PaymentAgent
ReportAgent
Enter fullscreen mode Exit fullscreen mode

Nível 3 — FullAgenticStack

Agentes passam a existir nas principais camadas do software.

Interface Agents
Application Agents
Domain Agents
Data Agents
Infrastructure Agents
Security Agents
Observability Agents
Enter fullscreen mode Exit fullscreen mode

A agência torna-se distribuída por toda a stack.


Nível 4 — FullAgenticStack Native

O próprio sistema é projetado em torno de primitivas agênticas.

Em vez de adaptar uma arquitetura existente a agentes, o sistema é construído usando:

Intent
Agent
Actor
Behavior
Action
Event
Policy
Proof
Supervisor
Enter fullscreen mode Exit fullscreen mode

O runtime passa a controlar a orquestração.

A aplicação torna-se progressivamente declarativa.


Nível 5 — FullAgenticStack Extreme

O nível máximo de implementação combina:

Multimodal Intent
+
A2UI
+
Polyglot Agents
+
Agentic Data Layer
+
Event-Driven Architecture
+
Continuous Observability
+
Self-Healing
+
eXtreme Zero Trust
Enter fullscreen mode Exit fullscreen mode

Nesse nível, a arquitetura é agêntica da interface até a infraestrutura.


11. A2UI como Modelo de Frontend de Nível Mais Alto

O frontend FullAgenticStack mais avançado não contém apenas um chat.

Agentes podem gerar dinamicamente estruturas de interface utilizando mecanismos de A2UI — Agent-to-User Interface.

Conceitualmente:

User Intent
    ↓
UIAgent
    ↓
Context
    ↓
A2UI
    ↓
Interface Renderizada
Enter fullscreen mode Exit fullscreen mode

A interface torna-se adaptativa.

Em vez de criar antecipadamente todas as telas:

CustomerScreen
InvoiceScreen
PaymentScreen
ReportScreen
Enter fullscreen mode Exit fullscreen mode

a aplicação pode gerar a estrutura de interação apropriada para cada intenção.

O frontend torna-se, portanto, mais uma projeção do estado agêntico.


12. Agentes Poliglotas

FullAgenticStack não exige que todos os agentes utilizem a mesma linguagem de programação.

Em uma implementação madura, cada Action pode utilizar a linguagem mais adequada aos seus requisitos.

Exemplo:

GatewayAgent       → TypeScript
FinancialAgent     → Rust
EdgeAgent          → Zig
ReasoningAgent     → Prolog
DataScienceAgent   → Python
CompilerAgent      → Haskell
Enter fullscreen mode Exit fullscreen mode

O runtime deve tratar a linguagem como um detalhe de implementação.

O contrato semântico permanece:

Intent
  ↓
Behavior
  ↓
Action
Enter fullscreen mode Exit fullscreen mode

e não:

Intent
  ↓
Programming Language
Enter fullscreen mode Exit fullscreen mode

Isso produz uma arquitetura agêntica poliglota.


13. Otimização por Linguagem no Nível da Action

O conceito pode ir ainda além.

Um Agent não precisa necessariamente possuir uma única linguagem de implementação.

Actions diferentes do mesmo Agent PODEM utilizar linguagens distintas.

Exemplo:

PaymentAgent
│
├── ValidatePayment      → Rust
├── DetectFraud          → Python
├── SignTransaction      → Zig
├── EvaluatePolicy       → Prolog
└── GenerateReceipt      → TypeScript
Enter fullscreen mode Exit fullscreen mode

A arquitetura passa a otimizar a implementação por Action, e não por serviço.

Isso permite:

otimização de performance
otimização de memória
verificação formal
programação específica de domínio
proximidade com hardware
isolamento de segurança
Enter fullscreen mode Exit fullscreen mode

sem alterar a interface semântica do sistema.


14. Arquitetura de Dados Agêntica

Um sistema FullAgenticStack não deve tratar o banco de dados como um componente passivo.

O próprio acesso e gerenciamento dos dados torna-se agêntico.

No nível mais alto, o sistema deve possuir Agents especializados para diferentes responsabilidades de dados.

O conjunto mínimo recomendado é:

WriteAgent
ReadAgent
CacheAgent
VectorAgent
GraphAgent
EventAgent
ObservabilityAgent
Enter fullscreen mode Exit fullscreen mode

Cada Agent possui uma responsabilidade semântica distinta.


15. Diferentes Bancos de Dados São Opcionais

FullAgenticStack NÃO exige obrigatoriamente múltiplas tecnologias de banco.

As duas estratégias são válidas.

Persistência poliglota

WriteAgent          → PostgreSQL
ReadAgent           → MongoDB
CacheAgent          → Redis
VectorAgent         → Qdrant
GraphAgent          → Neo4j
EventAgent          → EventStoreDB
ObservabilityAgent  → ClickHouse
Enter fullscreen mode Exit fullscreen mode

ou:

Um único banco com projeções especializadas

PostgreSQL
│
├── Write Projection         → WriteAgent
├── Read Projection          → ReadAgent
├── Cache Projection         → CacheAgent
├── Vector Projection        → VectorAgent
├── Graph Projection         → GraphAgent
├── Event Projection         → EventAgent
└── Observability Projection → ObservabilityAgent
Enter fullscreen mode Exit fullscreen mode

O princípio fundamental não é quantos bancos existem.

O princípio é:

Cada responsabilidade semântica de dados deve possuir um Agent explicitamente responsável por operar e manter aquela visão.


16. Views Mínimas de Dados

Uma camada de dados FullAgenticStack madura deve possuir pelo menos sete responsabilidades semânticas.

Write

Estado transacional canônico.

WriteAgent
Enter fullscreen mode Exit fullscreen mode

Responsabilidades:

persistência de comandos
integridade transacional
validação de schema
idempotência
Enter fullscreen mode Exit fullscreen mode

Read

Representação otimizada para consultas.

ReadAgent
Enter fullscreen mode Exit fullscreen mode

Responsabilidades:

queries
projections
desnormalização
read models
Enter fullscreen mode Exit fullscreen mode

Cache

Dados derivados ou temporários de baixa latência.

CacheAgent
Enter fullscreen mode Exit fullscreen mode

Responsabilidades:

preenchimento
expiração
invalidação
warming
Enter fullscreen mode Exit fullscreen mode

Vector

Recuperação semântica.

VectorAgent
Enter fullscreen mode Exit fullscreen mode

Responsabilidades:

embeddings
busca semântica
similaridade
recuperação de intents
Enter fullscreen mode Exit fullscreen mode

Graph

Relacionamentos e causalidade.

GraphAgent
Enter fullscreen mode Exit fullscreen mode

Responsabilidades:

relações
dependências
links causais
topologias
travessia de entidades
Enter fullscreen mode Exit fullscreen mode

Events

Histórico do sistema.

EventAgent
Enter fullscreen mode Exit fullscreen mode

Responsabilidades:

event streams
event sourcing
replay
reconstrução temporal
Enter fullscreen mode Exit fullscreen mode

Observability

Evidências da execução do sistema.

ObservabilityAgent
Enter fullscreen mode Exit fullscreen mode

Responsabilidades:

logs
metrics
traces
evidências de execução
histórico de performance
Enter fullscreen mode Exit fullscreen mode

17. Um Agent por Projection

Uma regra central de uma arquitetura de dados FullAgenticStack madura é:

Cada projection independente DEVE possuir um Agent responsável por ela.

Exemplo:

CustomerProjection
      ↓
CustomerProjectionAgent
Enter fullscreen mode Exit fullscreen mode

ou:

SalesDashboardProjection
      ↓
SalesDashboardAgent
Enter fullscreen mode Exit fullscreen mode

O Agent pode ser responsável por:

criação
manutenção
reconstrução
validação
otimização
healing
evolução de schema
Enter fullscreen mode Exit fullscreen mode

Isso transforma views materializadas de objetos passivos do banco em capabilities computacionais supervisionadas.


18. Event-Driven por Padrão

Arquiteturas agênticas se beneficiam naturalmente de comunicação orientada a eventos.

Uma Action deve produzir evidência do que aconteceu.

Exemplo:

Financial.CreateInvoice.Ok
Enter fullscreen mode Exit fullscreen mode

em vez de apenas alterar silenciosamente o estado.

Um fluxo típico torna-se:

Intent
  ↓
Action
  ↓
Mudança de Estado
  ↓
Event
  ↓
Outros Agents
Enter fullscreen mode Exit fullscreen mode

Outros agentes podem reagir independentemente.

InvoiceCreated
      ↓
├── NotificationAgent
├── AccountingAgent
├── ProjectionAgent
├── AnalyticsAgent
└── ObservabilityAgent
Enter fullscreen mode Exit fullscreen mode

Isso reduz o acoplamento direto entre agentes.


19. FullAgenticStack Não Significa “LLM em Tudo”

FullAgenticStack não deve ser interpretado como:

toda operação chama um LLM
Enter fullscreen mode Exit fullscreen mode

Isso criaria:

latência
custo
não determinismo
exposição de segurança
novos modos de falha
Enter fullscreen mode Exit fullscreen mode

Agents são um conceito mais amplo que LLMs.

Um Agent pode conter:

código determinístico
regras
máquinas de estado
machine learning
LLMs
lógica formal
solvers
operações de banco
operações criptográficas
Enter fullscreen mode Exit fullscreen mode

Exemplo:

Classificação de intenção → LLM
Validação de permissão → policy determinística
Verificação de assinatura → criptografia
Cálculo de preço → código determinístico
Detecção de fraude → modelo ML
Raciocínio jurídico → Prolog
Enter fullscreen mode Exit fullscreen mode

A arquitetura deve utilizar o mecanismo computacional mais apropriado para cada Action.


20. Agentic Não Significa Não Determinístico

Operações críticas precisam permanecer previsíveis.

Por exemplo:

autenticação
autorização
pagamentos
identidade
criptografia
contabilidade
auditoria
compliance
Enter fullscreen mode Exit fullscreen mode

não devem depender exclusivamente de raciocínio probabilístico.

Uma arquitetura FullAgenticStack madura separa:

Interpretação
Enter fullscreen mode Exit fullscreen mode

de:

Autoridade
Enter fullscreen mode Exit fullscreen mode

Um LLM pode interpretar:

"Pague R$500 para João"
Enter fullscreen mode Exit fullscreen mode

mas controles determinísticos devem verificar:

identidade
autorização
destinatário
valor
policy
saldo
assinatura
Enter fullscreen mode Exit fullscreen mode

antes da execução.


21. Agentic Runtime

Em níveis mais altos de maturidade, a arquitetura requer um Agentic Runtime responsável por coordenar o sistema.

Um possível pipeline:

Intake
   ↓
Resolver
   ↓
Binding
   ↓
Healing
   ↓
Proof
   ↓
Governor
   ↓
Orchestration
   ↓
Acceptance
   ↓
Persistence
Enter fullscreen mode Exit fullscreen mode

A aplicação torna-se progressivamente declarativa.

Em vez de código controlando explicitamente:

Controller
  ↓
Service
  ↓
Repository
Enter fullscreen mode Exit fullscreen mode

o sistema declara:

Intent
Behavior
Actions
Policies
Constraints
Enter fullscreen mode Exit fullscreen mode

e o runtime executa.


22. Aplicações Declarativas

No nível mais alto, uma aplicação FullAgenticStack pode conter muito pouco código de orquestração.

Exemplo:

intent: Financial.CreateInvoice

behavior:
  - Customer.Resolve
  - Invoice.Validate
  - Invoice.Calculate
  - Authorization.Verify
  - Invoice.Persist
  - Invoice.Publish
Enter fullscreen mode Exit fullscreen mode

O runtime interpreta essa declaração.

A aplicação define o que deve acontecer.

O runtime determina como isso deve acontecer com segurança.


23. Agents Devem Ser Observáveis

Um sistema autônomo sem evidência não é operacionalmente confiável.

Cada Action relevante deve produzir:

logs
metrics
traces
events
proofs
correlation identifiers
Enter fullscreen mode Exit fullscreen mode

Uma execução completa deve poder ser reconstruída.

Exemplo:

Intent recebido
   ↓
Intent classificado
   ↓
Agent selecionado
   ↓
Behavior selecionado
   ↓
Action iniciada
   ↓
Policy verificada
   ↓
Action executada
   ↓
Estado persistido
   ↓
Event emitido
   ↓
Action aceita
Enter fullscreen mode Exit fullscreen mode

Observabilidade torna-se responsabilidade do runtime, e não instrumentação opcional da aplicação.


24. Self-Healing

Como Agents podem operar autonomamente, recuperação de falhas também precisa ser arquitetural.

Uma Action não deve simplesmente retornar erro ao usuário se houver possibilidade de recuperação.

O sistema pode executar:

Action
  ↓
Failure
  ↓
Supervisor
  ↓
Diagnosis
  ↓
Healing
  ↓
Retry
Enter fullscreen mode Exit fullscreen mode

Possíveis mecanismos:

retry
fallback
Agent alternativo
correção de configuração
troca de dependência
escalonamento humano
Enter fullscreen mode Exit fullscreen mode

Isso produz sistemas projetados para recuperação, e não apenas para relatar falhas.


25. Human-in-the-Loop

FullAgenticStack não implica autoridade ilimitada para Agents.

Humanos permanecem parte do modelo de autoridade quando necessário.

Exemplo:

Agent propõe pagamento
       ↓
Humano aprova
       ↓
Runtime executa
Enter fullscreen mode Exit fullscreen mode

ou:

Humano delega autoridade
       ↓
Agent atua dentro da policy
       ↓
Runtime verifica os limites
Enter fullscreen mode Exit fullscreen mode

A arquitetura pode suportar:

Human-in-the-Loop
Enter fullscreen mode Exit fullscreen mode

e:

Human-on-the-Loop
Enter fullscreen mode Exit fullscreen mode

dependendo da autoridade delegada.


26. eXtreme Zero Trust

No nível mais alto de maturidade FullAgenticStack, toda interação entre:

Humano
Agent
Runtime
Serviço
Banco
Dispositivo
Infraestrutura
Enter fullscreen mode Exit fullscreen mode

deve ser considerada não confiável até que seja comprovada.

Esse modelo pode ser descrito como eXtreme Zero Trust.

O princípio é:

Nunca confie.
Sempre autentique.
Sempre autorize.
Sempre prove.
Sempre observe.
Enter fullscreen mode Exit fullscreen mode

A identidade deve ser verificável criptograficamente.


27. Senhas São Proibidas

Uma implementação FullAgenticStack Extreme NÃO DEVE depender de senhas.

Senhas introduzem:

segredos compartilhados
phishing
reutilização de credenciais
bancos de senhas
fluxos de reset
dependência da memória humana
Enter fullscreen mode Exit fullscreen mode

A autenticação deve utilizar mecanismos como:

Passkeys / WebAuthn
chaves criptográficas
credenciais vinculadas ao dispositivo
autenticação mútua
desafios assinados
proof-of-possession
Enter fullscreen mode Exit fullscreen mode

Para Agents:

identidades Ed25519
mTLS
DPoP
hardware-backed keys
credenciais de curta duração
Enter fullscreen mode Exit fullscreen mode

podem ser utilizadas dependendo do contexto.


28. Email Não Deve Ser uma Primitiva de Identidade

O nível mais alto de segurança FullAgenticStack também evita utilizar email como mecanismo primário de identidade.

Emails são identificadores de comunicação.

Eles não devem funcionar como credenciais fundamentais de segurança.

A identidade deve se originar de credenciais criptograficamente verificáveis ou provedores de identidade explicitamente confiáveis.

Para interação humana, podem ser usados:

Passkeys
WhatsApp
Device Identity
Biometria
Credenciais Criptográficas
Enter fullscreen mode Exit fullscreen mode

Email PODE existir como canal de comunicação, mas não deve ser requisito para identidade ou autenticação.


29. Passwordless by Construction

Isso leva a outra propriedade arquitetural:

Um sistema FullAgenticStack maduro deve ser passwordless by construction.

A arquitetura não deve inicialmente suportar senhas para depois tentar removê-las.

Autenticação por senha simplesmente não deve existir no design.

Isso elimina classes inteiras de:

vazamento de credenciais
reset de senha
reutilização de senha
políticas de senha fraca
credential stuffing
Enter fullscreen mode Exit fullscreen mode

30. Arquitetura de Referência FullAgenticStack Extreme

Uma implementação de alto nível pode ser representada assim:

                    HUMANO
                      │
           ┌──────────┼──────────┐
           │          │          │
         Texto       Áudio      Imagem
           │          │          │
           └──────────┼──────────┘
                      │
                Multimodal Intake
                      │
                 POST /intent
                      │
                GatewayAgent
                      │
              Intent Resolution
                      │
               Agentic Runtime
                      │
        ┌─────────────┼─────────────┐
        │             │             │
    UI Agents    Domain Agents   Infra Agents
        │             │             │
       A2UI        Behaviors       Runtime
                      │
                   Actions
                      │
       ┌──────────────┼───────────────┐
       │              │               │
    Services        Events          Data
                                      │
                ┌─────────────────────┼─────────────────────┐
                │                     │                     │
             WriteAgent            ReadAgent             CacheAgent
                │                     │                     │
             VectorAgent           GraphAgent            EventAgent
                                      │
                              ObservabilityAgent
                                      │
                                  Evidence
                                      │
                                 Humano / Agent
Enter fullscreen mode Exit fullscreen mode

31. Invariantes Arquiteturais FullAgenticStack

Um sistema que reivindique compatibilidade com FullAgenticStack DEVE ou DEVERIA satisfazer as seguintes invariantes.

FAS-INV-001 — Intent Accessibility

Toda funcionalidade disponível ao usuário deve ser invocável através de linguagem natural.

FAS-INV-002 — Universal Intent Ingress

Deve existir pelo menos uma rota POST para entrada em linguagem natural.

FAS-INV-003 — Multimodal Input

A arquitetura deve aceitar texto, áudio e imagem.

FAS-INV-004 — Intent Classification

Pedidos em linguagem natural devem ser classificados em intents executáveis.

FAS-INV-005 — Runtime Orchestration

O usuário não deve precisar saber qual Agent interno executará a operação.

FAS-INV-006 — Agent Specialization

Responsabilidades independentes devem ser atribuídas a Agents especializados.

FAS-INV-007 — Data Agency

As principais responsabilidades de dados devem possuir ownership explícito por Agents.

No mínimo:

write
read
cache
vector
graph
events
observability
Enter fullscreen mode Exit fullscreen mode

FAS-INV-008 — Observable Execution

Todo fluxo relevante deve produzir evidência legível por máquinas.

FAS-INV-009 — Deterministic Authority

Decisões críticas de autorização e segurança não devem depender exclusivamente de modelos probabilísticos.

FAS-INV-010 — Passwordless Security

Senhas não devem ser necessárias no perfil de segurança mais alto.

FAS-INV-011 — Identity Independence from Email

Email não deve ser exigido como primitiva fundamental de identidade.

FAS-INV-012 — Agentic Interface Evolution

Implementações maduras devem suportar interfaces dinâmicas como A2UI.


32. Compatibilidade Mínima com FullAgenticStack

A menor arquitetura que pode razoavelmente ser considerada FullAgenticStack é:

Usuário Multimodal
      ↓
POST /intent
      ↓
Intent Classifier
      ↓
Orchestrator
      ↓
Agents Especializados
      ↓
System Actions
Enter fullscreen mode Exit fullscreen mode

com a restrição adicional:

Toda funcionalidade disponível ao usuário deve estar acessível por intenção.

Sem isso, linguagem natural permanece apenas como mais uma funcionalidade.


33. Perfil de Referência FullAgenticStack

Uma implementação mais completa inclui:

✓ Interação Natural-Language-First
✓ Entrada por texto
✓ Entrada por áudio
✓ Entrada por imagem
✓ POST /intent
✓ Classificação de Intent
✓ Orquestração Agêntica
✓ Agents Especializados
✓ Execução Event-Driven
✓ Agentic Data Views
✓ WriteAgent
✓ ReadAgent
✓ CacheAgent
✓ VectorAgent
✓ GraphAgent
✓ EventAgent
✓ ObservabilityAgent
✓ Human-in-the-Loop
✓ Governança Determinística
✓ Identidade Passwordless
✓ Comunicação Zero Trust
Enter fullscreen mode Exit fullscreen mode

O perfil Extreme adiciona:

✓ A2UI
✓ Polyglot Actions
✓ Agent por Projection
✓ Orquestração Dinâmica
✓ Runtime-Owned Execution
✓ Continuous Healing
✓ Identidade Criptográfica de Agents
✓ eXtreme Zero Trust
Enter fullscreen mode Exit fullscreen mode

34. FullAgenticStack vs AI-Native

Uma aplicação AI-native utiliza inteligência artificial como componente fundamental do produto.

FullAgenticStack é mais específico.

Ele define onde a agência existe dentro da arquitetura.

Uma aplicação pode ser AI-native e ainda possuir:

frontend tradicional
backend tradicional
banco tradicional
serviço de IA
Enter fullscreen mode Exit fullscreen mode

Uma arquitetura FullAgenticStack distribui agência por essas camadas.

Portanto:

AI-native
Enter fullscreen mode Exit fullscreen mode

descreve software fundamentalmente dependente de IA.

Enquanto:

FullAgenticStack
Enter fullscreen mode Exit fullscreen mode

descreve software arquiteturalmente organizado em torno de Agents.


35. FullAgenticStack vs Agentic-Native

Agentic-native é uma descrição ainda mais precisa da filosofia de design.

Em uma arquitetura agentic-native:

Agents não são integrações
Agents são primitivas arquiteturais
Enter fullscreen mode Exit fullscreen mode

FullAgenticStack pode ser considerado uma expressão arquitetural concreta de software agentic-native.


36. De Full Stack para Full Agentic Stack

A evolução pode ser resumida assim:

Full Stack

Frontend
Backend
Database
Enter fullscreen mode Exit fullscreen mode

depois:

AI-Enhanced Stack

Frontend
Backend
AI
Database
Enter fullscreen mode Exit fullscreen mode

depois:

Agentic Stack

Frontend
Agents
Backend
Database
Enter fullscreen mode Exit fullscreen mode

e finalmente:

FullAgenticStack

Agentic Interface
Agentic Application
Agentic Domain
Agentic Runtime
Agentic Data
Agentic Infrastructure
Agentic Security
Agentic Observability
Agentic Recovery
Enter fullscreen mode Exit fullscreen mode

A agência deixa de estar localizada em uma única parte da aplicação.

Ela se torna uma propriedade da própria arquitetura.


37. A Mudança Arquitetural Fundamental

A principal mudança introduzida por FullAgenticStack não é:

GUI → Chat
Enter fullscreen mode Exit fullscreen mode

nem:

API → LLM
Enter fullscreen mode Exit fullscreen mode

nem:

Developer → AI Agent
Enter fullscreen mode Exit fullscreen mode

É:

Software controlado por interfaces explícitas
                 ↓
Software controlado por intenção semântica
Enter fullscreen mode Exit fullscreen mode

A arquitetura muda de:

Usuário escolhe a operação
Enter fullscreen mode Exit fullscreen mode

para:

Usuário expressa o objetivo
Sistema determina a operação
Enter fullscreen mode Exit fullscreen mode

Essa distinção tende a se tornar cada vez mais importante à medida que o software migra de interação orientada por interface para execução orientada por intenção.


Conclusão

FullAgenticStack nasceu de uma observação prática:

Agents já não estavam operando em apenas uma parte da aplicação.

Eles estavam atuando em:

frontend
backend
dados
Enter fullscreen mode Exit fullscreen mode

Ao levar essa ideia às últimas consequências, surge uma arquitetura de software diferente.

Um sistema FullAgenticStack expõe suas capacidades através de intents em vez de exigir que pessoas conheçam sua estrutura interna.

Ele aceita pedidos multimodais.

Classifica intenções.

Seleciona Agents especializados.

Orquestra Actions.

Gerencia projections especializadas.

Observa sua própria execução.

É capaz de se recuperar de falhas.

E aplica identidade criptográfica e princípios de Zero Trust em todas as interações.

No nível mais alto de maturidade, o sistema torna-se:

Multimodal
Intent-Driven
Agentic-Native
A2UI-Driven
Poliglota
Event-Driven
Agentic-Data-Oriented
Self-Healing
Observável
Passwordless
Zero-Trust
Enter fullscreen mode Exit fullscreen mode

O princípio definidor de FullAgenticStack pode, portanto, ser resumido em uma frase:

Humanos devem expressar o que querem. A arquitetura deve saber como executar.

E a consequência arquitetural é igualmente importante:

Se uma funcionalidade existe no sistema, ela também deve existir como uma intenção.

Top comments (0)