Gleam.br Wiki

[ADR-0013] Orquestração Multi-Agente (Swarm) e Sessões Compartilhadas | Wiki

Documentação de engenharia e especificações técnicas da Gleam-BR.

[ADR-0013] Orquestração Multi-Agente (Swarm) e Sessões Compartilhadas

  • *Status:* Proposto
  • *Data:* 17 de Maio, 2026

*Contexto:*

Conforme a complexidade dos problemas resolvidos pelo gleambr_ai aumenta, depender de um único LLM (com sua janela de contexto e viés inerentes) torna-se limitante. Para problemas complexos de software, fluxos de trabalho humanos envolvem validação cruzada (ex: um desenvolvedor escreve, um QA testa, um Arquiteto revisa). Atualmente, a nossa arquitetura possui uma relação 1:1 entre a Sessão de Chat e o Provedor LLM.

*Decisão:*

Implementaremos a capacidade de *Multi-Agent Swarm (Debate)* utilizando o padrão "Blackboard" (Quadro Negro) suportado pela concorrência nativa OTP.

  1. *Desacoplamento de Sessão:* O estado da conversa (O "Contexto") será extraído do session.gleam e promovido para um Ator central isolado, chamado context_board.gleam.
  2. *Abas Paralelas na TUI:* A interface Ratatui permitirá abrir "Abas", onde cada aba é um Ator session.gleam distinto (ex: Aba 1 = Claude 3.5 Sonnet, Aba 2 = GPT-4o). Todas as abas assinam (subscribe) as mensagens do context_board.
  3. *O Modo Debate (Round Table):* Criaremos um fluxo orquestrado onde: * A IA "A" (Desenvolvedora) recebe o prompt inicial e gera o código. O código é salvo no context_board. * A IA "B" (Revisora, configurada com um System Prompt extremamente crítico) é acionada automaticamente após a IA "A" terminar, lendo o código do contexto e emitindo sua crítica. * A IA "A" recebe a crítica e tenta corrigir as falhas. * O sistema permite um número X de ciclos (loops de debate) antes de solicitar a aprovação humana (HITL) final na TUI.

*Consequências:*

  • *Positivas:* Qualidade e precisão das respostas absurdamente superior a uma interação única; tira total proveito do ecossistema Erlang (cada IA rodando paralelamente e transmitindo streaming sem bloquear a outra).
  • *Negativas:* Custo financeiro (consumo de tokens) multiplicado pelo número de IAs participantes no debate; aumento da complexidade de roteamento de eventos na UI (direcionar os eventos Server-Sent Events corretos para as abas corretas da TUI).