MemoryCustodian

MemoryCustodian

MemoryCustodian предоставляет агентам кодирования постоянную, репозиторно-ориентированную память проекта, сохраняя ключевой контекст в виде простого Markdown и загружая только релевантные для задачи части через манифест для минимальных накладных расходов на подсказки между сессиями и командами.
https://github.com/waittim/MemoryCustodian?ref=producthunt&utm_source=aipure
MemoryCustodian

Информация о продукте

Обновлено:30/07/2026

Что такое MemoryCustodian

MemoryCustodian — это легковесная система «памяти проекта» для AI-агентов, занимающихся кодированием, которая помогает им сохранять важную информацию между сессиями — решения, ограничения, отклоненные подходы и текущую структуру проекта — не полагаясь на историю чата или раздутые инструкции. Она хранит постоянный контекст в виде просматриваемого, сравниваемого Markdown внутри вашего репозитория (обычно в `docs/memory/`) и предоставляет быстрый, автономный CLI на Python (только стандартная библиотека), а также интеграции с агентами (например, Codex, Claude Code, навыки в стиле Gemini). Цель состоит в том, чтобы сделать знания проекта переносимыми между агентами и легко проверяемыми для людей, как код, при этом сохраняя контекст выполнения небольшим и целенаправленным.

Ключевые особенности MemoryCustodian

MemoryCustodian — это автономная система «памяти проекта» для кодирующих агентов, которая хранит постоянный контекст (решения, ограничения, отклоненные подходы и текущую форму проекта) в виде обычного Markdown внутри вашего репозитория. Вместо вставки больших подсказок или использования истории чатов, она использует рабочий процесс, ориентированный на манифест, для загрузки только файлов памяти, относящихся к задаче, в контекстный пакет агента, сохраняя сессии легковесными, делая знания проверяемыми, сравниваемыми, переносимыми между агентами/командами и поддерживаемыми с помощью детерминированного CLI Python только со стандартной библиотекой с защищенными мутациями с предварительным просмотром (например, compact/forget/migrate).
Память Markdown, встроенная в репозиторий: Хранит постоянные знания проекта в `docs/memory/` в виде обычного Markdown, чтобы люди могли просматривать, сравнивать, коммитить и откатывать память как код — не требуется векторная база данных, индекс RAG или облачная зависимость.
Выборочная загрузка с приоритетом манифеста: Агенты читают `manifest.md`, затем `brief.md` и загружают только те файлы, которые относятся к текущей задаче (планирование/реализация/артефакт), минимизируя раздувание подсказок, сохраняя при этом критический контекст.
Тонкие загрузчики агентов для разных платформ: Генерирует небольшие файлы загрузки (например, `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`), которые указывают агентам на манифест, а не встраивают большие блоки инструкций, поддерживая Codex, Claude Code, агентов в стиле Gemini и общее использование оболочки.
Детерминированный CLI с контролируемым обслуживанием: Предоставляет команды `init/status/check/read/add/enable/forget/compact/migrate`; операции обслуживания сначала просматриваются и сохраняют структуру, с проверками бюджета и безопасными планами мутаций перед применением изменений.
Модули памяти с ограниченной областью действия, подключаемые по желанию: Сохраняет необязательные знания (например, `rules/`, `profiles/`, `areas/`, `archive/`) вне контекста по умолчанию до тех пор, пока они явно не будут включены манифестом, что позволяет использовать память, специфичную для подсистемы, не загрязняя каждую задачу.
Безопасное для конфиденциальности забывание и контроль архивации: Поддерживает мягкое/жесткое забывание и очистку с помощью надгробий и защит от редактирования, а также контролируемую архивацию (например, архивацию старейших решений), которая требует явного подтверждения, чтобы избежать случайной семантической потери.

Варианты использования MemoryCustodian

Команды разработчиков, поддерживающие долгоживущие кодовые базы: Фиксируйте архитектурные решения, ограничения и отклоненные подходы, чтобы новые сессии агентов (и новые инженеры) не пересматривали предыдущие выборы, сокращая повторяющуюся отладку и переработку в течение спринтов.
Регулируемые или автономные среды: Используйте в финансах, здравоохранении, обороне или в корпоративных средах с воздушным зазором, где облачные службы памяти запрещены; CLI только со стандартной библиотекой и локальное хранилище Markdown поддерживают полностью автономные рабочие процессы.
Взаимодействие между несколькими агентами/инструментами: Стандартизируйте память проекта для разных хостов агентов (Codex, Claude Code, агенты в стиле Gemini), чтобы команды могли переключать инструменты без потери контекста или перестройки подсказок.
Передача проектов консультантами и агентствами: Передавайте клиентские проекты с проверяемым, содержащимся в репозитории пакетом памяти (краткое описание/решения/ограничения/не использовать), который сохраняет обоснование и границы для будущих сопровождающих.
Сложные монорепозитории и владение подсистемами: Используйте `areas/` и маршрутизацию манифеста для загрузки только памяти, относящейся к домену (frontend, sync, infra и т. д.), помогая агентам эффективно работать, не перетаскивая контекст всей организации в каждую задачу.

