A ferramenta de memória está atualmente em beta. Para habilitá-la, use o cabeçalho beta
context-management-2025-06-27 em suas solicitações de API.Por favor, entre em contato através do nosso formulário de feedback para compartilhar seu feedback sobre este recurso.Casos de uso
- Manter contexto de projeto entre múltiplas execuções de agente
- Aprender com interações passadas, decisões e feedback
- Construir bases de conhecimento ao longo do tempo
- Habilitar aprendizado entre conversas onde Claude melhora em fluxos de trabalho recorrentes
Como funciona
Quando habilitado, Claude verifica automaticamente seu diretório de memória antes de iniciar tarefas. Claude pode criar, ler, atualizar e excluir arquivos no diretório/memories para armazenar o que aprende enquanto trabalha, então referenciar essas memórias em conversas futuras para lidar com tarefas similares de forma mais eficaz ou continuar de onde parou.
Como esta é uma ferramenta do lado do cliente, Claude faz chamadas de ferramenta para executar operações de memória, e sua aplicação executa essas operações localmente. Isso lhe dá controle completo sobre onde e como a memória é armazenada. Por segurança, você deve restringir todas as operações de memória ao diretório /memories.
Exemplo: Como funcionam as chamadas da ferramenta de memória
Quando você pede para Claude ajudar com uma tarefa, Claude verifica automaticamente seu diretório de memória primeiro. Aqui está como uma interação típica se parece: 1. Solicitação do usuário:Modelos suportados
A ferramenta de memória está disponível em:- Claude Sonnet 4.5 (
claude-sonnet-4-5-20250929) - Claude Sonnet 4 (
claude-sonnet-4-20250514) - Claude Haiku 4.5 (
claude-haiku-4-5-20251001) - Claude Opus 4.1 (
claude-opus-4-1-20250805) - Claude Opus 4 (
claude-opus-4-20250514)
Começando
Para usar a ferramenta de memória:- Inclua o cabeçalho beta
context-management-2025-06-27em suas solicitações de API - Adicione a ferramenta de memória à sua solicitação
- Implemente manipuladores do lado do cliente para operações de memória
Para lidar com operações da ferramenta de memória em sua aplicação, você precisa implementar manipuladores para cada comando de memória. Nossos SDKs fornecem auxiliares da ferramenta de memória que lidam com a interface da ferramenta—você pode fazer subclasse de
BetaAbstractMemoryTool (Python) ou usar betaMemoryTool (TypeScript) para implementar seu próprio backend de memória (baseado em arquivo, banco de dados, armazenamento em nuvem, arquivos criptografados, etc.).Para exemplos funcionais, veja:- Python: examples/memory/basic.py
- TypeScript: examples/tools-helpers-memory.ts
Uso básico
Comandos da ferramenta
Sua implementação do lado do cliente precisa lidar com estes comandos da ferramenta de memória:view
Mostra conteúdo do diretório ou conteúdo do arquivo com intervalos de linha opcionais:create
Criar ou sobrescrever um arquivo:str_replace
Substituir texto em um arquivo:insert
Inserir texto em uma linha específica:delete
Excluir um arquivo ou diretório:rename
Renomear ou mover um arquivo/diretório:Orientação de prompting
Incluímos automaticamente esta instrução ao prompt do sistema quando a ferramenta de memória está incluída:Nota: ao editar sua pasta de memória, sempre tente manter seu conteúdo atualizado, coerente e organizado. Você pode renomear ou excluir arquivos que não são mais relevantes. Não crie novos arquivos a menos que seja necessário.Você também pode orientar o que Claude escreve na memória, por exemplo, “Apenas anote informações relevantes para <tópico> em seu sistema de memória.”
Considerações de segurança
Aqui estão preocupações importantes de segurança ao implementar seu armazenamento de memória:Informações sensíveis
Claude geralmente se recusará a anotar informações sensíveis em arquivos de memória. No entanto, você pode querer implementar validação mais rigorosa que remove informações potencialmente sensíveis.Tamanho do armazenamento de arquivos
Considere rastrear tamanhos de arquivos de memória e prevenir que arquivos cresçam muito. Considere adicionar um número máximo de caracteres que o comando de leitura de memória pode retornar, e deixe Claude paginar através do conteúdo.Expiração de memória
Considere limpar arquivos de memória periodicamente que não foram acessados por um tempo prolongado.Proteção contra travessia de caminho
Entradas de caminho maliciosas poderiam tentar acessar arquivos fora do diretório
/memories. Sua implementação DEVE validar todos os caminhos para prevenir ataques de travessia de diretório.- Valide que todos os caminhos começam com
/memories - Resolva caminhos para sua forma canônica e verifique que permanecem dentro do diretório de memória
- Rejeite caminhos contendo sequências como
../,..\\, ou outros padrões de travessia - Observe sequências de travessia codificadas em URL (
%2e%2e%2f) - Use utilitários de segurança de caminho integrados de sua linguagem (por exemplo,
pathlib.Path.resolve()erelative_to()do Python)
Tratamento de erros
A ferramenta de memória usa os mesmos padrões de tratamento de erros que a ferramenta de editor de texto. Erros comuns incluem arquivo não encontrado, erros de permissão e caminhos inválidos.Usando com Edição de Contexto
A ferramenta de memória pode ser combinada com edição de contexto, que limpa automaticamente resultados de ferramentas antigas quando o contexto da conversa cresce além de um limite configurado. Esta combinação habilita fluxos de trabalho agênticos de longa duração que de outra forma excederiam limites de contexto.Como eles trabalham juntos
Quando a edição de contexto está habilitada e sua conversa se aproxima do limite de limpeza, Claude recebe automaticamente uma notificação de aviso. Isso leva Claude a preservar qualquer informação importante dos resultados de ferramentas em arquivos de memória antes que esses resultados sejam limpos da janela de contexto. Após os resultados de ferramentas serem limpos, Claude pode recuperar as informações armazenadas dos arquivos de memória sempre que necessário, efetivamente tratando a memória como uma extensão de seu contexto de trabalho. Isso permite que Claude:- Continue fluxos de trabalho complexos e de múltiplas etapas sem perder informações críticas
- Referencie trabalho e decisões passadas mesmo após resultados de ferramentas serem removidos
- Mantenha contexto coerente entre conversas que excederiam limites típicos de contexto
- Construa uma base de conhecimento ao longo do tempo mantendo a janela de contexto ativa gerenciável
Exemplo de fluxo de trabalho
Considere um projeto de refatoração de código com muitas operações de arquivo:- Claude faz numerosas edições em arquivos, gerando muitos resultados de ferramentas
- Conforme o contexto cresce e se aproxima do seu limite, Claude recebe um aviso
- Claude resume as mudanças feitas até agora em um arquivo de memória (por exemplo,
/memories/refactoring_progress.xml) - A edição de contexto limpa os resultados de ferramentas mais antigos automaticamente
- Claude continua trabalhando, referenciando o arquivo de memória quando precisa lembrar quais mudanças já foram completadas
- O fluxo de trabalho pode continuar indefinidamente, com Claude gerenciando tanto contexto ativo quanto memória persistente