Командная работа с Git
Git переносит память между компьютерами и сохраняет историю изменений. Engram является Git-ориентированным инструментом: память хранится в виде простого Markdown, поэтому применяется обычный рабочий процесс Git.
Память рабочего пространства как субмодуль
Если человек хочет, чтобы каталог .agents/.engram отслеживался как отдельный репозиторий:
engram inject --submodule
engram inject --submodule-remote <git-url>
Engram проверяет URL, инициализирует субмодуль на ветке main и создает первый коммит субмодуля с сообщением Initialize engram.
Общий глобальный репозиторий Git
Если engram entry не показывает global_git_detected.remote_url, спросите человека, следует ли делиться глобальной памятью через Git. Если они предоставляют URL:
engram inject --global-remote <git-url>
Настройте поведение синхронизации с помощью полей global_git.*:
global_git.enabled— включает функции Git для глобальной памятиglobal_git.remote— имя удаленного репозитория (по умолчаниюorigin)global_git.remote_url— URL удаленного репозитория общей глобальной памятиglobal_git.branch— целевая ветка (по умолчаниюmain)global_git.auto_sync— поведение автоматического pull/pushglobal_git.auto_resolve— автоматическая обработка конфликтов
Автоматическое разрешение конфликтов может скрыть разницу (diffs) в памяти. Изучайте разницу в памяти перед тем, как полагаться на global_git.auto_resolve.
Процесс проверки (Review workflow)
- Агент предлагает кандидатов для сохранения в памяти.
- Человек одобряет предложение через шлюз A/B/C (в терминале) или
yes/audit/cancel(в чате). - Engram записывает утвержденный Markdown и обновляет хэши, индекс, граф и журнал изменений.
- Вы фиксируете коммит и отправляете (push) изменения памяти через Git.
- Коллеги по команде затягивают (pull) изменения и запускают
engram upgradeдля сверки.