La herramienta de memoria está actualmente en beta. Para habilitarla, usa el encabezado beta
context-management-2025-06-27
en tus solicitudes de API.Por favor, comunícate a través de nuestro formulario de comentarios para compartir tus comentarios sobre esta característica.Casos de uso
- Mantener contexto de proyecto a través de múltiples ejecuciones de agente
- Aprender de interacciones pasadas, decisiones y retroalimentación
- Construir bases de conocimiento a lo largo del tiempo
- Habilitar aprendizaje entre conversaciones donde Claude mejora en flujos de trabajo recurrentes
Cómo funciona
Cuando está habilitada, Claude automáticamente verifica su directorio de memoria antes de comenzar tareas. Claude puede crear, leer, actualizar y eliminar archivos en el directorio/memories
para almacenar lo que aprende mientras trabaja, luego referenciar esas memorias en conversaciones futuras para manejar tareas similares más efectivamente o continuar donde lo dejó.
Dado que esta es una herramienta del lado del cliente, Claude hace llamadas de herramienta para realizar operaciones de memoria, y tu aplicación ejecuta esas operaciones localmente. Esto te da control completo sobre dónde y cómo se almacena la memoria. Por seguridad, deberías restringir todas las operaciones de memoria al directorio /memories
.
Ejemplo: Cómo funcionan las llamadas de herramienta de memoria
Cuando le pides a Claude que ayude con una tarea, Claude automáticamente verifica su directorio de memoria primero. Así es como se ve una interacción típica: 1. Solicitud del usuario:Modelos compatibles
La herramienta de memoria está disponible en:- Claude Sonnet 4.5 (
claude-sonnet-4-5-20250929
) - Claude Sonnet 4 (
claude-sonnet-4-20250514
) - Claude Opus 4.1 (
claude-opus-4-1-20250805
) - Claude Opus 4 (
claude-opus-4-20250514
)
Comenzando
Para usar la herramienta de memoria:- Incluye el encabezado beta
context-management-2025-06-27
en tus solicitudes de API - Agrega la herramienta de memoria a tu solicitud
- Implementa manejadores del lado del cliente para operaciones de memoria
Para manejar operaciones de herramienta de memoria en tu aplicación, necesitas implementar manejadores para cada comando de memoria. Nuestros SDKs proporcionan ayudantes de herramienta de memoria que manejan la interfaz de herramienta—puedes hacer subclase de
BetaAbstractMemoryTool
(Python) o usar betaMemoryTool
(TypeScript) para implementar tu propio backend de memoria (basado en archivos, base de datos, almacenamiento en la nube, archivos encriptados, etc.).Para ejemplos funcionales, consulta:- Python: examples/memory/basic.py
- TypeScript: examples/tools-helpers-memory.ts
Uso básico
Comandos de herramienta
Tu implementación del lado del cliente necesita manejar estos comandos de herramienta de memoria:view
Muestra contenido de directorio o contenido de archivo con rangos de línea opcionales:create
Crear o sobrescribir un archivo:str_replace
Reemplazar texto en un archivo:insert
Insertar texto en una línea específica:delete
Eliminar un archivo o directorio:rename
Renombrar o mover un archivo/directorio:Guía de prompting
Automáticamente incluimos esta instrucción al prompt del sistema cuando se incluye la herramienta de memoria:Nota: cuando edites tu carpeta de memoria, siempre trata de mantener su contenido actualizado, coherente y organizado. Puedes renombrar o eliminar archivos que ya no sean relevantes. No crees nuevos archivos a menos que sea necesario.También puedes guiar lo que Claude escribe en memoria, por ejemplo, “Solo anota información relevante a <tema> en tu sistema de memoria.”
Consideraciones de seguridad
Aquí hay preocupaciones importantes de seguridad al implementar tu almacén de memoria:Información sensible
Claude usualmente se negará a escribir información sensible en archivos de memoria. Sin embargo, es posible que quieras implementar validación más estricta que elimine información potencialmente sensible.Tamaño de almacenamiento de archivos
Considera rastrear tamaños de archivos de memoria y prevenir que los archivos crezcan demasiado. Considera agregar un número máximo de caracteres que el comando de lectura de memoria puede devolver, y deja que Claude pagine a través del contenido.Expiración de memoria
Considera limpiar archivos de memoria periódicamente que no hayan sido accedidos en un tiempo extendido.Protección contra traversal de rutas
Entradas de ruta maliciosas podrían intentar acceder archivos fuera del directorio
/memories
. Tu implementación DEBE validar todas las rutas para prevenir ataques de traversal de directorio.- Validar que todas las rutas comiencen con
/memories
- Resolver rutas a su forma canónica y verificar que permanezcan dentro del directorio de memoria
- Rechazar rutas que contengan secuencias como
../
,..\\
, u otros patrones de traversal - Vigilar secuencias de traversal codificadas en URL (
%2e%2e%2f
) - Usar las utilidades de seguridad de ruta integradas de tu lenguaje (por ejemplo,
pathlib.Path.resolve()
yrelative_to()
de Python)