Перейти к содержимому

mmw-agent умеет сохранять в MMW историю ваших сессий Claude Code и Codex. Это выключено, пока вы сами не разрешите в терминале.

Из этой страницы вы узнаете:

  1. как устроено согласие и почему его не может выдать модель;
  2. что загружается, а что никогда не уходит с компьютера;
  3. как агент докачивает данные после обрыва, какие квоты у тарифов и как всё остановить.
  1. Откройте терминал и выполните (с тем же колесом, что в конфигурации клиента):

    Окно терминала
    uvx --from https://app.mmwhub.ru/downloads/mmw-agent/mmw_agent-0.1.4-py3-none-any.whl mmw-agent consent
  2. Агент покажет, что нашёл, и объяснит, что будет загружаться:

    MMW нашёл на этом компьютере историю ИИ-сессий:
    claude-code 42 сессий, 18.3 МБ на диске
    codex 7 сессий, 2.1 МБ на диске
    Если вы разрешите, MMW загрузит эти сессии и все новые в вашу память MMW:
    - сообщения пользователя и ассистента, вызовы инструментов, результаты инструментов до 4 000 символов;
    - рассуждения модели, счётчики токенов и снимки файлов НЕ загружаются;
    - секреты (API-ключи, токены, пароли) заменяются на этом компьютере до отправки;
    - пути к файлам не передаются; остановить можно в любой момент командой `mmw-agent revoke`.
    Загрузить историю сессий в MMW? Введите «да», чтобы разрешить:
  3. Введите да (или yes). Любой другой ответ означает отказ — ничего загружаться не будет.

  4. Агент ответит «Согласие записано для: claude-code, codex. Синхронизация начнётся в течение минуты».

Что важно знать о согласии:

  • Его даёт только человек. Команда работает лишь в интерактивном терминале. Если её запустить из скрипта или из-под модели, агент откажется. Инструмент mmw_sync_status, который видит модель, только читает состояние.
  • Оно касается найденных клиентов. В квитанцию записываются клиенты, чьи сессии были на диске в момент согласия. Если вы позже начнёте пользоваться Codex, выполните mmw-agent consent ещё раз.
  • Оно хранится локально в ~/.mmw/agent.json (или в каталоге из MMW_AGENT_HOME) с правами 0600, а на сервере регистрируется устройство с квитанцией согласия. Без зарегистрированного устройства сервер не принимает данные.
  • Синхронизация идёт, пока работает агент, то есть пока открыт клиент, который его запускает. Разово можно выполнить mmw-agent sync.

Агент не отправляет файлы сессий как есть. Каждая строка разбирается и превращается в короткие события.

ЗагружаетсяНе загружается никогда
Ваши сообщения и ответы ассистента (очень длинные сообщения обрезаются)Рассуждения модели (thinking, reasoning)
Вызовы инструментов с аргументамиСистемные и developer-промпты
Результаты инструментов — до 4 000 символовСчётчики токенов, состояние интерфейса
Время событийСнимки файлов
Пути к файлам: источник обозначается хешем пути

Где агент ищет сессии: ~/.claude/projects/*/*.jsonl (Claude Code) и ~/.codex/sessions/**/*.jsonl (Codex). Для поиска он читает только список файлов; содержимое читается лишь после согласия.

ваш компьютер сервер MMW
───────────── ──────────
строка сессии → событие → вычистка секретов → повторная вычистка → сжатие → хранение
(те же правила) (Memory Guard)
  1. На компьютере. До отправки агент заменяет ключи API, токены, пароли, приватные ключи и пароли в строках подключения на заглушки вида [REDACTED:тип:хеш]. Правила те же, что у сервера: копия файла правил в агенте проверяется тестом на совпадение с серверной.
  2. На сервере. Каждый принятый фрагмент ещё раз проходит через Memory Guard перед сохранением.

Сам секрет нигде не хранится — только тип правила и короткий хеш, по которому можно понять, что в двух местах был один и тот же секрет.

Файлы сессий на вашем диске и есть очередь — агент ничего не буферизует отдельно. Сервер помнит, до какого байта он принял каждый файл (watermark). На каждом цикле агент спрашивает эту отметку и досылает недостающее.

  • Пропала сеть или сервер перезапускался — следующий цикл увидит отметку и продолжит с неё. При ошибках пауза между попытками растёт до 5 минут.
  • Сервер восстановили из резервной копии — отметка стала меньше, агент дошлёт разницу сам.
  • На сервере временно мало места — сервер ничего не принимает, агент ждёт (до 5 минут между попытками) и продолжает позже. Ничего не теряется.
  • Сессия ещё пишется — агент отправляет только законченные строки, остаток дошлёт в следующем цикле.
ТарифОбъём историиГлубина
Free25 МБ7 дней
Starter100 МБ30 дней
Pro500 МБ90 дней
Enterprise и организации20 ГБвся история
  • Сначала загружаются самые свежие сессии: на ограниченном тарифе в архив попадает недавняя работа.
  • Сессии старше глубины тарифа (по времени изменения файла) пропускаются; их число видно в mmw_sync_status как skipped_by_plan_history.
  • Объём считается по очищенному тексту; на сервере он хранится сжатым.
  • Когда объём закончился, агент останавливает загрузку и показывает подсказку: «Место для истории сессий по вашему тарифу закончилось. Полная история доступна на тарифе Enterprise.»

Спросите ассистента «покажи статус синхронизации MMW» — он вызовет mmw_sync_status:

{
"consent": { "granted": true, "clients": ["claude-code", "codex"], "granted_at": "2026-10-05T09:00:00+00:00" },
"device_id": "dev-…",
"last_cycle": {
"state": "ok",
"sources": 49,
"chunks": 12,
"bytes": 3145728,
"local_redactions": 3,
"skipped_by_plan_history": 0,
"history_days": 90
}
}

local_redactions — сколько секретов агент заменил на компьютере в этом цикле. Все состояния (consent_required, offline, quota_exceeded, server_busy и другие) описаны в справочнике mmw_sync_status.

Окно терминала
uvx --from https://app.mmwhub.ru/downloads/mmw-agent/mmw_agent-0.1.4-py3-none-any.whl mmw-agent revoke
  • Локальная квитанция удаляется сразу — со следующего цикла агент ничего не загружает.
  • Агент сообщает серверу, что устройство больше не зарегистрировано. Если сервер недоступен, вы увидите «Локальное согласие удалено; сервер не уведомлён» — загрузка всё равно остановлена; повторите команду позже, чтобы уведомить сервер.
  • Отзыв останавливает загрузку, но не удаляет то, что уже загружено. Про удаление данных — в разделе Данные и удаление.