Memory Bank — методология структурированного управления документами, которая выполняет роль долгосрочной памяти проекта и операционной системы для управления действиями агента.
Структура файлов
Представляет собой директорию в корне репозитория проекта. Например, .memory_bank/.
Отражает иерархию знаний в виде графа. Главный файл служит маршрутизатором.
Обязательный минимум: Архитектура, стек технологий, инструкции по запуску, ключевые концепции, development conventions.
graph LR
A[index.md] --> B[Product Overview]
A --> C[Steerings]
A --> D[Tech Details]
A --> E[Workflows]
A --> F[Tasks]
B --> B1[User Stories]
B --> B2[Features, Epics]
C --> C1[Development Conventions]
C --> C2[Testing Conventions]
C --> C3[Patterns]
D --> D1[Infrastructure]
D --> D2[Tech stack]
index.md: Главная навигационная карта и точка входа. Это обязательный минимум, с которого агент начинает работу, чтобы понять общую архитектуру базы знаний.
Product Overview: Бизнес-контекст продукта. Содержит ответы на вопросы «для кого» и «зачем» мы это делаем:
User Stories: Пользовательские сценарии и их ожидания.
Features, Epics: Крупные блоки функционала и фичи.
Steerings: Руководящие принципы, конвенции и ограничения.
Development Conventions: Правила написания кода, архитектурные паттерны, стилистика.
Testing Conventions: Правила написания тестов, покрытия и моков.
Patterns: Фундаментальные архитектурные решения.
Tech Details: Техническая реализация и окружение.
Infrastructure: Инструкции по развертыванию, CI/CD, докер-контейнеры.
Tech stack: Базы данных, фреймворки, версии библиотек.
Workflows: Пошаговые чек-листы для типовых задач. Подробнее.
Tasks: Живой трекинг задач. Список того, что нужно сделать (To Do), что в работе и что завершено.
Жизненный цикл
Ключевое отличие Memory Bank от классической документации заключается в принципе самообновления: AI-агент активно обновляет их в процессе работы, готовясь к будущим сбросам контекста окна.
graph LR
A{Session Starts} --> B[Read Memory Bank]
B --> C[Rebuild Context]
C --> D{Continue work}
D --> E[Update Memory Bank]
E --> D
E --> A
Session Starts: Начало новой сессии разработки или поступление новой задачи от пользователя.
Read Memory Bank: Первое действие агента — чтение index.md и перекрестных ссылок. Агенту строго запрещено начинать писать код до этого шага.
Rebuild Context: Агент «пересобирает» контекст проекта в своей оперативной памяти. Он понимает текущий стек, ограничения и актуальную задачу из папки Tasks.
Continue work: Этап непосредственного исполнения задачи с учетом подгруженного.
Update Memory Bank: По завершении работы агент обязан зафиксировать изменения. Он обновляет статусы в Tasks и другие документ при изменении контекста проекта.
Продолжение: Агент либо сам переходит к следующей задаче, либо завершает сессию до следующего запуска.
Внедрение
Глобальное правило: Добавьте в настройки агента базовую инструкцию: "Перед началом любой задачи проверь папку memory-bank/. Если ее нет — создай базовую структуру. Если она есть — всегда читай ее содержимое для понимания контекста".
Использование Mermaid в промптах: Блок-схемы работают как однозначный и строгий язык описания рабочих процессов. Для AI этот структурированный формат часто понятнее, чем абзацы текста с расплывчатыми указаниями.
Команды быстрого восстановления: Полезно создать кастомную команду/refresh_context, которая принудительно заставит агента перечитать Memory Bank, если вы заметили, что он начал "галлюцинировать" от переполнения контекста.