Преимущества

Портативный и проверяемый: память представляет собой обычный Markdown в репозитории, легко просматривается, сравнивается и контролируется версиями.
Низкие накладные расходы контекста: выборочная загрузка на основе манифеста позволяет избежать раздувания подсказок и делает сессии агентов эффективными.
Автономный и минимальные зависимости: основной CLI использует только стандартную библиотеку Python и предназначен для работы без сетевых служб.

Недостатки

Требует дисциплины кураторства: сгенерированный шаблон `brief.md` должен быть курирован из авторитетных источников, прежде чем ему можно будет доверять.
Не автоматический семантический поиск: избегает встраиваний/RAG по замыслу, поэтому релевантность зависит от хорошей структуры манифеста и качества написания человеком/агентом.
Операции обслуживания могут быть консервативными: меры предосторожности с предварительным просмотром и ограничения (например, защита от широкого совпадения) могут добавить шаги рабочего процесса для пользователей, ожидающих полностью автоматической очистки.

Как использовать MemoryCustodian

1) Установите MemoryCustodian (выберите путь, соответствующий вашему агенту/рабочему процессу): Выберите один из способов установки: - Попросите вашего агента по кодированию установить навык из репозитория: https://github.com/waittim/MemoryCustodian - Codex (локальный маркетплейс): запустите `codex plugin marketplace add .` из чекаута, затем `codex plugin add memory-custodian@memory-custodian-dev`. - Claude Code (плагин): для локального тестирования запустите `claude --plugin-dir .` или установите в личные навыки с помощью `./install.sh claude`. - Агенты в стиле Gemini: установите с помощью `./install.sh gemini` или `gemini skills link ./skills/memory-custodian`. - CLI/исходный чекаут: запустите из репозитория через `scripts/memory-custodian ...` или установите редактируемый с помощью `python3 -m pip install -e .`, чтобы получить команду `memory-custodian`.
2) Инициализируйте MemoryCustodian в проекте (один раз для каждого репозитория): Запустите инициализацию один раз для каждого целевого проекта: - Если установлено как консольный скрипт: `memory-custodian init --project-root /path/to/project --agent all` - Из исходного чекаута: `scripts/memory-custodian init --project-root /path/to/project --agent all` Используйте `--agent codex`, `--agent claude`, `--agent gemini` или `--agent all` для создания тонких файлов начальной загрузки, которые читает ваш агент.
3) Поймите, что создает инициализация (где хранится память): Инициализация создает набор постоянной памяти по умолчанию в `docs/memory/`: - `manifest.md` (маршрутизирует, что загружать) - `brief.md` (текущая структура проекта) - `decisions.md` (ключевые решения) - `constraints.md` (жесткие требования) - `do-not-use.md` (отклоненные пути / надгробия) - `inbox.md` (область подготовки) Файлы начальной загрузки платформы (например, `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`) остаются тонкими и указывают агентам на `docs/memory/`.
4) Курируйте сгенерированный бриф, прежде чем полагаться на него: После `init` `brief.md` начинается как шаблон с TODO. Заполните его из авторитетных источников проекта (README, код, документация), прежде чем считать память готовой. Используйте `memory-custodian status --project-root /path/to/project` (или `scripts/memory-custodian status ...`), чтобы узнать, не курирован ли бриф; `status` и `check` сообщают о некурированном брифе.
5) Загрузите правильную память для задачи (чтение манифеста): Предполагаемый рабочий процесс для агентов: 1) Прочитать `docs/memory/manifest.md`. 2) Прочитать `docs/memory/brief.md`. 3) Загрузить только те файлы, относящиеся к задаче, которые указаны в манифесте. Для ручной проверки сгенерируйте пакет контекста с помощью: - `memory-custodian read --project-root /path/to/project --task planning` - `memory-custodian read --project-root /path/to/project --task implementation` - `memory-custodian read --project-root /path/to/project --task artifact`
6) Добавьте постоянную память, когда что-то должно сохраниться после текущего чата: Записывайте решения/ограничения/предпочтения/отклоненные подходы с помощью CLI: - `memory-custodian add "Мы выбрали загрузку манифеста." --type decision` - `memory-custodian add "Сохранить синхронизацию повторных попыток." --type decision --area sync --reason "Сохранять повторные попытки в пределах запусков."` Держите записи решений короткими (инструмент применяет руководство по токенам и отклоняет слишком длинные записи, если вы явно не разрешаете длинные записи).
7) Включайте необязательные модули памяти только тогда, когда они становятся актуальными: Необязательные модули (например, правила, профили, области) являются необязательными и не загружаются, если они не включены и не маршрутизированы манифестом. Включайте их по мере необходимости: - `memory-custodian enable preferences` - `memory-custodian enable rules/output` - `memory-custodian enable profile/git` - `memory-custodian enable area/frontend` Включение никогда не перезаписывает существующий файл модуля.
8) Используйте 'do-not-use' для сохранения отклоненных подходов и предотвращения регрессий: Когда вы намеренно отклоняете подход (например, бэкенд хранилища или архитектуру), запишите его в `docs/memory/do-not-use.md` (путем редактирования или соответствующего рабочего процесса добавления/забывания), чтобы будущие сессии не предлагали его повторно.
9) Регулярно проверяйте работоспособность и совместимость протокола: Запускайте детерминированную проверку для обеспечения правильности структуры, бюджетов и метаданных протокола: - `memory-custodian check --project-root /path/to/project` Используйте `memory-custodian status` для быстрого обзора и обнаружения некурированного брифа.
10) Сжимайте и поддерживайте память (сначала предварительный просмотр, безопасные изменения): Используйте команды обслуживания, чтобы память оставалась небольшой и актуальной: - `memory-custodian compact --project-root /path/to/project` Сжатие защищено и сначала предварительный просмотр; применяйте изменения только после просмотра плана. Сжатие входящих сообщений консервативно (например, удаление точных дубликатов верхнего уровня и фильтрация надгробий) и ожидает, что агент/человек выполнит семантическое продвижение в решения/ограничения.
11) Безопасно забывайте устаревшую информацию (сначала предварительный просмотр): Удаляйте или редактируйте устаревшие темы с помощью предварительного просмотра: - Предварительный просмотр: `memory-custodian forget "old deployment note" --mode soft --project-root /path/to/project` - Применить после просмотра: `memory-custodian forget "old deployment note" --mode soft --apply --project-root /path/to/project` Широкие совпадения требуют явного подтверждения (например, `--allow-broad-match`). Некоторые случаи требуют ручного переписывания; инструмент откажется от небезопасных массовых удалений.
12) При необходимости восстановите или замените существующую настройку: Если файлы отсутствуют или метаданные нуждаются в обновлении без перезаписи курированного контента: - Восстановление: `memory-custodian init --project-root /path/to/project --repair` Если вы намеренно хотите полную замену, используйте замену с предварительным просмотром и применяйте только тогда, когда она правильна: - `memory-custodian init --project-root /path/to/project --replace-existing` - затем добавьте `--apply` только если перечисленные файлы должны быть заменены.
13) Мигрируйте версии протокола/памяти проекта при обновлении инструмента: Когда `check` сообщает о старых или отсутствующих метаданных протокола, мигрируйте манифест проекта в автономном режиме: - Предварительный просмотр: `memory-custodian migrate --project-root /path/to/project` - Применить после просмотра: `memory-custodian migrate --apply --project-root /path/to/project`
14) Используйте правильный вызов в Windows по сравнению с исходным чекаутом: В Windows установите консольную команду и используйте `memory-custodian ...`. Из чекаута репозитория на любой платформе вы можете запустить `scripts/memory-custodian ...` в качестве обертки.

