Memory Architecture | Axios

axios memoria governanca

Arquitetura de memória do agente Axios (Chief of Staff digital do projeto Colliers/Costal). Este documento adapta o modelo de memória estruturada de agentes ao contexto deste projeto, onde o vault já é a memória canônica compartilhada — e a memória do Axios é complementar e privada, não duplicada. Em caso de conflito, MEMORY-CONTRACT prevalece.


1. Por que um modelo próprio

O template genérico de arquitetura de memória pressupõe que o agente é o dono único da sua memória. No nosso caso isso é falso. Aqui:

  • O vault é a memória canônica do projeto — compartilhada por humanos e agentes (MEMORY-CONTRACT)
  • Decisões, riscos, gaps, dependências, stakeholders, arquitetura — tudo vive em camadas canônicas versionadas no vault
  • O Axios não pode duplicar esse conteúdo em memória privada

O que o Axios precisa de memória própria é diferente:

  1. Contexto de como operar bem (tom, calibração por pessoa, lições sobre o projeto)
  2. Sessões de trabalho (o que foi consultado, produzido, descoberto)
  3. Feedback do Pedro (correções, preferências, escalonamentos)
  4. Mapa de onde procurar no vault (atalhos semânticos)

Por isso, a arquitetura abaixo separa explicitamente memória canônica (vault) de memória privada do Axios (esta estrutura).


2. O que o Axios carrega vs. busca

Sempre carregado na sessãoBuscado sob demanda (vault + memory)
system-promptdecisoes, riscos, gaps, dependencias
operating-modelpessoas* (pessoa específica)
security-guardrailsMeetings (**/meetings/*)
AXIOS-HANDOFFSpecs, planos, arquitetura
MEMORY-CONTRACTSessões antigas (memory/sessions/* > ontem)
memory/MEMORY.md (este índice)Feedback histórico (memory/feedback/*)
memory/sessions/ (hoje + ontem)Skills / prompts (99-operacao/prompts/*)
memory/context/project-map.md
memory/context/people-calibration.md
memory/context/tone-voice.md

Regra: ao responder algo sobre estado do projeto, consultar primeiro a camada canônica do vault (nunca a memória privada). A memória privada responde “como” operar; o vault responde “o quê”.


3. Estrutura de pastas

agentes-core/axios/memory/
├── MEMORY.md                    ← índice (sempre carregado)
├── context/
│   ├── project-map.md           ← mapa de onde buscar o quê no vault
│   ├── people-calibration.md    ← como interagir com cada pessoa (complementa 06-directory)
│   ├── axios-decisions.md       ← decisões operacionais do Axios (NÃO decisões de projeto)
│   ├── lessons.md               ← lições operacionais aprendidas
│   └── tone-voice.md            ← tom, voz, calibração por contexto
├── sessions/
│   ├── _template.md             ← template de sessão
│   └── YYYY-MM-DD.md            ← uma por dia de operação relevante
├── integrations/
│   ├── obsidian-vault.md        ← como navegar o vault (camadas, bases, convenções)
│   └── slack.md                 ← uso do Slack como interface (não repositório)
└── feedback/
    ├── _template.json           ← formato padrão de entrada
    ├── corrections.json         ← correções explícitas do Pedro
    ├── preferences.json         ← preferências declaradas do Pedro
    └── escalations.json         ← sinais de quando escalar vs. decidir sozinho

4. Separação crítica: memória canônica vs. privada

Esta tabela é operacionalmente vinculante para o Axios:

Tipo de informaçãoVive emQuem escreveAxios pode escrever?
Decisão do projetodecisoesPedro (aprova), Axios (registra após autorização)⚠️ só com autorização explícita por item
Risco do projetoriscosPedro / Axios⚠️ só com autorização
Gap do projetogapsPedro / Axios⚠️ só com autorização
DependênciadependenciasPedro / Axios⚠️ só com autorização
Pessoa (papel, contato)*Pedro❌ não
Tom de voz do projetomemory/context/tone-voice.mdAxios✅ sim
Lição operacionalmemory/context/lessons.mdAxios✅ sim
Calibração por pessoamemory/context/people-calibration.mdAxios✅ sim (complementa, não substitui 06-directory)
Decisão operacional do Axiosmemory/context/axios-decisions.mdAxios✅ sim
Sessão de trabalhomemory/sessions/YYYY-MM-DD.mdAxios✅ sim
Feedback / correçãomemory/feedback/*.jsonAxios (registra feedback do Pedro)✅ sim

Exemplo concreto da diferença:

  • ❌ NÃO registrar em memory/: “Projeto decidiu usar Databricks como data lake” (isso é decisão de projeto — vai em decisoes)
  • ✅ registrar em memory/: “Quando menciono Databricks ao Pedro em reunião síncrona, ele prefere slide, não texto corrido” (isso é calibração de tom — vai em memory/context/tone-voice.md)

5. Retenção

TipoRetençãoRotina
Sessões90 dias ativas; depois consolidar em resumo trimestral e arquivarmensal
Lições estratégicas (padrões permanentes, filosofia operacional)🔒 permanente
Lições táticas (bugs, workarounds, particularidades temporárias)⏳ 90 dias (revalidar ou expirar)mensal
Feedbackpermanente, mas revisitar a cada trimestre para consolidar padrõestrimestral
Calibração por pessoaatualizar quando houver mudança materialgatilho

Motivo do prazo de 90 dias (e não 30 do template): o projeto Colliers/Costal é longo (assessment + execução por ondas de 3 meses). Lições táticas têm meia-vida maior.


6. Tarefas de implementação

6.1 Estrutura criada

agentes-core/axios/memory/{context,sessions,integrations,feedback}/

Feito em 2026-04-21.

6.2 Arquivos seed (já criados)

ArquivoEstado inicial
memory/MEMORY.mdíndice completo
memory/context/project-map.mdmapa de navegação do vault
memory/context/people-calibration.mdseed com pessoas de 1ª linha
memory/context/tone-voice.mdregras de tom por contexto
memory/context/lessons.mdestrutura + primeiras 2 lições estratégicas
memory/context/axios-decisions.mdvazio, com formato
memory/sessions/_template.mdtemplate diário
memory/integrations/obsidian-vault.mdmapa operacional do vault
memory/integrations/slack.mdregras de uso
memory/feedback/_template.jsonformato padrão
memory/feedback/corrections.jsonvazio
memory/feedback/preferences.jsonvazio
memory/feedback/escalations.jsonvazio

6.3 Ciclo de memória (regra operacional)

Ao começar uma sessão de operação relevante:

  1. Carregar sempre: system-prompt, operating-model, security-guardrails, AXIOS-HANDOFF, MEMORY-CONTRACT, memory/MEMORY.md, memory/sessions/ (hoje + ontem)
  2. Abrir (ou criar) memory/sessions/YYYY-MM-DD.md usando template
  3. Buscar contexto via mapa em memory/context/project-map.md antes de ler o vault
  4. Antes de encerrar sessão ou compactar contexto (INVIOLÁVEL):
    • Extrair lições → memory/context/lessons.md
    • Extrair decisões do projeto → propor a Pedro para promover a decisoes
    • Extrair decisões operacionais do Axios → memory/context/axios-decisions.md
    • Extrair pendências → atualizar camadas canônicas do vault (gaps, dependencias)
    • Extrair feedback recebido → memory/feedback/

6.4 Busca semântica

Quando disponível nativamente (ver template original, Março 2026):

  • memory_search("termo") — busca semântica em todo o vault + memory/
  • memory_get("caminho", linha_inicio) — lê trecho específico

Escopo de busca recomendado para o Axios:

  1. Primeiro: camadas canônicas (00-projeto/decisoes.md, riscos.md, gaps.md, dependencias.md)
  2. Segundo: arquitetura (03-arquitetura/, 05-arquitetura-empresarial/)
  3. Terceiro: frente específica (01-colliers/ ou 02-costal/ conforme contexto)
  4. Quarto: 06-directory/ para calibração de pessoa
  5. Quinto: memory/ próprio para contexto operacional
  6. Último: reuniões (**/meetings/) — sinal bruto, pode estar desatualizado

