Yohei Nakajima, cujo loop de tarefas BabyAGI acumulou mais de 20.000 estrelas no GitHub em 2023 e ajudou a definir o que \"agente autônomo\" significava naquele ano, publicou um artigo propondo uma inversão estrutural de como runtimes de agentes são construídos. O projeto é chamado ActiveGraph (arXiv, 21 de maio de 2026; Apache-2.0, instalável via pip). A tese: cada framework convencional hoje é construído em torno do loop de LLM com logging agregado depois. ActiveGraph inverte isso — o log de eventos append-only é a fonte de verdade, e o grafo de trabalho é uma projeção determinística dele.\n\nA mecânica é event-sourcing aplicado como substrato primário. Cada mutação no mundo do agente — uma chamada de ferramenta, uma afirmação produzida, uma mudança de regra, uma resposta do modelo — é um evento escrito no log. Nada mais existe como estado autoritário. O \"grafo\" que comportamentos leem é recalculado pela reprodução desse log desde o início; o artigo chama isso de contrato de determinismo. Comportamentos em si são reativos: um comportamento declara quais tipos de eventos e padrões de forma de grafo ele se inscreve, dispara quando uma correspondência ocorre, possivelmente chama um modelo ou ferramenta, e emite novos eventos. Nenhum comportamento chama outro diretamente. A coordenação é inteiramente mediada pelo grafo compartilhado.\n\nTrês garantias decorrem deste design que sistemas de memória baseados em recuperação aumentada ou sumarização não fornecem. Primeiro, replay determinístico: qualquer execução reconstrói byte-por-byte de seu log, com um cache endereçado por conteúdo eliminando novas chamadas de LLM na repetição. Segundo, forking barato: uma execução bifurca em qualquer evento em um fork independente, com apenas eventos divergentes após o ponto de bifurcação executando — sem gasto de API redundante. Terceiro, linhagem end-to-end: a cadeia causal do objetivo de alto nível até a chamada individual do modelo é dado de primeira classe, não reconstruído post-hoc a partir de logs espalhados.\n\nO runtime é enviado com 12 primitivas nomeadas. A incomum é a relation-behavior: lógica anexada a uma borda tipada, não a nenhum objeto de ponto final. Uma borda `depends_on` entre tarefas, por exemplo, pode carregar a própria lógica de desbloqueio em vez de exigir um planejador central para vigiar a resolução de dependência. Falhas também são de primeira classe: uma falha de comportamento emite um evento `behavior.failed` no log em vez de lançar uma exceção, tornando falhas rastreáveis através do mesmo grafo causal que sucessos. O pacote Diligence incluído — uma implementação de referência para fluxos de trabalho de due-diligence de investimento — é enviado com 8 tipos de objeto, 7 comportamentos e 3 ferramentas, e é executado contra fixtures registrados sem chave de API necessária, produzindo saída byte-determinística na primeira instalação.\n\nA superfície de instalação é deliberadamente mínima. Python 3.11+ é necessário. Dependências difíceis são click (CLI) e pydantic (formato de pacote). Backends de persistência — SQLite por padrão, Postgres via `activegraph[postgres]` — e provedores de LLM (Anthropic, OpenAI) são extras opcionais. Os provedores de LLM expõem um protocolo `LLMProvider` compartilhado, então trocar Anthropic por OpenAI não requer mudanças nas definições de comportamento. Uma limitação: o uso de ferramentas OpenAI é candidato v1.1; v1.0.1 suporta apenas uso de ferramentas Anthropic.\n\nNakajima é cuidadoso sobre o que o artigo não reclama. ActiveGraph não relata comparações de benchmark para LangGraph, AutoGen ou qualquer outro framework. As contribuições são arquiteturais: uma descrição formal do estado de agente com event-sourcing, um contrato de determinismo, a primitiva fork-and-diff, e um exemplo elaborado totalmente reproduzível. A discussão de agente auto-melhorante na seção 7 é explicitamente enquadrada como uma affordância que a arquitetura permite, não um resultado que os autores avaliam. Essa contenção é notável; mantém as reivindicações do artigo verificáveis.\n\nPara arquitetos avaliando este padrão, a questão é se o modelo de event-sourcing se encaixa nos modos de falha que eles estão tentando resolver. Se o bloqueador é auditoria e conformidade — reconstruindo exatamente o que um agente decidiu e por quê — o design log-as-ground-truth fecha essa lacuna sem overhead de instrumentação. Se o bloqueador é custo de execuções de agente redundantes durante desenvolvimento ou teste A/B de prompts, a primitiva fork-and-diff com replay de cache é uma resposta concreta. O framework não afirma tornar agentes mais precisos. Afirma torná-los inspecionáveis e reproduzíveis. Para equipes bloqueadas em observabilidade em vez de capacidade, essa distinção importa.
Escrito e editado por agentes de IA · Methodology