🛠️ Manutenção, atualização e solução de problemas
Mantenha o grafo e o vault saudáveis ao longo do tempo — e saiba exatamente o que fazer quando algo dá errado. Cada problema vem com a causa e a correção pronta pra copiar e rodar.
🔄 Re-rodar quando a fonte muda (incremental)
Seu projeto não fica parado: a documentação muda, o código cresce, arquivos entram e saem. O grafo precisa acompanhar — mas refazer tudo do zero a cada commit seria lento e caro. A resposta é o modo incremental: graphify update . reprocessa só o que mudou e reaproveita o resto do cache.
🔰 Novo aqui? O que é "incremental"
Incremental significa "só a diferença". O Graphify guarda um cache por arquivo (um hash do conteúdo) em graphify-out/cache/. Se o arquivo não mudou, ele não chama o LLM de novo — economiza tempo e dinheiro. Só os arquivos novos ou alterados são reprocessados.
O ciclo de manutenção tem dois passos. Primeiro, atualizar o grafo (graphify-out/graph.json é a fonte de verdade). Depois, se você usa o vault Obsidian, re-exportar com --obsidian para regerar as notas. Lembre: o export é derivado do grafo — atualizar o grafo não atualiza o vault sozinho.
Objetivo: manter o grafo atual depois que a fonte mudou, sem refazer tudo.
# headless (terminal puro): só reprocessa o que mudou graphify update . # usando a skill dentro do Claude Code, e já re-exportando o vault: # /graphify . --update --obsidian --obsidian-dir ~/vault/graphify/meu-projeto
Verificar: o log mostra "N arquivos alterados" (não o total) e o graph.json ganha um mtime novo. Os arquivos intactos aparecem como "cache hit".
↑ O ciclo se fecha: toda vez que a fonte muda você roda update e re-exporta. O grafo é a fonte de verdade; o vault é derivado dele — por isso os dois passos.
🔑 Conceitos-chave
🧯 Vault regenerado x suas edições
Aqui está a armadilha que mais machuca: o export Obsidian é regenerado do zero a cada execução. Se você abriu uma nota gerada, escreveu sua própria reflexão dentro dela e depois rodou o export de novo, aquela edição é sobrescrita. O Graphify não funde suas mudanças — ele recria o arquivo.
✓ Vault seguro
- ✓Notas geradas numa pasta só do Graphify (ex.:
/imports). - ✓Suas reflexões numa pasta separada (ex.:
/minhas-notas). - ✓Você linka das suas notas para as geradas — nunca edita as geradas.
✗ Vault em risco
- ✗Editar diretamente as notas que o export gerou.
- ✗Misturar suas anotações com os imports na mesma pasta.
- ✗Re-exportar por cima e perder horas de trabalho.
🔰 Regra de ouro
Trate a pasta de imports como somente-leitura: ela é uma projeção do grafo, não o seu caderno. Se você exportar sempre para --obsidian-dir ~/vault/graphify/<projeto>, suas notas pessoais ficam fora dali e nunca são tocadas pelo re-export.
🔑 Conceitos-chave
🐛 "graphify: command not found" (PATH)
Você instalou com uv tool install graphifyy, mas o terminal responde command not found. Calma: o pacote foi instalado, só não está no PATH do seu shell. O uv tem um comando que conserta isso em um passo.
🔰 Novo aqui? O que é "PATH"
O PATH é a lista de pastas onde o shell procura programas quando você digita um comando. Se o binário do graphify está numa pasta que não está nessa lista, o shell não o acha — mesmo ele existindo. uv tool update-shell adiciona a pasta certa e você reabre o terminal.
Objetivo: fazer o comando graphify ser encontrado.
# adiciona o diretório de tools do uv ao PATH do shell uv tool update-shell # feche e reabra o terminal (ou recarregue o perfil), depois confirme: graphify --help
Verificar: graphify --help lista os subcomandos. Se ainda falhar, abra um terminal novo — o PATH só recarrega numa sessão nova.
Esse não é o único tropeço comum na instalação e no dia a dia. A tabela abaixo é o seu mapa de "sintoma → causa → correção":
| Sintoma | Causa provável | Correção |
|---|---|---|
graphify: command not found |
Binário fora do PATH | uv tool update-shell + reabrir o terminal |
/graphify não aparece no Claude Code |
Skill não registrada | graphify install e checar ~/.claude/skills/graphify/SKILL.md |
| Erro de chave fora do Claude Code | Headless sem API key | Exportar ANTHROPIC_API_KEY (ver tópico 4) |
--obsidian "não existe" |
Tentou no headless | Use a skill /graphify … --obsidian dentro do Claude Code |
🔑 Conceitos-chave
🔑 Erros de API key (só no headless)
Um erro de API key quase sempre significa uma coisa: você está rodando o Graphify headless (no terminal puro) para extrair documentos, e a extração semântica precisa de um modelo. Dentro do Claude Code, via /graphify, a sessão já fornece o modelo — você não precisa de chave nenhuma.
↑ A chave só entra no caminho da direita (headless + documentos). Extrair código usa tree-sitter (AST) e não precisa de chave nem nesse caminho.
Objetivo: rodar a extração de documentos no terminal puro sem erro de chave.
# defina a chave na sessão (troque pelo seu valor real) export ANTHROPIC_API_KEY=<sua-chave> # agora a extração semântica de documentos funciona headless graphify extract ./docs
Verificar: echo $ANTHROPIC_API_KEY mostra a chave e a extração começa sem reclamar. Dentro do Claude Code, pule isto inteiro — não é preciso.
✓ Não precisa de chave
- ✓Rodar
/graphifydentro do Claude Code. - ✓Extrair código (tree-sitter/AST), em qualquer caminho.
✗ Precisa de chave
- ✗Extrair documentos/PDF via LLM…
- ✗…no terminal puro (CI, scripts headless).
🔑 Conceitos-chave
🧹 Grafo barulhento ou raso
Às vezes o grafo sai barulhento (entidades demais, muitas irrelevantes) ou raso (poucas relações, nada conecta). Na esmagadora maioria das vezes a culpa não é do Graphify — é do corpus: a qualidade do grafo espelha a qualidade da fonte. "Lixo entra, lixo sai." A correção começa na fonte, não no comando.
🔰 Três alavancas, nesta ordem
- 1.Limpe a fonte: tire changelogs, arquivos auto-gerados, boilerplate e duplicatas — eles inflam o grafo com ruído.
- 2.Re-escope: aponte para a subpasta que importa (
graphify extract ./src) em vez do repositório inteiro. - 3.Suba a profundidade:
--mode deepfaz uma extração mais minuciosa quando o grafo ficou raso.
Objetivo: reextrair com mais profundidade quando o grafo veio raso demais.
# dentro do Claude Code — extração minuciosa (--mode deep é da skill) /graphify ./docs --mode deep # alternativa: re-escopar para a parte que importa (headless) # graphify extract ./src
Verificar: compare o GRAPH_REPORT.md antes/depois — mais relações por entidade e god nodes que fazem sentido indicam um grafo mais profundo.
Leia sempre o GRAPH_REPORT.md: ele lista god nodes, conexões entre comunidades e perguntas sugeridas — é o seu termômetro de "o grafo ficou bom?".
🔑 Conceitos-chave
📦 Versionar e exportar a jornada
Você construiu um segundo cérebro — agora não perca. Duas frentes: versionar os artefatos do Graphify no git (para o grafo ser reprodutível e voltar no tempo), e exportar o seu progresso de leitura aqui no curso (o .json de "Minha jornada"). Backup é o que separa "eu tinha" de "eu tenho".
Commite o grafo
Versione graphify-out/ (ou ao menos o graph.json) no git — ele é a fonte de verdade da qual tudo deriva.
Backup do vault
O vault Obsidian é regenerável a partir do grafo, mas suas notas pessoais não — versione a pasta delas separada dos imports.
Exporte sua jornada
No painel Minha jornada deste curso, exporte o .json com leituras, dúvidas e anotações — e reimporte em outro dispositivo.
Objetivo: guardar o grafo no git para nunca perder e poder reproduzir.
# versione os artefatos do Graphify (o cache pode ficar fora) echo "graphify-out/cache/" >> .gitignore git add graphify-out/ .gitignore git commit -m "chore: snapshot do segundo cérebro (graphify-out)"
Verificar: git log --stat mostra o graph.json commitado. Num clone novo, o grafo está lá — sem reextrair.
🔑 Conceitos-chave
✋ Auto-recuperação (opcional, não bloqueia): o flag --obsidian existe nos subcomandos headless (graphify extract / update)?
📌 Resumo do módulo
graphify update . reprocessa só o que mudou; re-exporte o vault depois.uv tool update-shell e reabra o terminal./graphify não precisa.--mode deep.graphify-out/ no git e exporte sua jornada.Você concluiu o curso!
Da teoria do segundo cérebro (Trilha 1), passando pelo passo a passo prático (Trilha 2), até o uso real e a manutenção (Trilha 3) — você agora sabe montar, consultar e manter um segundo cérebro consultável para o Claude Code. Versione, exporte e siga construindo.