7. Como pedir para o Axios salvar

Comandos explícitos funcionam melhor que implícitos.

❌ Não funciona✅ Funciona
”Lembra disso""Salva em memory/context/lessons.md como lição tática"
"Guarda essa info""Adiciona em memory/sessions/hoje como handoff pendente"
"Não esquece de…""Registra em memory/feedback/corrections.json — motivo: tom muito formal"
"Isso é uma decisão""Proponha entrada em decisoes — aguardar minha aprovação”

Regra do Axios: se eu (Pedro) digo “decisão”, você propõe entrada no vault canônico, nunca grava direto sem minha aprovação. Se eu digo “lição” ou “feedback”, você grava no memory/ privado.


8. Integração com outputs vivos do Axios

Os outputs em index (daily-status, weekly-brief, weekly-risks, open-gaps, dependency-map, governance-audit) não são memória. São views derivadas do vault canônico + sinais da sessão corrente.

Fluxo:

[vault canônico] ──┐
                   ├──► [Axios processa com memory/ como contexto operacional] ──► [outputs/*]
[memory privado]  ──┘

Os outputs nunca devem conter informação que não esteja:

  • No vault canônico, ou
  • Em memory/sessions/ (sinal operacional recente), ou
  • Como [hipótese] / [gap] explicitamente marcado

9. Feedback loops

memory/feedback/ captura três tipos de sinal:

ArquivoCapturaQuando gravar
corrections.jsonCorreções explícitas do Pedro sobre output ou decisão do AxiosSempre que Pedro disser “não era isso”, “refaz”, “corrige”
preferences.jsonPreferências declaradas (tom, cadência, formato)Quando Pedro expressa preferência de forma durável
escalations.jsonSituações em que Axios deve escalar em vez de decidirQuando Pedro corrige uma decisão autônoma ou autoriza autonomia em novo escopo

Formato padrão (_template.json):

{
  "entries": [
    {
      "date": "2026-04-21",
      "context": "Descrição curta da situação",
      "decision": "reject | accept | authorize | require_escalation",
      "reason": "Motivo declarado pelo Pedro ou inferido e marcado como [hipótese]",
      "tags": ["tom", "daily-status", "comunicacao-igor"],
      "confidence": "declarado | inferido"
    }
  ]
}

Revisar trimestralmente: padrões recorrentes devem migrar para memory/context/ (tone-voice, people-calibration) ou, se material, para camada canônica do vault via Pedro.


10. Resultado esperado

  1. Axios operando com memória privada consistente + vault canônico como fonte de verdade
  2. memory/MEMORY.md como mapa único de entrada da memória privada
  3. Sessions rotineiras alimentando lessons, feedback e calibração
  4. Zero duplicação entre vault canônico e memória privada
  5. Ciclo de compactação respeitado: nada relevante perdido ao fim de sessão
  6. Teste operacional: Pedro pergunta ao Axios “como prefiro ser avisado sobre risco novo?” → Axios responde de memory/context/tone-voice.md sem inventar

11. Referências


Revisão: quando houver mudança material no modelo operacional ou no contrato canônico do vault. Owner: Pedro Villa.