Обновитесь до последней версии с помощью одной команды:
hermesupdate
При этом извлекается последний код, обновляются зависимости и предлагается настроить любые новые параметры, добавленные с момента вашего последнего обновления.:::совет
hermes update автоматически обнаруживает новые параметры конфигурации и предлагает вам их добавить. Если вы пропустили это приглашение, вы можете вручную запустить «Проверку конфигурации Гермеса», чтобы увидеть отсутствующие параметры, а затем «Перенос конфигурации Гермеса», чтобы добавить их в интерактивном режиме.
Что происходит во время обновления
Когда вы запускаете hermes update, происходят следующие шаги:
Снимок данных сопряжения — сохраняется облегченный снимок состояния перед обновлением (охватывает ~/.hermes/pairing/, правила комментариев Feishu и другие файлы состояния, которые изменяются во время выполнения). Можно восстановить с помощью процедуры восстановления моментального снимка, описанной в разделе [Снимки и откат] (../user-guide/checkpoints-and-rollback.md), или путем извлечения самого последнего ZIP-архива быстрого снимка, который Гермес написал рядом с вашим каталогом ~/.hermes/.
Git pull — извлекает последний код из ветки main и обновляет подмодули.
Dependency install — запускает uv pip install -e ".[all]" для получения новых или измененных зависимостей.
Миграция конфигурации — обнаруживает новые параметры конфигурации, добавленные после вашей версии, и предлагает вам их установить.
Автоперезапуск шлюза — работающие шлюзы обновляются после завершения обновления, поэтому новый код вступает в силу немедленно. Шлюзы, управляемые службами (systemd в Linux, launchd в macOS), перезапускаются через диспетчер служб. Ручные шлюзы перезапускаются автоматически, когда Hermes может сопоставить работающий PID обратно с профилем.
Только предварительная версия: hermes update --check
Хотите знать, стоите ли вы за origin/main, прежде чем приступить к делу? Запустите hermes update --check — он извлекает, распечатывает локальный коммит и последний удаленный коммит рядом и завершает работу с 0, если синхронизировано, или с 1, если оно отстает. Никакие файлы не изменяются, ни один шлюз не перезапускается. Полезно в сценариях и заданиях cron, определяющих «есть ли обновление».
Полная резервная копия перед обновлением: --backup
Для важных профилей (производственные шлюзы, общие групповые установки) вы можете выбрать полную предварительную резервную копию HERMES_HOME (конфигурация, аутентификация, сеансы, навыки, сопряжение):
hermesupdate--backup
Или сделайте его значением по умолчанию для каждого запуска:
--backup был всегда активным в более ранних сборках, но он добавлял минуты к каждому обновлению в больших домах, поэтому теперь он включен. Облегченный снимок данных о сопряжении, приведенный выше, по-прежнему работает без каких-либо условий.
hermes update обрабатывает основной путь обновления, но быстрая проверка подтверждает, что все выполнено правильно:
git status --short — если дерево неожиданно грязное, проверьте его, прежде чем продолжить.
hermes Doctor — проверяет конфигурацию, зависимости и работоспособность сервисов.
hermes --version — подтвердить, что версия обновлена как положено.
Если вы используете шлюз: Состояние шлюза Гермес
Если «доктор» сообщает о проблемах с аудитом npm: запустите «npm Audit fix» в помеченном каталоге.:::предупреждение Грязное рабочее дерево после обновления
Если git status --short показывает неожиданные изменения после hermes update, остановитесь и проверьте их, прежде чем продолжить. Обычно это означает, что локальные изменения были повторно применены поверх обновленного кода или на этапе зависимости были обновлены файлы блокировки.
Если ваш терминал отключается во время обновления
hermes update защищает себя от случайной потери терминала:
Обновление игнорирует SIGHUP, поэтому закрытие сеанса SSH или окна терминала больше не уничтожает его в середине установки. Дочерние процессы pip и git наследуют эту защиту, поэтому среду Python нельзя оставить наполовину установленной из-за разрыва соединения.
Весь вывод отображается в ~/.hermes/logs/update.log во время выполнения обновления. Если ваш терминал исчез, переподключитесь и проверьте журнал, чтобы узнать, завершилось ли обновление и успешен ли перезапуск шлюза:
tail-f~/.hermes/logs/update.log
Ctrl-C (SIGINT) и выключение системы (SIGTERM) по-прежнему учитываются — это преднамеренные отмены, а не несчастные случаи.
Вам больше не нужно заключать hermes update в screen или tmux, чтобы пережить падение терминала.
Проверка текущей версии
hermesversion
Сравните с последней версией на [странице выпусков GitHub] (https://github.com/NousResearch/hermes-agent/releases).
Обновление с платформ обмена сообщениями
Вы также можете обновиться непосредственно из Telegram, Discord, Slack, WhatsApp или Teams, отправив:
/update
При этом извлекается последний код, обновляются зависимости и перезапускается работающие шлюзы. Во время перезапуска бот ненадолго отключится от сети (обычно 5–15 секунд), а затем возобновит работу.
Обновление вручную
Если вы устанавливали вручную (не через быстрый установщик):
cd/path/to/hermes-agent
exportVIRTUAL_ENV="$(pwd)/venv"# Pull latest code and submodules
gitpulloriginmain
gitsubmoduleupdate--init--recursive
# Reinstall (picks up new dependencies)
uvpipinstall-e".[all]"
uvpipinstall-e"./tinker-atropos"# Check for new config options
hermesconfigcheck
hermesconfigmigrate# Interactively add any missing options
Инструкции по откату
Если обновление создает проблему, вы можете вернуться к предыдущей версии:
cd/path/to/hermes-agent
# List recent versions
gitlog--oneline-10
# Roll back to a specific commit
gitcheckout<commit-hash>
gitsubmoduleupdate--init--recursive
uvpipinstall-e".[all]"# Restart the gateway if running
hermesgatewayrestart
Чтобы вернуться к определенному тегу выпуска:
gitcheckoutv0.6.0
gitsubmoduleupdate--init--recursive
uvpipinstall-e".[all]"```:::предупреждение
Откатможетпривестикнесовместимостиконфигурации,еслибылидобавленыновыепараметры.ЗапуститепроверкуконфигурацииHermesпослеоткатаиудалитевсенераспознанныепараметрыизconfig.yaml,есливозникнутошибки.</div>
### Примечание для пользователей Nix
ЕсливыустановиличерезNixFlake,обновленияуправляютсячерезменеджерпакетовNix:
```bash
# Update the flake input
nixflakeupdatehermes-agent
# Or rebuild with the latest
nixprofileupgradehermes-agent
Установки Nix неизменяемы — откат выполняется системой генерации Nix:
nixprofilerollback
Дополнительные сведения см. в разделе Настройка Nix.
Удаление
hermesuninstall
Программа удаления дает вам возможность сохранить файлы конфигурации (~/.hermes/) для будущей переустановки.
Удаление вручную
bash
rm -f ~/.local/bin/hermes
rm -rf /path/to/hermes-agent
rm -rf ~/.hermes # Optional — keep if you plan to reinstall:::информация
Если вы установили шлюз как системную службу, сначала остановите и отключите его:
```bash
hermes gateway stop