MemoryCustodian

MemoryCustodian

O MemoryCustodian oferece aos agentes de codificação uma memória de projeto durável e nativa do repositório, armazenando o contexto chave como Markdown simples e carregando apenas as partes relevantes para a tarefa por meio de um manifesto para uma sobrecarga mínima de prompts entre sessões e equipes.
https://github.com/waittim/MemoryCustodian?ref=producthunt&utm_source=aipure
MemoryCustodian

Informações do Produto

Atualizado:Jul 30, 2026

O que é MemoryCustodian

MemoryCustodian é um sistema leve de "memória de projeto" para agentes de codificação de IA que os ajuda a reter o que importa entre as sessões – decisões, restrições, abordagens rejeitadas e a forma atual do projeto – sem depender do histórico de bate-papo ou de prompts de instrução inchados. Ele mantém o contexto durável como Markdown revisável e comparável dentro do seu repositório (normalmente em `docs/memory/`) e fornece uma CLI Python (somente stdlib) rápida e offline-first, além de integrações de agentes (por exemplo, Codex, Claude Code, habilidades estilo Gemini). O objetivo é tornar o conhecimento do projeto portátil entre os agentes e fácil para os humanos auditarem como código, mantendo o contexto de tempo de execução pequeno e intencional.

Principais Recursos do MemoryCustodian

MemoryCustodian é um sistema "memória de projeto" offline-first para agentes de codificação que armazena contexto durável (decisões, restrições, abordagens rejeitadas e forma atual do projeto) como Markdown simples dentro do seu repositório. Em vez de colar prompts grandes ou depender do histórico de bate-papo, ele usa um fluxo de trabalho manifest-first para carregar apenas os arquivos de memória relevantes para a tarefa no pacote de contexto de um agente, mantendo as sessões leves, ao mesmo tempo em que torna o conhecimento inspecionável, diferenciável, portátil entre agentes/equipes e mantível por meio de um CLI Python determinístico e apenas de biblioteca padrão com mutações protegidas de visualização primeiro (por exemplo, compactar/esquecer/migrar).
Memória Markdown nativa do repositório: Armazena conhecimento durável do projeto em `docs/memory/` como Markdown simples para que os humanos possam revisar, diferenciar, confirmar e reverter a memória como código — sem DB vetorial, índice RAG ou dependência de nuvem necessária.
Carregamento seletivo manifest-first: Os agentes leem `manifest.md` e depois `brief.md`, e carregam apenas os arquivos específicos relevantes para a tarefa atual (planejamento/implementação/artefato), minimizando o inchaço do prompt enquanto preservam o contexto crítico.
Bootstraps de agente finos em todas as plataformas: Gera pequenos arquivos de bootstrap (por exemplo, `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`) que apontam os agentes para o manifesto em vez de incorporar grandes blocos de instrução, suportando Codex, Claude Code, agentes estilo Gemini e uso genérico de shell.
CLI determinístico com manutenção protegida: Fornece comandos `init/status/check/read/add/enable/forget/compact/migrate`; as operações de manutenção são de visualização primeiro e preservam a estrutura, com verificações de orçamento e planos de mutação seguros antes de aplicar as alterações.
Módulos de memória com escopo e opt-in: Mantém o conhecimento opcional (por exemplo, `rules/`, `profiles/`, `areas/`, `archive/`) fora do contexto padrão até que seja explicitamente habilitado pelo manifesto, permitindo memória específica do subsistema sem poluir todas as tarefas.
Controles de esquecimento e arquivamento seguros para privacidade: Suporta fluxos de esquecimento suave/rígido e purga com lápides e proteções de redação, além de arquivamento controlado (por exemplo, arquivamento de decisão mais antiga) que requer confirmação explícita para evitar perda semântica acidental.

Casos de Uso do MemoryCustodian

Equipes de software que mantêm bases de código de longa duração: Capture decisões de arquitetura, restrições e abordagens rejeitadas para que novas sessões de agente (e novos engenheiros) não rediscutam escolhas anteriores, reduzindo a depuração repetida e o retrabalho entre sprints.
Ambientes regulamentados ou offline: Use em finanças, saúde, defesa ou configurações empresariais isoladas onde serviços de memória em nuvem são proibidos; o CLI apenas de biblioteca padrão e o armazenamento local de Markdown suportam fluxos de trabalho totalmente offline.
Interoperabilidade multiagente/ferramentas: Padronize a memória do projeto em diferentes hosts de agente (Codex, Claude Code, agentes estilo Gemini) para que as equipes possam trocar de ferramentas sem perder o contexto ou reconstruir prompts.
Consultoria e transferências de agências: Entregue projetos de clientes com um pacote de memória auditável e contido no repositório (resumo/decisões/restrições/não usar) que preserva a lógica e os limites para futuros mantenedores.
Monorepos complexos e propriedade de subsistemas: Use `areas/` e roteamento de manifesto para carregar apenas a memória relevante para o domínio (frontend, sincronização, infraestrutura, etc.), ajudando os agentes a trabalhar de forma eficaz sem arrastar o contexto de toda a organização para cada tarefa.

