Инструмент памяти в настоящее время находится в бета-версии. Чтобы включить его, используйте бета-заголовок
context-management-2025-06-27
в ваших API-запросах.Пожалуйста, обратитесь к нам через нашу форму обратной связи, чтобы поделиться своими отзывами об этой функции.Случаи использования
- Поддержание контекста проекта между множественными выполнениями агента
- Обучение на основе прошлых взаимодействий, решений и обратной связи
- Построение баз знаний со временем
- Обеспечение межразговорного обучения, где Claude улучшается в повторяющихся рабочих процессах
Как это работает
При включении Claude автоматически проверяет свой каталог памяти перед началом задач. Claude может создавать, читать, обновлять и удалять файлы в каталоге/memories
для хранения того, что он изучает во время работы, а затем ссылаться на эти воспоминания в будущих разговорах для более эффективного выполнения похожих задач или продолжения с того места, где остановился.
Поскольку это инструмент на стороне клиента, Claude делает вызовы инструментов для выполнения операций с памятью, а ваше приложение выполняет эти операции локально. Это даёт вам полный контроль над тем, где и как хранится память. Для безопасности вы должны ограничить все операции с памятью каталогом /memories
.
Пример: Как работают вызовы инструмента памяти
Когда вы просите Claude помочь с задачей, Claude автоматически сначала проверяет свой каталог памяти. Вот как выглядит типичное взаимодействие: 1. Запрос пользователя:Поддерживаемые модели
Инструмент памяти доступен на:- 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
)
Начало работы
Чтобы использовать инструмент памяти:- Включите бета-заголовок
context-management-2025-06-27
в ваши API-запросы - Добавьте инструмент памяти в ваш запрос
- Реализуйте обработчики на стороне клиента для операций с памятью
Чтобы обрабатывать операции инструмента памяти в вашем приложении, вам нужно реализовать обработчики для каждой команды памяти. Наши SDK предоставляют помощники инструмента памяти, которые обрабатывают интерфейс инструмента — вы можете создать подкласс
BetaAbstractMemoryTool
(Python) или использовать betaMemoryTool
(TypeScript) для реализации вашего собственного бэкенда памяти (на основе файлов, базы данных, облачного хранилища, зашифрованных файлов и т.д.).Для рабочих примеров смотрите:- Python: examples/memory/basic.py
- TypeScript: examples/tools-helpers-memory.ts
Базовое использование
Команды инструмента
Ваша реализация на стороне клиента должна обрабатывать эти команды инструмента памяти:view
Показывает содержимое каталога или содержимое файла с опциональными диапазонами строк:create
Создать или перезаписать файл:str_replace
Заменить текст в файле:insert
Вставить текст в конкретную строку:delete
Удалить файл или каталог:rename
Переименовать или переместить файл/каталог:Руководство по промптингу
Мы автоматически включаем эту инструкцию в системный промпт, когда включён инструмент памяти:Примечание: при редактировании вашей папки памяти всегда старайтесь поддерживать её содержимое актуальным, связным и организованным. Вы можете переименовывать или удалять файлы, которые больше не актуальны. Не создавайте новые файлы, если это не необходимо.Вы также можете направлять то, что Claude записывает в память, например, “Записывайте только информацию, относящуюся к <теме> в вашу систему памяти.”
Соображения безопасности
Вот важные проблемы безопасности при реализации вашего хранилища памяти:Конфиденциальная информация
Claude обычно откажется записывать конфиденциальную информацию в файлы памяти. Однако вы можете захотеть реализовать более строгую валидацию, которая удаляет потенциально конфиденциальную информацию.Размер хранилища файлов
Рассмотрите отслеживание размеров файлов памяти и предотвращение чрезмерного роста файлов. Рассмотрите добавление максимального количества символов, которое команда чтения памяти может вернуть, и позвольте Claude пагинировать через содержимое.Истечение срока памяти
Рассмотрите периодическую очистку файлов памяти, к которым не обращались в течение длительного времени.Защита от обхода путей
Вредоносные входные пути могут попытаться получить доступ к файлам вне каталога
/memories
. Ваша реализация ДОЛЖНА валидировать все пути для предотвращения атак обхода каталогов.- Валидируйте, что все пути начинаются с
/memories
- Разрешайте пути в их каноническую форму и проверяйте, что они остаются в каталоге памяти
- Отклоняйте пути, содержащие последовательности типа
../
,..\\
, или другие шаблоны обхода - Следите за URL-кодированными последовательностями обхода (
%2e%2e%2f
) - Используйте встроенные утилиты безопасности путей вашего языка (например,
pathlib.Path.resolve()
иrelative_to()
в Python)