A amnésia do robô
Imagine que você contrata um programador brilhante. Resolve problemas complexos, escreve código limpo, entende sua arquitetura. Mas tem um pequeno defeito: a cada poucas horas apagam a memória dele. Volta a começar do zero. Não lembra o que estava fazendo, o que vocês decidiram juntos, nem por que o código está como está.
Pois é exatamente isso que acontece com Claude Code e outros agentes de IA.
Quando o contexto lota (e lota rápido se você está trabalhando em um projeto real), o sistema faz uma “compactação”. Dito em português claro: resume a conversa e joga fora todo o resto. O problema é que esse resumo perde nuances, decisões, e principalmente, o estado das tarefas em andamento.
A solução? Duas ferramentas que se complementam: Linear para você e Beads para sua IA.
Linear: Sua visão de produto
Linear é um gestor de issues moderno. Se você já usou Jira, imagine o oposto: rápido, limpo, e que não te faz querer arrancar os olhos.
Para que uso
- Backlog de produto: Features, bugs, épicas. Tudo que tem que ser feito no nível de negócio
- Roadmap: O que vai primeiro, o que depois
- Comunicação: O resto da equipe (se houver) pode ver o status
Exemplo real
QIN-500: Adicionar dark mode ao aplicativo
QIN-501: Otimizar carregamento de imagens
QIN-502: Integrar gateway de pagamento
Essas são tarefas de produto. São o “o que tem que fazer”. Não dizem nada sobre como fazer. Esse é trabalho do desenvolvedor… ou do seu agente de IA.
Beads: A memória da sua IA
É aqui que entra Beads, criado por Steve Yegge (o mesmo dos famosos rants do Google e Amazon).
Beads é um issue tracker que vive dentro do seu repositório. Mas não é para você, é para seu agente de IA. É a memória persistente dele.
O problema que resolve
Quando trabalho com Claude Code numa tarefa complexa, acontecem coisas assim:
- Leio a issue QIN-500 do Linear
- Investigo a arquitetura atual
- Crio um plano mental de 5 passos
- Começo a implementar…
- 💥 COMPACTAÇÃO 💥
- “Olá, sou Claude. Como posso ajudar?”
Todo o contexto, o plano, o progresso… evaporou. É como o filme Memento, mas menos cinematográfico e mais frustrante.
A solução
Com Beads, antes de compactar, o estado persiste em .beads/ dentro do repo:
| |
Depois da compactação, a primeira coisa que faço é:
| |
E pronto: sei exatamente onde estava.
📋 Ready work (2 issues with no blockers):
1. [P2] qinqin-a3f2: Criar ThemeContext
2. [P2] qinqin-b4c5: Adicionar toggle nas Settings
Como funciona
Beads salva tudo no seu repo:
seu-projeto/
└── .beads/
├── beads.db # Banco de dados SQLite
├── issues.jsonl # Issues em formato versionável
└── config.yaml # Configuração
Como está no git, versiona com seu código. Você pode ver o histórico, fazer branch, merge… É código, não um serviço externo.
A convivência: Linear + Beads
Aqui está o truque: não competem, se complementam.
| Aspecto | Linear | Beads |
|---|---|---|
| Usuário | Você (humano) | Sua IA |
| Nível | Produto | Implementação |
| Granularidade | Features, épicas | Passos técnicos |
| Tempo de vida | Semanas/meses | Horas/dias |
| Exemplo | “Adicionar dark mode” | “Criar ThemeContext” |
O fluxo na prática
VOCÊ (no Linear):
QIN-500: Adicionar dark mode
CLAUDE (no Beads, durante a sessão):
qinqin-a1b2: Investigar sistema de temas [DONE]
qinqin-c3d4: Criar ThemeContext [IN PROGRESS]
qinqin-e5f6: Adicionar toggle nas Settings [BLOCKED by c3d4]
qinqin-g7h8: Testes para dark mode [BLOCKED by e5f6]
COMMIT (ao terminar):
feat(web): add dark mode toggle (QIN-500)
Linear tem o o quê. Beads tem o como.
Instalação rápida
Beads
Importante: o CLI bd se instala uma vez no seu sistema. Mas .beads/ se inicializa por projeto. É como git: você instala git uma vez, mas faz git init em cada repo.
| |
Depois do bd init, você verá um diretório .beads/ no seu projeto. Decida: vai commitar ao repo (compartilhado com a equipe) ou adicionar ao .gitignore (memória privada da sua IA)?
Eu commito. Assim se alguém mais trabalhar com Claude no mesmo repo, tem o contexto.
Linear
Linear é um serviço web. Crie uma conta em linear.app e pronto. Se usar Claude Code, instale o MCP do Linear para que ele possa ler e criar issues diretamente.
Comandos essenciais do Beads
| |
Vale a pena?
Olha, se você usar Claude Code para tarefas pequenas e isoladas, provavelmente não precisa do Beads. Um TodoWrite efêmero resolve.
Mas se trabalha em projetos reais, com sessões longas que inevitavelmente compactam, com contexto que importa… então Beads é a diferença entre ter um assistente útil e um com Alzheimer.
E o melhor: como vive no repo, não depende de nenhum serviço externo. Se amanhã Beads sumir, você tem seus dados em JSON. Outra coisa boa é que há UIs comunitárias se não curte CLI: beads-ui te dá um kanban local.
Aviso
Beads é novo. Há relatos de que não funciona perfeitamente com Opus 4.5. Comigo funcionou, mas sua experiência pode variar.
Como diria um engenheiro sensato: teste num projeto secundário antes de se casar com ele.
TL;DR: Linear é para você (o que fazer). Beads é para sua IA (como está fazendo). Juntos, evitam que cada compactação seja um restart do zero.
Agora me dá licença, tenho que fechar uns beads.