Vantagens

Portátil e auditável: a memória é Markdown simples no repositório, fácil de revisar, diferenciar e controlar a versão.
Contexto de baixa sobrecarga: o carregamento seletivo impulsionado por manifesto evita o inchaço do prompt e mantém as sessões do agente eficientes.
Offline-first e dependências mínimas: o CLI principal é apenas de biblioteca padrão Python e projetado para funcionar sem serviços de rede.

Desvantagens

Requer disciplina de curadoria: o andaime `brief.md` gerado deve ser curado de fontes autoritárias antes de ser confiável.
Não é recuperação semântica automática: evita embeddings/RAG por design, então a relevância depende de uma boa estrutura de manifesto e da qualidade de escrita humana/agente.
As operações de manutenção podem ser conservadoras: salvaguardas e restrições de visualização primeiro (por exemplo, proteções de correspondência ampla) podem adicionar etapas de fluxo de trabalho para usuários que esperam uma limpeza totalmente automática.

Como Usar o MemoryCustodian

1) Instale o MemoryCustodian (escolha o caminho que corresponde ao seu agente/fluxo de trabalho): Escolha um método de instalação: - Peça ao seu agente de codificação para instalar a habilidade do repositório: https://github.com/waittim/MemoryCustodian - Codex (marketplace local): execute `codex plugin marketplace add .` a partir de um checkout, depois `codex plugin add memory-custodian@memory-custodian-dev`. - Claude Code (plugin): para testes locais, execute `claude --plugin-dir .`, ou instale em habilidades pessoais com `./install.sh claude`. - Agentes estilo Gemini: instale com `./install.sh gemini` ou `gemini skills link ./skills/memory-custodian`. - CLI/checkout de origem: execute do repositório via `scripts/memory-custodian ...` ou instale editável com `python3 -m pip install -e .` para obter o comando `memory-custodian`.
2) Inicialize o MemoryCustodian em um projeto (uma vez por repositório): Execute a inicialização uma vez para cada projeto de destino: - Se instalado como um script de console: `memory-custodian init --project-root /path/to/project --agent all` - A partir de um checkout de origem: `scripts/memory-custodian init --project-root /path/to/project --agent all` Use `--agent codex`, `--agent claude`, `--agent gemini` ou `--agent all` para gerar o(s) arquivo(s) de bootstrap fino(s) que seu agente lê.
3) Entenda o que a inicialização cria (onde a memória reside): A inicialização cria o conjunto de memória durável padrão em `docs/memory/`: - `manifest.md` (direciona o que carregar) - `brief.md` (forma atual do projeto) - `decisions.md` (decisões chave) - `constraints.md` (requisitos rígidos) - `do-not-use.md` (caminhos rejeitados / lápides) - `inbox.md` (área de preparação) Os arquivos de bootstrap da plataforma (por exemplo, `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`) permanecem finos e apontam os agentes para `docs/memory/`.
4) Curate o resumo gerado antes de confiar nele: Após `init`, `brief.md` começa como um andaime com TODOs. Preencha-o a partir de fontes autoritativas do projeto (README, código, docs) antes de tratar a memória como pronta. Use `memory-custodian status --project-root /path/to/project` (ou `scripts/memory-custodian status ...`) para ver se o resumo ainda não foi curado; `status` e `check` relatam um resumo não curado.
5) Carregue a memória certa para uma tarefa (leitura manifest-first): O fluxo de trabalho pretendido para os agentes é: 1) Leia `docs/memory/manifest.md`. 2) Leia `docs/memory/brief.md`. 3) Carregue apenas os arquivos relevantes para a tarefa nomeados pelo manifesto. Para inspeção manual, gere um pacote de contexto com: - `memory-custodian read --project-root /path/to/project --task planning` - `memory-custodian read --project-root /path/to/project --task implementation` - `memory-custodian read --project-root /path/to/project --task artifact`
6) Adicione memória durável quando algo deve sobreviver ao bate-papo atual: Registre decisões/restrições/preferências/abordagens rejeitadas usando a CLI: - `memory-custodian add "Escolhemos o carregamento manifest-first." --type decision` - `memory-custodian add "Persistir backoff de nova tentativa de sincronização." --type decision --area sync --reason "Manter as novas tentativas limitadas entre os lançamentos."` Mantenha as entradas de decisão curtas (a ferramenta impõe um guia de tokens e rejeita gravações excessivamente longas, a menos que você explicitamente permita entradas longas).
7) Habilite módulos de memória opcionais apenas quando se tornarem relevantes: Módulos opcionais (por exemplo, regras, perfis, áreas) são opcionais e não são carregados a menos que sejam habilitados e roteados pelo manifesto. Habilite-os conforme necessário: - `memory-custodian enable preferences` - `memory-custodian enable rules/output` - `memory-custodian enable profile/git` - `memory-custodian enable area/frontend` Habilitar nunca sobrescreve um arquivo de módulo existente.
8) Use 'do-not-use' para preservar abordagens rejeitadas e evitar regressões: Quando você rejeita intencionalmente uma abordagem (por exemplo, um backend de armazenamento ou arquitetura), registre-a em `docs/memory/do-not-use.md` (via edições ou o fluxo de trabalho apropriado de adicionar/esquecer) para que sessões futuras não a reproponham.
9) Verifique a saúde e a compatibilidade do protocolo regularmente: Execute a validação determinística para garantir que a estrutura, os orçamentos e os metadados do protocolo estejam corretos: - `memory-custodian check --project-root /path/to/project` Use `memory-custodian status` para uma visão geral rápida e para detectar um resumo não curado.
10) Compacte e mantenha a memória (preview-first, mutações seguras): Use comandos de manutenção para manter a memória pequena e atualizada: - `memory-custodian compact --project-root /path/to/project` A compactação é protegida e preview-first; aplique as alterações somente após revisar o plano. A compactação da caixa de entrada é conservadora (por exemplo, remoção exata de unidades de marcadores de nível superior duplicadas e filtragem de lápides) e espera que um agente/humano faça a promoção semântica para decisões/restrições.
11) Esqueça informações desatualizadas com segurança (preview-first): Remova ou redija tópicos desatualizados com o esquecimento preview-first: - Visualizar: `memory-custodian forget "nota de implantação antiga" --mode soft --project-root /path/to/project` - Aplicar após revisão: `memory-custodian forget "nota de implantação antiga" --mode soft --apply --project-root /path/to/project` Correspondências amplas exigem confirmação explícita (por exemplo, `--allow-broad-match`). Alguns casos exigem reescrita manual; a ferramenta recusará exclusões em massa inseguras.
12) Repare ou substitua uma configuração existente quando necessário: Se arquivos estiverem faltando ou metadados precisarem ser atualizados sem sobrescrever conteúdo curado: - Reparar: `memory-custodian init --project-root /path/to/project --repair` Se você intencionalmente deseja uma substituição completa, use a substituição preview-first e aplique somente quando estiver correto: - `memory-custodian init --project-root /path/to/project --replace-existing` - então adicione `--apply` somente se os arquivos listados devem ser substituídos.
13) Migre as versões do protocolo/memória do projeto quando a ferramenta for atualizada: Quando `check` relata metadados de protocolo antigos ou ausentes, migre o manifesto do projeto offline: - Visualizar: `memory-custodian migrate --project-root /path/to/project` - Aplicar após revisão: `memory-custodian migrate --apply --project-root /path/to/project`
14) Use a invocação correta no Windows vs. checkout de origem: No Windows, instale o comando do console e use `memory-custodian ...`. A partir de um checkout de repositório em qualquer plataforma, você pode executar `scripts/memory-custodian ...` como o wrapper.

