📉 Curva de Ebbinghaus aplicada
Ebbinghaus observou que memoria humana decai exponencial. Aplicamos mesma curva a memoria do Claude.
📐 Fases de compressao
TEMPO | ESTADO | EXEMPLO
─────────┼────────────────────┼─────────────────────────────
Dia 0-7 | Full detail | Paragrafo completo com
| | contexto, razoes, links
| |
Dia 8-30 | Summary (50%) | Reducao para metade.
| | Mantem fato + razao, corta
| | historico de decisao
| |
Dia 31-90| One-liner | Uma frase. Fato essencial.
| | Razao e contexto sumiram.
| |
Dia 90+ | Archived | Sai do knowledge/ ativo,
| | vai pra archive/. Ainda
| | pesquisavel, mas cold.💡 Calibre pela sua cadencia
Se voce trabalha com ciclo mensal, os thresholds podem ser mais longos. Se ciclo semanal, mais curtos. Modulo 5.5 tem presets.
⭐ Salience: access_count resiste
Memoria valiosa nao some so por ser velha. Frequencia de acesso aumenta resistencia.
📐 Formula
Simples e efetiva:
- •
salience = 1 + (access_count × 0.2) - •
age_effective = age_days / salience - •Memoria de 30 dias, acessada 5x: salience = 2.0 → age_effective = 15 dias
- •Permanece no estagio 'summary', nao vai para 'one-liner' ainda
💡 Incremento barato
Cada vez que busca retorna uma memoria, UPDATE memories SET access_count = access_count + 1 WHERE id = ?. 3 linhas.
🛠️ Script decay.py
Um script, rodando semanal, mantem o sistema saudavel.
📐 Execucao do decay.py
# Rodar semanal via cron 0 2 * * 1 python3 ~/.memory/scripts/decay.py ~/.memory/knowledge # Ou via SessionEnd hook (menos agressivo) # Roda mensalmente, so se ultima execucao foi ha >30 dias # Output tipico: $ python3 decay.py ~/.memory/knowledge Modo: moderado (thresholds: summary=7 oneliner=30 archive=90) kept: 142 (ainda recente ou frequente) summary: 23 (passou de 7 dias, comprimido 50%) oneliner: 17 (passou de 30 dias, reduzido a 1 linha) archived: 8 (passou de 90 dias, movido para archive/) Total: 190 memorias processadas em 340ms
💡 Lab ja tem
labs/decay-py/decay.py tem implementacao completa com salience.
🎚️ 3 velocidades: conservador, moderado, agressivo
Calibre pela sua cadencia de trabalho. Nao um tamanho unico.
📐 Presets
CONSERVADOR (trabalhos de ciclo longo, pesquisa): summary ← 14 dias oneliner ← 60 dias archive ← 180 dias MODERADO (default, cobre maioria): summary ← 7 dias oneliner ← 30 dias archive ← 90 dias AGRESSIVO (dev solo iterando rapido): summary ← 3 dias oneliner ← 14 dias archive ← 45 dias Escolha por: duracao tipica do seu ciclo de trabalho. Ciclo = tempo entre 'aprendi X' e 'nao preciso mais de X'.
💡 Teste com seus dados
Rode uma vez em cada modo (dry-run). Veja quantas memorias cairiam. Escolha onde o volume faz sentido.
🗃️ Arquivamento vs delete
NUNCA delete. Storage e trivial. Recuperacao de decisao antiga e ouro.
📐 Estrutura de archive
~/.memory/
├── knowledge/ (ativo, usado por busca)
│ ├── facts/
│ ├── decisions/
│ └── ...
└── archive/ (cold, ainda pesquisavel)
├── 2026-Q1/
│ ├── facts/
│ └── decisions/
├── 2026-Q2/
└── ...
Busca normal: so em knowledge/.
Busca time-travel: "busque em archive/ tambem" — raro, mas possivel.
git init em ~/.memory/ — historia completa preservada.⚠️ Custo real de delete
Voce acha que nunca vai precisar daquela memoria. Tres meses depois, precisa. Impossivel recuperar. Arquive, nao delete.
📊 Monitorando o decay
Script simples que mostra health do sistema. Rode mensalmente.
📐 health_check.py output
$ python3 health_check.py ~/.memory Knowledge base health report ============================ Total memorias ativas: 247 Novas este mes: 34 Acessadas este mes: 89 (36%) Por estagio de decay: full detail (0-7 dias): 45 summary (8-30 dias): 112 oneliner (31-90 dias): 90 Top 5 memorias frequentes (salience > 2.0): 1. idempotency-webhook-pattern (accessed 12x) 2. postgres-jsonb-indexing (accessed 9x) 3. fastapi-async-gotchas (accessed 8x) ... Arquivadas este mes: 15 Em archive/ total: 412 Alertas: - 23 memorias nunca acessadas em >60 dias. Revisar? - Facts/ com 145 entries, maior categoria. Considerar split?
💡 Report vale review
Leitura de 30 segundos revela padroes. Facts crescendo muito? Hora de dividir em sub-categorias.
📝 Resumo do Modulo
Proximo:
5.6 — Promotion 3-strikes