Часто задаваемые вопросы о MemoryCustodian

MemoryCustodian – это инструмент, который предоставляет кодирующим агентам "память проекта" путем сохранения решений, ограничений, отклоненных идей и контекста проекта в виде обычного Markdown внутри вашего репозитория, а затем загружает только те части, которые необходимы для текущей задачи.

Последние ИИ-инструменты, похожие на MemoryCustodian

Gait
Gait
Gait — это инструмент для сотрудничества, который интегрирует генерацию кода с поддержкой ИИ с системой контроля версий, позволяя командам эффективно отслеживать, понимать и делиться контекстом кода, сгенерированного ИИ.
invoices.dev
invoices.dev
invoices.dev - это автоматизированная платформа для выставления счетов, которая генерирует счета напрямую из коммитов Git разработчиков, с возможностями интеграции с GitHub, Slack, Linear и Google-услугами.
EasyRFP
EasyRFP
EasyRFP — это ИИ-технология для вычислений на краю, которая упрощает ответы на RFP (запросы предложений) и позволяет проводить реальное время полевой фенотипизации с использованием технологий глубокого обучения.
Cart.ai
Cart.ai
Cart.ai — это платформа на основе ИИ, предоставляющая комплексные решения для автоматизации бизнеса, включая программирование, управление отношениями с клиентами, редактирование видео, настройку электронной коммерции и разработку пользовательских решений на основе ИИ с поддержкой 24/7.