раздел 01

Как работает memory.md

Механизм простой и от инструмента к инструменту почти не меняется. Память - это файл (или папка файлов), который агент читает в начале сессии и дописывает в конце.

Файл или папка

В самом простом виде память - это один файл, например memory.md или MEMORY.md, со списком фактов. Когда фактов становится много, удобнее разбить их на папку: отдельные файлы по темам плюс один файл-индекс MEMORY.md, который перечисляет, что где лежит. Так агент по индексу понимает, в какой файл заглянуть, и не тащит в контекст всё подряд.

Индекс - это оглавление памяти. Агент сначала читает его, а потом подтягивает только те файлы-факты, которые нужны для текущей задачи.

Как агент это использует

1
Читает память в начале
В начале сессии агент открывает индекс и нужные файлы памяти - и сразу знает контекст.
2
Работает с задачей
Учитывает известные факты: предпочтения, решения, особенности проекта.
3
Подмечает новое
По ходу диалога находит факты, которые стоит запомнить надолго.
4
Дописывает в конце
Добавляет новые факты в файл памяти и при необходимости обновляет индекс.

Память переживает новый чат

Это и есть главное отличие от контекстного окна. Вы закрываете чат, открываете завтра новый - и агент снова читает тот же файл памяти. Факты на месте, объяснять заново ничего не нужно.

Как выглядит структура

Простой вариант - папка с индексом и парой файлов-фактов:

.memory/
  MEMORY.md            индекс: список фактов со ссылками на файлы
  user-preferences.md  предпочтения пользователя
  project-facts.md     факты о проекте
  decisions.md         принятые решения

А внутри индекса MEMORY.md - короткий список с указанием, где искать подробности:

# Память агента

- [Предпочтения пользователя](user-preferences.md) - стиль ответов, язык, формат.
- [Факты о проекте](project-facts.md) - стек, структура, где что лежит.
- [Решения](decisions.md) - что и почему выбрали.