NotariumDocumentação
Versão da documentação: latest
PT

Exportação

A exportação baixa um espaço inteiro — ou uma única pasta — em um único ZIP de arquivos Markdown. Como os seus arquivos são a fonte da verdade (o princípio file-first), a exportação os lê direto do disco em vez de reconstruí-los a partir de um índice: o pacote leva os arquivos de verdade, com o notarium-id no frontmatter de cada um.

É justamente por isso que a exportação é reversível — dá para trazer tudo de volta pela importação ou levar para outra instância sem perder estrutura, identidade nem datas. No fundo, exportar não é "tirar os dados para fora"; é uma forma prática de empacotar o que já está no disco na forma dos seus arquivos.

Como exportar

A exportação fica na aba Export, nas configurações do espaço:

  • O botão enfileira uma tarefa; a partir daí você acompanha uma barra de progresso com porcentagem (assim que o número de notas é conhecido) e um botão Cancel.
  • Quando fica pronto, o pacote é baixado automaticamente; ao lado permanecem os botões Download .zip (baixar de novo) e Export again (rodar a exportação outra vez).
  • Sair da aba e voltar é seguro: ao retornar, você vê de novo a tarefa em andamento ou o arquivo pronto para baixar.

Dá para exportar uma única pasta pelo menu de contexto da árvore — o item Export folder. É a mesma tarefa, só que restrita a uma subárvore; o progresso aparece em um toast "fixo" com botão de cancelar.

Opções

Os dois caminhos de exportação aceitam o mesmo conjunto de parâmetros:

ParâmetroValoresO que faz
scopeuser (padrão) · alluser — apenas as suas notas; all — tudo o que o espaço contém, incluindo o mount de memória do agente (.notarium/memory).
frontmatterkeep (padrão) · stripkeep grava o arquivo como está; strip corta o bloco YAML — uma cópia limpa para leitura.
foldercaminhoRestringe a exportação a uma subárvore (o que o Export folder faz).
frontmatter=strip quebra a reimportação

Cortar o frontmatter gera uma cópia com perdas: junto com o bloco YAML você perde o notarium-id e as tags. Um pacote assim é prático para repassar notas para leitura, mas você não consegue mais importá-lo de volta sem perdas. Para migrar dados, fique com keep (o padrão).

Exportação não é backup da instância

Mesmo com scope=all, o pacote da exportação carrega só os arquivos Markdown do espaço. Não há banco de metadados dentro dele: nem contas, nem permissões de acesso, nem histórico de versões, nem estado das tarefas. Não dá para restaurar uma instância a partir dele. Backup é uma operação à parte, feita por um comando embutido na imagem — veja Backup e restauração.

Como funciona por baixo dos panos

A exportação foi feita para trabalhar em streaming, para que uma base de conhecimento arbitrariamente grande nunca fique retida na memória:

  • Tarefa assíncrona por padrão. Quando o host tem banco de metadados (a norma na auto-hospedagem), a exportação é uma tarefa durável: um worker em segundo plano monta o ZIP no armazenamento de artefatos e entrega o arquivo pronto com suporte a download retomável. Aba fechada, conexão caída ou reinício do servidor não comprometem a exportação.
  • O download não passa por buffer. O navegador transmite o pacote pronto direto para o disco e tira o nome do cabeçalho da resposta — uma base de conhecimento grande não fica retida na memória da aba.
  • Cancelar interrompe o trabalho. Um download cancelado para de puxar notas — o servidor não fica lendo a base de conhecimento inteira à toa.
flowchart LR
  notes[(Notas Markdown)] -->|ler do disco| worker[Worker em segundo plano]
  worker -->|ZIP| artifact[Artefato da tarefa]
  artifact -->|download| user([Navegador])
Exportação sem banco de metadados

Em um host sem banco de metadados (ele só está ausente no modo AUTH_MODE=none) não existe camada de tarefas: a exportação segue o caminho síncrono de streaming — o mesmo ZIP é entregue como download direto dentro de uma única requisição, sem progresso e sem download retomável. Muda só a forma de entrega; o resultado é o mesmo.

Limites

  • Um espaço por vez. Espaços são armazenamentos isolados, cada um com seu próprio controle de acesso; para exportar vários, exporte um de cada vez.
  • O artefato tem TTL. O ZIP pronto fica guardado por um tempo limitado (7 dias por padrão) e é removido pelo coletor de lixo; até expirar, dá para baixá-lo de novo.
  • Anexos binários não são exportados. O pacote leva o texto das notas — arquivos Markdown.
  • Cancelar, mas não pausar. Uma tarefa pode ser cancelada; não há como pausar e retomar.

A seguir

  • Importação — traga um pacote de volta ou mova a base de conhecimento para outra instância.
  • Visão geral da seção — por que o file-first torna importação e exportação baratas.