Perguntas Frequentes do MemoryCustodian

MemoryCustodian é uma ferramenta que oferece aos agentes de codificação uma "memória de projeto" durável, armazenando decisões, restrições, ideias rejeitadas e contexto do projeto como Markdown simples dentro do seu repositório, e então carregando apenas as partes necessárias para a tarefa atual.

Ferramentas de IA Mais Recentes Semelhantes a MemoryCustodian

Gait
Gait
O Gait é uma ferramenta de colaboração que integra a geração de código assistida por IA com controle de versão, permitindo que as equipes rastreiem, entendam e compartilhem o contexto do código gerado por IA de forma eficiente.
invoices.dev
invoices.dev
invoices.dev é uma plataforma de faturamento automatizada que gera faturas diretamente dos commits do Git dos desenvolvedores, com capacidades de integração para GitHub, Slack, Linear e serviços do Google.
EasyRFP
EasyRFP
EasyRFP é um kit de ferramentas de computação de borda alimentado por IA que agiliza as respostas a RFP (Pedido de Proposta) e possibilita fenotipagem de campo em tempo real por meio de tecnologia de aprendizado profundo.
Cart.ai
Cart.ai
O Cart.ai é uma plataforma de serviços impulsionada por IA que fornece soluções abrangentes de automação de negócios, incluindo codificação, gerenciamento de relações com clientes, edição de vídeo, configuração de e-commerce e desenvolvimento de IA personalizado com suporte 24/7.