Pular para o conteúdo
Menu

Produto

Soluções

Integrações

Desenvolvedores

Idioma

Produto

Como a memória envelhece

Páginas de sessão sem uso perdem peso de retenção e podem ser removidas. Compactação de páginas frias, deduplicação e dream pass vêm desligados. Com um LLM configurado, um agendador separado de autoaperfeiçoamento pode editar a wiki automaticamente.

O que envelhece e o que fica

Só uma das quatro camadas de memória decai. Páginas fixadas ficam de fora em todas elas.

  • De trabalho

    Anotações da sessão em andamento. Acabam junto com ela.

  • Episódica

    Uma página por sessão. É esta a camada que envelhece: uma página que ninguém lê esfria em poucos meses.

  • Semântica

    Decisões, conceitos e gotchas. Não decaem.

  • Procedural

    Regras, procedimentos e runbooks. Não decaem.

O caminho sem LLM

Uma varredura agendada pontua toda página episódica que não está fixada. A pontuação cai com a idade e sobe cada vez que a página é lida.

Página lida

reforça

Pontuação de retenção

Forget sweep

Fria?

Fria?

Descartar

Compactar

Uma sobrevivente

histórico git

restore-page

Descartar

Compactar

Uma sobrevivente

Linhas contínuas mostram os padrões; contornos tracejados indicam recursos opcionais. restore-page recupera o conteúdo de um checkpoint git preservado enquanto o projeto existir. Não recupera sessões, observações ou handoffs que só existem no banco de dados.

A pontuação de retenção

  • Com os valores padrão, uma página perde metade da pontuação a cada 35 dias, mais ou menos. Abaixo de 0,20 ela conta como fria.
  • Cada leitura soma na pontuação, e o efeito das leituras antigas também vai sumindo.
  • Um feedback Stale ou Wrong derruba a página para a saliência mais baixa.
  • A pontuação decide o que a varredura faz. Ela nunca muda o ranking da busca.
config do servidor
# As três são opcionais. Sem elas, as páginas frias são descartadas em uma curva só, compartilhada.
[decay]
compact_cold_episodic = true
dedup_cold_clusters = true

[decay.half_life_days]
working = 7
episodic = 365
  1. Sempre ligado

    Ler mantém a página viva

    Resultados de busca, abrir uma página, chegar nela por um link e o memory_explore contam como leitura. Leituras só aumentam a pontuação.

  2. Desligado por padrão

    Uma meia-vida por camada

    [decay.half_life_days] define a velocidade com que cada camada esfria, por exemplo uma vida curta para rascunhos e uma longa para o histórico de sessões. Sem ele, as pontuações ficam exatamente como eram.

  3. Desligado por padrão

    Compactar uma página fria

    Com compact_cold_episodic, uma página fria mantém o abstract, o resumo do primeiro parágrafo e os tokens que vale a pena guardar (caminhos de arquivo, URLs, trechos de código, códigos de erro e identificadores) e perde a prosa. Sem ele, a página é descartada.

  4. Desligado por padrão

    Mesclar quase duplicatas

    Com dedup_cold_clusters, páginas frias que dizem quase a mesma coisa são agrupadas em clusters pelos embeddings. A de maior pontuação sobrevive e absorve os tokens preservados das outras. As outras são substituídas e apontam para ela.

  5. Desligado por padrão

    Pular sessões vazias

    Um filtro de entropia tira da passada de experiência as páginas de sessão quase vazias ou muito repetitivas, antes de qualquer prompt de LLM ser montado.

  6. Roda com memory_lint

    Sinalizar prováveis contradições

    O memory_lint reporta pares de páginas de conhecimento que cobrem o mesmo assunto sem serem duplicatas, e diz qual é a mais nova. O relatório é só um aviso e não edita página nenhuma.

  7. Sempre ligado

    Uma pontuação de confiança por página

    Cada página recebe uma confiança entre 0 e 0,95, calculada a partir de quantas sessões distintas a sustentam, de quão recente é a última e de quantas páginas a contradizem. Ela aparece na saída do explain. Só afeta o ranking se você subir o belief_authority_weight acima de 0.

A passada de sonho

O dedup preserva os fatos de um cluster. A passada de sonho entrega o mesmo cluster ao seu LLM, que o reescreve como uma página só, coerente. Ela roda enquanto você está fora e para quando você volta.

Opt-in

5 min ocioso

Clusters frios

Mais inédito primeiro

LLM reescreve

LLM reescreve

Uma página mesclada

Fontes substituídas

Atividade cancela

histórico git

