feat(hermes): declarative gateway deps via uv dependency group

Merged
SH
6mo ago
+43-2

Summary

  • Add hermes dependency group to pyproject.toml with python-telegram-bot[webhooks] and croniter
  • Update home-manager/services/hermes/activate.sh to install deps into hermes venv at activation time via uv pip install --group hermes
  • Renovate will track version updates for these deps

Test plan

  • uv pip install --group hermes installs correctly into hermes venv
  • make shell-test passes (1397 examples, 0 failures)
  • Verify hermes-gateway starts without "not installed" warnings after activation

Summary by cubic

Make Hermes gateway runtime deps declarative via a hermes uv group with auto-install on activation, and add a hermes-dashboard service. Prefer a dedicated HERMES_TELEGRAM_TOKEN; Renovate tracks versions to avoid missing-deps warnings.

  • New Features

    • Added hermes-dashboard systemd user service (port 9119, --insecure for k3s).
    • HERMES_TELEGRAM_TOKEN is now used for the Telegram bot, with fallback to TELEGRAM_TOKEN/secrets.
  • Dependencies

    • hermes group in pyproject.toml: python-telegram-bot[webhooks]>=22.6,<23, croniter>=6.0.0,<7, fastapi[standard]>=0.115.0, uvicorn>=0.30.0.
    • Activation installs the group into the Hermes venv using uv pip with the venv’s Python.