Содержание
  1. Актуальная архитектура и границы версии
  2. Полностью заданный вход и ручной эталон
  3. Копируемый маршрут и нужные файлы
  4. Точные факты, поля и отрицательные случаи
  5. Чужие замеры и выводы о качестве
  6. Неизвестные значения и условия отказа
  7. Текущие /remember и /memory
  8. Частые вопросы
Обзоры

Letta: агент и память между разговорами

7 ноября 2026 · 9 минут чтения

Letta: агент и память между разговорами — это продукт Letta Code, где память живёт в MemFS, git-поддерживаемой файловой системе, которую агент просматривает и правит. Память общая для разговоров агента и пополняется, когда он узнаёт устойчивые сведения о вас и своей работе. Ниже — актуальный маршрут, учебный пример и проверки.

Актуальная архитектура и границы версии

Текущий исходный код Letta живёт в репозитории letta-ai/letta-code, и в него входят агентный каркас, интерактивный терминальный интерфейс, App Server, каналы и рантайм, который используют десктопное и веб-приложения. Об этом сообщает README проекта на GitHub. Тот же README называет Letta прежним именем MemGPT и указывает, что проект активно развивается.

Ветка archive в репозитории содержит выведенный из эксплуатации сервер Letta V1 API. Существующие теги и релизы остаются доступными для воспроизводимости, а активным проектам README советует текущий исходный код. Это и есть граница версии: V1 SDK, memory blocks и прежний self-hosted REST-сервер относятся к legacy-слою.

Документация по memory blocks прямо помечена как V1 SDK (legacy). Там описаны блоки persona и human, лимит в символах, поле read_only и операции вида client.blocks.create. Эти материалы объясняют происхождение абстракции, и переносить их импорты в текущий маршрут не нужно.

Текущая документация памяти описывает MemFS и команды /init, /remember, /memory, /doctor, /sleeptime. Веб-приложение по умолчанию запускает агентов в управляемой облачной песочнице, а CLI запускает агентов на вашем компьютере и может использовать ваши ключи API и тарифы coding-планов. Так quickstart разделяет два способа входа.

Слой Где описан Статус
Letta Code, MemFS README, configuration/memory текущий маршрут
V1 SDK, memory blocks v1-sdk/memory/memory-blocks legacy
Сервер V1 API ветка archive выведен из эксплуатации

Полностью заданный вход и ручной эталон

Учебный вход фиксируется целиком, чтобы результат можно было принять или отклонить без догадок. Проект — Atlas, язык ответа — ru, день релиза — Friday, час релиза не задан. Это условные учебные значения.

В Letta Code вы вводите /remember и сообщение: Для проекта Atlas отвечай по-русски. Текущий день релиза — Friday. Час релиза не задан. Затем через /memory смотрите, какие файлы и записи сохранены.

После этого открываете новый разговор и спрашиваете: Какой день и час релиза Atlas? Укажи, на какую запись памяти ты опираешься. Ручной эталон первого шага: Friday, час неизвестен.

Если память отсутствует, честный ответ об отсутствии сведений допустим. Проверка сохранения в этом случае ещё не пройдена: агент не подтвердил, что запись пережила смену разговора.

Вторая запись меняет факт: Для Atlas день релиза изменился с Friday на Thursday. Час по-прежнему не задан. После /memory и нового разговора эталон актуального ответа — Thursday, час неизвестен. Friday допустим как прежнее значение с явной пометкой об устаревании.

Поле Значение Эталон после второй записи
Текущий факт день релиза Thursday
Прежний факт день релиза Friday, с пометкой
Язык ru ru
Час не задан unknown

Копируемый маршрут и нужные файлы

Документация quickstart даёт два входа. Веб-приложение открывается на chat.letta.com из браузера или с телефона, вход выполняется через аккаунт Letta. CLI ставится командой npm install -g @letta-ai/letta-code и требует Node.js версии 22.19 или выше; запуск — командой letta.

При первом интерактивном запуске CLI автоматически создаётся агент Tutor. Новые аккаунты в веб-приложении тоже начинают в Tutor. Переключение агентов и разговоров идёт из боковой панели, а команды /new, /resume, /agents и /model меняют разговор, агента и модель.

Память инициализируется командой /init: агент осматривает репозиторий, при необходимости спрашивает о стиле работы и может просматривать прошлые сессии через субагентов. Если иерархия памяти разрослась, /doctor проверяет размещение, дубликаты и расход токенов системного промпта.

Для учебного примера нужны два файла-ориентира: репозиторий проекта, куда вы переходите перед запуском, и репозиторий памяти, который вы просматриваете через /memory или по $MEMORY_DIR. Имя конкретного файла и ID блока агент выбирает сам, поэтому заранее объявлять их одинаковыми для каждого запуска нельзя.

ТЕКСТ7 строк
cd your-project
letta
/init
/remember Для проекта Atlas отвечай по-русски. Текущий день релиза — Friday. Час релиза не задан
/memory
/new
Какой день и час релиза Atlas? Укажи, на какую запись памяти ты опираешься.

Точные факты, поля и отрицательные случаи

Проверка опирается на отдельные заданные поля. Язык ответа — ru. Текущий день релиза после второй записи — Thursday. Прежний день — Friday. Час — unknown.

Отрицательные случаи перечислены явно. Ответ Friday без пометки об устаревании отклоняется: актуальный эталон — Thursday. Выдуманный час вроде 10:00 отклоняется: час не задан. Утверждение, что все данные остаются локально при облачном подключении, отклоняется как неверное для этого сценария.

