1
π Flat: um arquivo, append-only
Minimo viavel. Zero decisao de estrutura. Comece aqui.
π Estrutura flat
~/.memory/ βββ knowledge.md Um arquivo com todas as memorias. Append-only: cada nova memoria vira paragrafo com data. Exemplo: --- ## 2026-04-20 Decisao: usar FastAPI no payments-v2. Razao: async nativo, 80% endpoints sao IO-bound. ## 2026-04-21 Fato: pgvector suporta HNSW index desde v0.5. Relevante para nossa busca semantica. ## 2026-04-22 Padrao: sempre idempotency key em webhook. Observado em Stripe, PayPal, PagBank. 3x.
π Caracteristicas
- Setup: 0 minutos
- Busca: grep
- Recall: 61% (baseline)
- Cap util: ~100 memorias
- Migracao futura: facil (script ler e distribuir)
2
ποΈ Taxonomia de 5 tipos
Sweet spot: ganho significativo com esforΓ§o moderado.
π Estrutura taxonomica
~/.memory/knowledge/
βββ facts/ (como algo e)
β βββ postgres-vector-support.md
β βββ lambda-payload-limit.md
βββ decisions/ (escolhas feitas)
β βββ 2026-04-20-fastapi-over-flask.md
β βββ 2026-04-22-webhook-architecture.md
βββ patterns/ (regras recorrentes)
β βββ idempotency-in-webhooks.md
β βββ small-prs-with-tests.md
βββ preferences/ (gostos pessoais)
β βββ async-over-callbacks.md
βββ events/ (acontecimentos)
βββ 2026-04-22-incident-timeout.mdπ Ganho
- Recall: 82% (+34% vs flat)
- Busca filtrada: 'so fatos sobre X'
- Promotion mais clara: pattern vira regra em CLAUDE.md
- Setup adicional: 15 minutos de organizacao inicial
3
π³ Hierarquia espacial
Pastas aninhadas por escopo. Otimo quando voce tem projetos com sub-areas.
π Estrutura hierarquica
~/.memory/knowledge/
βββ shared/ (cross-projeto)
β βββ python-patterns.md
βββ projects/
β βββ payments-v2/
β β βββ decisions/
β β β βββ idempotency.md
β β βββ patterns/
β β β βββ webhook-retry.md
β β βββ facts/
β β βββ stripe-quirks.md
β βββ landing-redesign/
β βββ decisions/
β βββ patterns/
βββ personal/
βββ workflow.md
βββ style.mdπ Quando vale
- Recall: 95% no nivel mais profundo
- Isolamento: projetos nao se misturam
- Adequado para: 3+ projetos ativos, >300 memorias
- Custo: mais disciplina para colocar no lugar certo
4
πΈοΈ Grafo com backlinks
Cada nota linka outras. Busca pode caminhar no grafo. Estilo Obsidian.
π Estrutura com backlinks
decisions/
fastapi-over-flask.md
"Discutimos em [[meeting-2026-04-20]].
Substituiu [[flask-exploration]].
Baseado em [[async-patterns]].
Relacionado a [[payments-architecture]]."
patterns/
async-patterns.md
"Visto em [[fastapi-over-flask]].
Complementa [[small-prs]]."
# Query: 'decisoes ligadas a arquitetura'
# β caminha: payments-architecture β fastapi-over-flask
# β meeting-2026-04-20 β async-patterns β ...
# β recupera cluster inteiro de contextoπ Quando vale o esforΓ§o
- Recall contextual: ~95% com inferencias
- Adequado para: conhecimento densamente conectado
- Exige: habito de linkar ao escrever
- Ferramenta ideal: Obsidian (UI + backlinks automaticos)
5
π― Evoluindo de flat para taxonomia
Migrar e barato quando voce precisa. Nao precisa decidir tudo no dia 1.
π Script de migracao
#!/usr/bin/env python3
# Migrar knowledge.md flat para taxonomia 5-tipos
import os, re, shutil
from pathlib import Path
# 1. Ler knowledge.md
content = Path('~/.memory/knowledge.md').expanduser().read_text()
# 2. Separar por data
entries = re.split(r'## (\d{4}-\d{2}-\d{2})', content)
# 3. Usar LLM (Gemini Flash) para classificar cada entry
# em: fact | decision | pattern | preference | event
# 4. Mover cada uma para a pasta certa
for entry in classified_entries:
target = f'~/.memory/knowledge/{entry.type}/{entry.slug}.md'
Path(target).expanduser().parent.mkdir(parents=True, exist_ok=True)
Path(target).expanduser().write_text(entry.content)
# 5. Arquivar o knowledge.md original
shutil.move('~/.memory/knowledge.md', '~/.memory/archive/knowledge-pre-migration.md')π‘ LLM faz o trabalho pesado
Classificar 100 entries a mao toma horas. Gemini Flash faz em 2 minutos por $0.01. Voce revisa 10 ambiguas.
6
π Tabela de decisao
Regra pratica para escolher sem ruminar.
π Decisao rapida
| Cenario | Estrutura | |----------------------------------|---------------------| | Comecando, <100 memorias | Flat | | 100-500 memorias mistas | Taxonomia 4-tipos | | 3+ projetos com sub-areas | Hierarquia espacial | | Conhecimento densamente ligado | Grafo (Obsidian) | | Time grande com vocabs variados | Grafo + semantica | | Solo, pragmatico | Taxonomia 4-tipos | Regra final: DUVIDA β taxonomia 4-tipos. Ganha 80% do beneficio com 20% do esforΓ§o.
π‘ Review anual
Uma vez por ano, revisar se a estrutura atual ainda serve. Migracao e barata; friccao de estrutura errada nao.
π Resumo do Modulo
β
Flat basta ate 100 memorias β depois migra.
β
Taxonomia 4-tipos e sweet spot β +34% recall sem muito esforΓ§o.
β
Hierarquia espacial ganha em profundidade β projetos com sub-projetos.
β
Grafo e investimento grande β so se conteudo for densamente conectado.
Proximo:
5.3 β Backends: markdown ao Pinecone