Files
email-assistant/AGENT.md
T

3.3 KiB

AGENT.md — правила работы с репозиторием

Источник истины: GitVerse (gitverse.ru)

  • GitVerse (gitverse.ru) — ИСТОЧНИК ИСТИНЫ (authoritative upstream). Все коммиты и изменения проекта пушатся именно туда.
  • Gitea (gitea.nixg.ru) — ЗЕРКАЛО (mirror). Не источник; используется как вторичная/внутренняя копия. Не пушить в gitea как в основное хранилище.

URL-ы

  • GitVerse (истина, https c токеном): https://kpa39l:<GITVERSE_PAT>@gitverse.ru/kpa39l/email-assistant.git (remote gitverse; токен в /opt/hermes/.hermes/secrets/git-tokens.env — source его, значения не хранить в коде/коммитах)
  • GitVerse API: api.gitverse.ru (переменная GITVERSE_API из git-tokens.env)
  • Gitea (зеркало, https): https://gitea.nixg.ru/hermes/email-assistant.git (текущий remote origin)
  • SSH-ключ gitverse: ~/.ssh/gitverse (алиас Host gitverse.ru в ~/.ssh/config, IdentityFile ~/.ssh/gitverse, IdentitiesOnly yes) — валиден для аутентификации, но push-to-create отключён; для создания репо — API.

Как пушить

cd /opt/hermes/email-assistant
set -a && source /opt/hermes/.hermes/secrets/git-tokens.env && set +a

# пуш в источник истины (gitverse)
git push gitverse master

# (опционально) обновить зеркало gitea
git push origin master

Создание репозитория на gitverse (если его нет) — через API:

curl -X POST "$GITVERSE_API/user/repos" \
  -H "Authorization: Bearer $GITVERSE_PAT" \
  -H "Accept: application/vnd.gitverse.object+json;version=1" \
  -H "Content-Type: application/json" \
  -d '{"name":"<repo>","description":"<описание>","private":true,"auto_init":false}'

HTTP 201 = создан; 409 = уже существует. auto_init:false — иначе первый push упадёт (non-fast-forward).

Правила работы

  • Перед работой: git fetch + аудит сделанного (git ls-files, git log) — не дублировать чужую/прошлую работу (см. USER.md: пользователь сам коммитит в dedinit.ru; импорт old_content 358d56d).
  • Все правки — в /opt/hermes/email-assistant; за пределами проекта не оставлять артефактов.
  • Внутри проекта не удалять чужие файлы (правило пользователя).
  • Токены НЕ хранить в коде/README/коммитах — только в remote URL git и в /opt/hermes/.hermes/secrets/git-tokens.env.

Статус (2026-09-15): репозиторий kpa39l/email-assistant создан на gitverse (private, id 336792, https://gitverse.ru/kpa39l/email-assistant); remote gitverse добавлен; master запушен (HEAD 39df85b51c). Пуш подтверждён ls-remote. Грядёт настройка pull mirror в gitea (см. project-git-setup).