Место каждого факта фиксирует сам читатель по реальному выводу /memory. Имя файла, ID блока и результат команды в этом примере не выдумываются. Обновление Friday→Thursday — требование ручного эталона, а результат модели заранее неизвестен.

Если агент отвечает об отсутствии сведений, это допустимый честный ответ, но проверка сохранения не пройдена. Приёмка проходит только тогда, когда новый разговор возвращает Thursday и указывает запись, на которую опирается.

Проверка Принимается Отклоняется
День релиза Thursday Friday без пометки
Час unknown 10:00
Язык ru другой
Локальность по факту подключения «всё локально» при облаке

Чужие замеры и выводы о качестве

Сторонние материалы полезны как ориентир по установке, и переносить их числа на этот пример не стоит. Обзор на aifoss.dev разбирает self-hosting Letta с Ollama и отдельно оговаривает ловушку V1: архивный Docker-образ и текущий локальный режим CLI — разные вещи. Сайт финансируется партнёрскими ссылками и не является вендором Letta.

Личный гайд Lillith на nekoweb.org описывает установку, различие локального и облачного режимов, постоянную память, каналы, разрешения инструментов и обслуживание. Это companion-гайд одного пользователя, и он не служит официальным контрактом API или измерением качества памяти.

Тарифы и лимиты берутся из документации Letta. Free-план включает 5 MiB на репозиторий памяти, Pro — 50 MiB на репозиторий; считается размер файлов в последнем снимке ветки или тега, без истории Git, и лимит применяется к каждому репозиторию отдельно, включая общую память. Эти числа относятся к облачному хранилищу памяти Letta.

Замеры скорости, стоимости и «качества памяти» из чужих статей в этот пример не переносятся. Учебный протокол проверяет одно: пережил ли конкретный факт смену разговора и вернул ли агент актуальное значение с указанием записи.

Неизвестные значения и условия отказа

Час релиза не задан, и это нормальное состояние поля. Агент, который называет конкретный час, домысливает данные. Условие приёмки — ответ «unknown» либо честное указание, что сведений нет.

Результат нельзя принять, если новый разговор не видит запись. Причины бывают разные: запись не сохранилась, разговор открыт у другого агента, память не инициализирована. Диагностика начинается с /memory и $MEMORY_DIR, затем /doctor для проверки размещения и дубликатов.

Отдельный случай — конфликт двух записей. Если в памяти остались и Friday, и Thursday, актуальным считается Thursday, а Friday сохраняется как прежнее значение с пометкой. Ответ, который смешивает их без разделения, отклоняется.

При облачном подключении данные агента доступны с разных устройств, и утверждение о полной локальности к этому режиму не подходит. При работе без аккаунта агенты хранятся только на локальном диске и могут требовать ручного резервного копирования — так описывает это quickstart.

Текущие /remember и /memory

Текущий маршрут обучения памяти — команда /remember. Документация памяти приводит пример /remember always use pnpm in this repo: агент сам решает, куда отнести урок, и коммитит обновление в MemFS. Просмотр сохранённого идёт через /memory в CLI или прямым осмотром $MEMORY_DIR.

Команда /init загружает или обновляет память для текущего проекта. Фоновый режим dreaming через /sleeptime или настройки Dream просматривает недавние разговоры и объединяет полезные уроки, не прерывая вашу работу; запуск настраивается по числу шагов агента или при сжатии контекстного окна.

V1 memory blocks с полями label, description, value, limit и read_only остаются в разделе legacy. Там же операции client.blocks.create, attach, retrieve и update, где установка value полностью заменяет содержимое блока, а при параллельной записи побеждает последняя. Core, recall и archival API из V1 не выдаются за гарантию текущего Letta Code.

Промпт для проверки памяти в новом разговоре:

ТЕКСТ
Какой день и час релиза [проект]? Укажи, на какую запись памяти ты опираешься. Если час не задан, ответь unknown. Если актуальный день менялся, назови текущее значение и отдельно прежнее с пометкой об устаревании.

Меняйте [проект] на своё имя, а язык ответа задавайте в самой записи через /remember. Варианты той же задачи: проверить язык ответа, проверить прежнее значение с пометкой, проверить отсутствие домысла о часе, проверить общую память у двух агентов, проверить поведение после /doctor.

Частые вопросы

Что такое Letta простыми словами?
Letta — продукт для агентов с состоянием, которые хранят память и контекст между разговорами. Текущий код живёт в репозитории letta-ai/letta-code, а прежнее имя проекта — MemGPT. Память агента устроена как MemFS, git-поддерживаемая файловая система.

Чем Letta Code отличается от V1 SDK?
V1 SDK и memory blocks помечены в документации как legacy, а сервер V1 API лежит в ветке archive. Текущий маршрут — Letta Code с командами /init, /remember, /memory. Старые импорты letta-client относятся к прежнему слою.

Как научить агента помнить факт между разговорами?
Введите /remember и сообщение с фактом, затем проверьте результат через /memory. Откройте новый разговор командой /new и задайте вопрос о факте. Агент сам решает, в какой файл памяти отнести запись.

Почему агент не помнит прошлый разговор?
Проверьте вывод /memory и содержимое $MEMORY_DIR, затем запустите /doctor для аудита размещения и дубликатов. Убедитесь, что новый разговор открыт у того же агента. Честный ответ об отсутствии сведений означает, что проверка сохранения не пройдена.

Где хранится память Letta и сколько она занимает?
Память хранится в MemFS, git-поддерживаемой файловой системе агента. В облаке Free-план включает 5 MiB на репозиторий памяти, Pro — 50 MiB на репозиторий, без учёта истории Git. Громоздкие данные документация советует держать вне памяти.

Читайте также

3 материала