Git-публикация и бэкап
История правок, push в приватный репозиторий, doctor
Каталог root — это git-репозиторий. Сервер сам его единственный писатель.
История правок
git:
enabled: true
commit_per_write: true # каждая запись агента — отдельный коммит
Сообщение коммита содержит блокнот, действие и актора (notebook(demo): … [claude-code/laptop]).
Историю читают обычным git log внутри root.
Публикация в приватный репозиторий
git:
remote: git@github.com:you/my-private-notebooks.git
Требования:
- репозиторий приватный; публичный репозиторий кода (
okf-notebooks,mcp-okf-notebooksи URL изgit.public_code_repos) сервер отклонит при старте; - учётные данные в URL не принимаются; задайте окружение процесса:
OKF_NOTEBOOKS_GIT_SSH_KEY— путь к deploy-ключу, илиOKF_NOTEBOOKS_GIT_TOKEN— токен для HTTPS.
Отправка идёт в фоне, только вперёд (fast-forward) и «по возможности»: ошибка push не отменяет запись. Ручная отправка накопленного:
uv run okf-notebooks sync
Отклонённый non-fast-forward push означает, что кто-то ещё пишет в этот репозиторий; разберитесь вручную.
Перед бэкапом
uv run okf-notebooks doctor
Коммитит хвосты (например, ручные правки файлов) и проверяет, что рабочее дерево чистое. Бэкапьте root
целиком вместе с .git. Индекс .index/ пересоздаваемый, токены .auth/ хранятся как SHA-256.
База комментариев (.comments/threads.sqlite) не в git и не пересоздаётся, поэтому она должна попасть в бэкап.
Без git
git.enabled: false отключает коммиты; тогда бэкап — копирование каталога root.