--- title: Hermes pairing — approve пользователей, multi-profile created: '2026-09-29' updated: '2026-09-29' type: tech namespace: personal status: active — процедура проверена 2026-09-29 tags: - hermes - pairing - telegram - mattermost - multi-profile related: - '[[personal/tech/hermes-whale-mattermost-transport.md]]' - '[[personal/projects/personal-os/eagle-dashboard.md]]' --- # Hermes pairing — approve пользователей (multi-profile) Процедура выдачи доступа новому пользователю к боту Hermes. Проверена 2026-09-29 на инстансе **whale** для telegram и mattermost. ## 🔴 ГЛАВНОЕ: pairing — per-profile, и это легко перепутать `hermes pairing` работает **внутри того профиля, который задан `HERMES_HOME`**. На этой машине профилей несколько (минимум **eagle** и **whale**), и у каждого свой список одобренных пользователей. ``` /Users/admin/.hermes/ ← базовый профиль (Eagle) /Users/admin/.hermes/hermes-whale/ ← профиль Whale (Кит) ``` 🔴 **Перед любым approve — проверить инстанс:** ```bash echo "HERMES_HOME=$HERMES_HOME" ``` Ожидаемо для Кита: `HERMES_HOME=/Users/admin/.hermes/hermes-whale`. Alex отдельно предупреждает: **не трогать eagle** (он остановлен, но конфиг живой). ## Команды ```bash # назначить профиль явно (надёжнее, чем полагаться на окружение) export HERMES_HOME=/Users/admin/.hermes/hermes-whale # список: pending + approved hermes pairing list # одобрить hermes pairing approve ``` Полный путь к бинарю (если `hermes` не в PATH): ```bash /Users/admin/.hermes/hermes-agent/venv/bin/python -m hermes_cli.main pairing list ``` Подкоманды: `list` · `approve` · `revoke` · `clear-pending`. ## Как выглядит рабочий прогон ``` $ hermes pairing list Pending Pairing Requests (1): Platform Code User ID Name Age -------- ---- ------- ---- --- telegram fb7ba963 312016878 Alexey 1m ago No approved users. $ hermes pairing approve telegram AYJ6JPM9 Approved! User Alexey (312016878) on telegram can now use the bot~ They'll be recognized automatically on their next message. ``` После обоих approve (2026-09-29): ``` Approved Users (2): Platform User ID Name ---------- ------- ---- telegram 312016878 Alexey mattermost cbwsorzwoigbtrdnteugnx4aqo admin ``` ## 🔴 Питфолл: код в pending ≠ код, который даёт Alex В обоих прогонах 2026-09-29 **код в `pending` отличался** от того, что прислал Alex: | Платформа | В pending | Alex прислал | Итог | |---|---|---|---| | telegram | `fb7ba963` | `AYJ6JPM9` | ✅ approve прошёл | | mattermost | `f8c6ca55` | `QHYL8TB9` | ✅ approve прошёл | Оба раза approve по присланному коду **сработал**, очередь опустела, одобрен ровно один пользователь на платформу. То есть код из pending — не единственный валидный (вероятно, привязка идёт по последнему запросу пользователя, а не по показанной строке). 📌 **Практика:** получив код от Alex — выполнять его как есть, не «исправлять» на код из `pending`. И **всегда сверять `pairing list` после**: должно стать `Pending: 0` и появиться ожидаемый user id. ## Связка platform ↔ user id (этот сетап) | Платформа | User ID | Name | Что это | |---|---|---|---| | telegram | `312016878` | Alexey | `MY_TELEGRAM_ID` из `~/Documents/documentation/tokens/` | | mattermost | `cbwsorzwoigbtrdnteugnx4aqo` | admin | аккаунт Alex в MM (`admin@qentra.top`) | ## Что pairing НЕ делает - **Не поднимает платформу.** Транспорт должен быть подключён отдельно (env-переменные + блок в `config.yaml`). Для MM — 5 ключей `MATTERMOST_*`, см. [[personal/tech/hermes-whale-mattermost-transport.md]]. - **Не выдаёт токен бота.** Это разные вещи: токен — доступ бота к платформе, pairing — доступ человека к боту. - **Не влияет на другой профиль.** Одобрение в whale не даёт доступа в eagle и наоборот. ## Проверка после approve ```bash export HERMES_HOME=/Users/admin/.hermes/hermes-whale hermes pairing list # ожидаем Pending: 0 + нужный user в Approved ``` **Приёмка — сообщение от Alex в UI платформы и ответ бота**, не «pairing list показывает строку». ## Связанные заметки - [[personal/tech/hermes-whale-mattermost-transport.md]] — транспорт MM + Telegram, env-ключи - [[personal/projects/personal-os/eagle-dashboard.md]] — управление сервисами Hermes (Eagle/Whale)