O agendador avalia uma execução a cada hora e precisa de cinco minutos de silêncio para começar. Cada execução trata no máximo oito clusters.
  • Ela precisa de três coisas

    [dream] enabled = true, um provedor de LLM e um embedder. Sem provedor, o dedup sem LLM continua funcionando como antes.

  • Ela espera você sair

    Uma execução começa depois de 300 segundos sem atividade de nenhum cliente. Quando você volta, ela cancela no próximo cluster.

  • O cluster mais inédito vai primeiro

    Os clusters mais distantes de tudo o que a wiki já diz são tratados primeiro. A ordenação e o gatilho por ociosidade seguem o Dreamer do Honcho.

  • As fontes são substituídas

    A página de maior pontuação é reescrita. Cada página mesclada vira um stub que aponta para ela, e o texto original fica na cadeia de versões e no git.

  • Toda mesclagem cita suas fontes

    Linhas de evidência registram quais páginas alimentaram cada mesclagem, então dá para rastrear um detalhe inventado. A saída é JSON validado contra um schema, e cada execução deixa um relatório.

config do servidor
# Também precisa de um provedor de LLM e de um embedder.
[dream]
enabled = true
idle_window_secs = 300
max_clusters_per_run = 8

O que dá para desfazer, e o que não dá

A compactação, o dedup e a passada de sonho reescrevem através da wiki, então cada mudança é uma versão nova e um commit no git.

  • Reescritas são reversíveis

    ai-memory restore-page e memory_restore_page recuperam uma página de um checkpoint git retido enquanto o projeto existe. Listar checkpoints e restaurar pelo MCP exige autoridade de administrador. Nenhum dos dois restaura sessões, observações ou handoffs guardados apenas no banco.

  • Revise os padrões antes de atualizar

    Compactação, deduplicação e dream pass continuam opcionais. As regras existentes de retenção e validade continuam valendo. Faça um backup completo antes de atualizar; arquivos automáticos de migração da wiki não substituem o backup do banco.

  • Fixe o que tem que ficar

    Fixar protege uma página contra remoção por decaimento. Páginas semânticas e procedurais não decaem. Uma data de validade explícita ainda permite a exclusão, mesmo de uma página fixada.

Limpeza opcional de ledgers: [decay] ledger_retention_months = N apaga logs de hooks rotacionados após N meses UTC completos desde o fim do mês do arquivo. O padrão é 0 (desativado). Sempre preserva log.md, o mês atual e o anterior. Confira com dry run; históricos git antigos e backups podem manter cópias.

Mais formas de consultar

Cada uma é um argumento opcional em uma ferramenta que já existe.

  • Respostas com citações

    memory_query com answer: true devolve uma resposta curta e os caminhos das páginas de onde ela saiu. Precisa de um provedor de LLM e segue o endpoint dialético do Honcho. A qualidade ainda não foi avaliada, então abra as páginas citadas.

  • Níveis de raciocínio

    Um argumento reasoning, de minimal a max, define o orçamento de tokens das respostas e do memory_explore.

  • Páginas fixadas primeiro

    pin_first coloca até dez páginas fixadas na frente dos resultados da busca, e o briefing da sessão agora lista essas páginas.

  • Páginas relacionadas

    memory_read_page com include_related percorre links e backlinks até três saltos de distância.

  • Versões antigas sob demanda

    include_superseded inclui na busca as versões substituídas, cada uma com seu rótulo.

  • Qual projeto respondeu

    memory_status informa o workspace e o projeto que resolveu, e como chegou neles.

Leia o changelog completo

Perguntas e respostas

O ai-memory apaga memórias antigas?

Páginas episódicas de sessão não fixadas envelhecem. Uma página fria é descartada por padrão; seu registro de exclusão no banco pode ser removido após 180 dias. Compactação ou mesclagem opcionais mantêm conteúdo menor. A página ainda pode ser recuperada se estiver em um checkpoint git preservado e seu projeto existir. Páginas fixadas, semânticas e procedurais não decaem, mas uma expiração explícita ainda pode excluí-las.

O envelhecimento da memória precisa de um LLM?

Não. A pontuação, as meias-vidas por camada, a compactação, o dedup, os avisos de contradição e a pontuação de confiança não usam LLM. O dedup e os avisos de contradição leem embeddings, que o embedder local padrão já gera. Só a passada de sonho chama um LLM, e ela vem desligada por padrão.

O que é a passada de sonho?

Um job opt-in que roda em background. Depois de cinco minutos de ociosidade, ele pega clusters de páginas frias quase duplicadas e faz o seu LLM reescrever cada cluster em uma página só. As fontes são substituídas, e a execução para quando você volta.

Uma atualização vai mudar a memória que eu já tenho?

Compactação, deduplicação e dream pass continuam opcionais. As regras existentes de retenção e validade continuam valendo. Faça um backup completo antes de atualizar; arquivos automáticos de migração da wiki não substituem o backup do banco.

Esses recursos melhoram as pontuações de recuperação?

Ninguém mediu isso ainda. O projeto trata esses recursos como entregues, opt-in e sem comprovação até o harness de avaliação mostrar um ganho.

Dê memória aos seus agentes hoje.

Gratuito e open source sob a licença MIT. Os recursos padrão de memória não precisam de chave de API de modelo; seu agente de código pode exigir uma conta própria.