MODULO 4.4

πŸ“Œ context.md β€” escrevendo contexto critico

O post-it do trabalho. Projeto ativo, bloqueios, ultima decisao, proximo passo. 400 tokens que fazem a proxima sessao abrir ja orientada.

6
Topicos
35
Minutos
Pratico
Nivel
CORE
Tipo
1

πŸ“ Template de 5 campos

Template fixo reduz fricΓ§Γ£o. Mesma estrutura toda vez, preenchimento em 30 segundos.

πŸ“ context.md completo

## Projeto ativo
payments-v2

## Foco atual
Implementar retry logic no webhook da Stripe com backoff exponencial

## Bloqueios
- Aguardando API key de staging do time de infra (ticket INFRA-142)
- Precisa decidir: idempotency key no header ou dedup DB?

## Ultima decisao
2026-04-22 β€” escolhemos FastAPI sobre Flask por suporte async nativo.
Razao: 80% dos nossos endpoints sao IO-bound.

## Proximo passo
Escrever teste de integracao que simula webhook chunked (payload >6MB)

## Hipoteses ja descartadas
- Usar Kafka como fila (over-engineering para o volume atual)
- Celery como worker (equipe nao tem experiencia operacional)

πŸ’‘ Hipoteses descartadas importam

Evita Claude sugerir solucoes ja rejeitadas. Custo: 2 linhas. Beneficio: horas de retrabalho evitado.

2

⏱️ Frequencia: toda sessao

context.md e volatil por design. Atualiza toda sessao β€” manual ou via hook.

πŸ“… Cadencia esperada

Por tipo de usuario:

  • β€’Dev solo: atualizar no fim da sessao. 30 segundos.
  • β€’Team lead: atualizar apos cada reuniao importante.
  • β€’Content creator: atualizar ao trocar de projeto/serie.
  • β€’Todos: se passou 1 semana sem atualizar, revisar.
3

πŸ€– Automatizando: SessionEnd + Gemini

Melhor caso: hook SessionEnd chama Gemini, resume sessao, atualiza context.md sozinho.

πŸ“ Fluxo automatico

Voce fecha Claude Code
         β”‚
         β–Ό
SessionEnd hook dispara
         β”‚
         β–Ό
Script le transcript JSONL da sessao
         β”‚
         β–Ό
Envia para Gemini Flash: 'resuma em 150 palavras'
         β”‚
         β–Ό
Gemini responde com decisoes, bloqueios, proximo passo
         β”‚
         β–Ό
Script atualiza ~/.memory/context.md
         β”‚
         β–Ό
Proxima sessao ja abre com contexto fresco

Custo por sessao: ~$0.001 (quase zero)
EsforΓ§o manual: zero

πŸ’‘ Trilha 6 detalha

Modulo 6.4 tem implementacao completa em Python. Copy/paste funcional em 10 minutos.

4

🎯 context.md por projeto

Cada projeto tem seu proprio context.md. Hook escolhe pelo cwd.

πŸ“ Estrutura multi-projeto

~/.memory/
β”œβ”€β”€ prime.md                   (global, sempre)
β”œβ”€β”€ context.md                 (fallback generico)
└── projects/
    β”œβ”€β”€ payments-v2/
    β”‚   └── context.md         (projeto especifico)
    β”œβ”€β”€ landing-redesign/
    β”‚   └── context.md
    └── data-pipeline/
        └── context.md

# Hook escolhe:
PROJ=$(basename "$CWD")
PROJ_CTX="$HOME/.memory/projects/$PROJ/context.md"
if [[ -f "$PROJ_CTX" ]]; then
  CONTEXT=$(cat "$PROJ_CTX")
else
  CONTEXT=$(cat ~/.memory/context.md)
fi

πŸ’‘ Isolamento limpo

Sem mistura de contextos entre projetos. Projeto A nao aparece em sessao do projeto B.

5

🚨 Conflitos com CLAUDE.md

Quem ganha quando CLAUDE.md e context.md dizem coisas diferentes?

βš–οΈ Ordem de precedencia

Como o modelo pondera:

  • β€’additionalContext do hook entra depois do CLAUDE.md no prompt.
  • β€’Posicao posterior = maior atencao em texto longo.
  • β€’Na pratica, context.md ganha se conteudo for mais especifico.
  • β€’Regra: duplicar informacao volatil em CLAUDE.md e erro.

πŸ’‘ Divisao clara

CLAUDE.md: regras perenes ('sempre usar PT-BR'). context.md: estado ativo ('projeto X, foco Y'). Sem overlap.

6

πŸ§ͺ Lab: crie o seu agora

Outra vez, pause e aplique. 10 minutos para context.md funcional.

1

Minuto 0-3

Crie ~/.memory/context.md com template.

2

Minuto 3-7

Preencha com situacao real do projeto atual. Nao invente.

3

Minuto 7-10

Valide: alguem novo no projeto, lendo seu context.md, entenderia em 30s onde voce parou? Se nao, refine.

πŸ’‘ Template em labs/

labs/context-md/context.md esta la. Copie, edite, pronto.

πŸ“ Resumo do Modulo

βœ“
5 campos fixos β€” projeto, foco, blocks, decisao, next.
βœ“
Atualizacao toda sessao β€” manual ou automatica.
βœ“
Gemini Flash automatiza β€” SessionEnd le JSONL e atualiza sozinho.
βœ“
Isolamento por projeto β€” hook escolhe por cwd.

Proximo:

4.5 β€” UserPromptSubmit: injecao por turno