Pular para o conteúdo principal

Arquivos e diretórios

Configuração da máquina​

~/.config/cabecao/config.json guarda o que é só desta máquina. Não vai para o git.

{
"machine": "notebook",
"defaultBrain": "/Users/voce/cabecao"
}
CampoO que é
machineO nome desta máquina: minúsculas, dígitos e hífen, até 32 caracteres. Aparece nos commits (Cabecao-Machine) e nas cópias de conflito
defaultBrainO cérebro usado quando nenhum é informado (--brain ou CABECAO_BRAIN)
agentOpcional. O agente que o cabecao consolidate --run usa sem --agent: claude-code ou codex. Você grava à mão; o init o mantém

Onde fica a pasta:

SistemaPasta
macOS e Linux$XDG_CONFIG_HOME/cabecao, ou ~/.config/cabecao
Windows%APPDATA%\cabecao
Qualquer umCABECAO_CONFIG_DIR, se definida, vale acima das outras

O init cria o arquivo. Se ele quebrar, apague-o e rode cabecao init de novo: num cérebro que já existe, o init só grava o nome da máquina.

Provedor de respostas: llm.json​

Só existe se você ativou as respostas com um modelo de linguagem (cabecao llm on). Fica na pasta de configuração padrão do seu usuário (~/.config/cabecao; no Windows, %APPDATA%\cabecao), com permissão 0600, e nunca guarda a chave, só onde ela está. Desviada por variável de ambiente, vale só para você no terminal, nunca para um agente (veja Onde fica a configuração):

{
"version": 1,
"enabled": true,
"providers": {
"anthropic": { "kind": "http", "preset": "anthropic", "model": "claude-haiku-5-5", "key": "keychain", "consented_at": "2026-11-13T12:00:00.000Z", "consent": "9f2c…" },
"claude-code": { "kind": "agent", "agent": "claude-code", "model": null, "consented_at": "2026-11-13T12:05:00.000Z", "consent": "41ab…" }
},
"roles": { "answer": ["anthropic", "claude-code"] },
"limits": { "context_tokens": 3000, "max_output_tokens": 2048, "timeout_ms": 60000, "max_calls_per_hour": 30, "max_calls_per_session": 20 }
}
CampoO que é
enabledfalse depois de cabecao llm off: nada sai, e o resto continua
providersCada provedor: kind (http ou agent), preset ou agent, model, base_url (só em compatible, ollama e lmstudio; conferido a cada leitura), key (env:NOME, keychain, file ou none), consented_at e consent (a sua confirmação, assinada com o segredo local; sem ela, ou se destino, modelo ou chave mudarem, o provedor não é usado)
roles.answerA ordem de uso: se o primeiro não estiver disponível ou falhar, o seguinte responde
limitsContexto por pergunta (500 a 8000 tokens), saída e tempo limite de cada chamada; o teto de gasto: max_calls_per_hour (padrão 30) e max_calls_per_session (padrão 20, por sessão do servidor MCP)

Junto dele: llm-consent.key (o segredo que assina as confirmações, 0600), ask-usage.json (as horas das perguntas recentes, para o teto por hora, com a trava ask-usage.lock), ask.log (uma linha por pergunta: o status, as contagens e o tempo, sem trechos do cérebro e sem chave), e, quando é o caso: credentials.json (chaves guardadas com --store file, ou num Linux sem secret-tool; permissão 0600) e, no Windows, credentials.dpapi.json (as chaves cifradas com a DPAPI do seu usuário). O ask.log fica aqui, e não na pasta de cache, porque a pasta de cache segue o ambiente de quem roda (um agente a apontaria para onde quisesse). No Claude Code, o provedor guarda também binary: o caminho real do claude confirmado. O cabecao uninstall apaga tudo isso, e as chaves no cofre do sistema.

O cérebro​

A pasta do cérebro (padrão ~/cabecao) é um repositório git comum. A estrutura está em Estrutura do cérebro.

ArquivoVai para o git?Pode editar à mão?
Notas em wiki/, memory/, raw/SimSim
.cabecao.jsonSimSim, com cuidado; veja .cabecao.json
AGENTS.md, CLAUDE.mdSimSim (agentes, não)
.gitignore, .gitattributesSimSim, mantendo as linhas do Cabeção (o doctor avisa se faltar alguma)
index.mdSimNão: é regenerado
log.mdSimNão: só recebe linhas no fim
*.conflict-*SimSim: junte e apague
.cabecao/NãoNão

.cabecao/: o banco local​

Pasta de cada máquina, fora do git:

CaminhoO que é
.cabecao/cabecao.dbO banco local (SQLite): índice de busca, grafo, fatos e menções
.cabecao/locks/Travas entre processos (sync, escritas)
.cabecao/sync/Estado do último sync, o diário de um sync em andamento e o cache do catálogo
.cabecao/logs/sync.log, o resultado de cabecao sync --log (o sync agendado) e de --detach
.cabecao/confirm.keyO segredo desta máquina que assina os tokens de confirmação
.cabecao/embeddings.jsonSe a busca por significado foi desligada só nesta máquina (cabecao embeddings off)
.cabecao/backups/obsidian/, .cabecao/obsidian-setup.jsonOs originais guardados e o registro do cabecao obsidian setup
.cabecao/template/O modelo novo de um arquivo que você editou, deixado pelo cabecao upgrade --template

O banco é derivado das notas e do git. Se ele der problema, rode cabecao reindex --full (ou apague .cabecao/cabecao.db e rode cabecao status): ele é refeito a partir das notas. Apagar a pasta .cabecao/ inteira também refaz o banco, mas leva junto o que é só desta máquina: os logs, os backups e o registro do obsidian setup e um embeddings off feito aqui.

O que o Cabeção escreve fora do cérebro​

  • A pasta de configuração da máquina (acima): config.json e, conforme o que você usa, llm.json e os arquivos dele, skills.json (as skills instaladas) e schedule.json (o sync agendado).
  • Os arquivos de configuração dos clientes de IA, quando você roda init ou install-client, e só a entrada cabecao dentro deles. A primeira alteração em cada arquivo deixa uma cópia .bak ao lado. A lista de arquivos por cliente está em Conectar aos clientes de IA.
  • As pastas de skills dos agentes, com cabecao install-skills.
  • A tarefa do agendador do sistema, com cabecao schedule on.
  • A pasta de cache (~/.cache/cabecao; no Windows, %LOCALAPPDATA%\cabecao): o runtime e os modelos da busca por significado e a saída do consolidate --run.

O cabecao uninstall tira tudo isso desta máquina, nunca o cérebro.

O cabecao consolidate --run cria uma pasta temporária (a configuração de MCP do agente e o diretório de trabalho dele), apagada no fim, e guarda a saída do agente em ~/.cache/cabecao/consolidate-runs/<id>.log (no Windows, %LOCALAPPDATA%\cabecao\consolidate-runs). Ele não altera a configuração dos clientes.