About this project

This project provides a read-only status dashboard for Hermes Agent, displayed as one pinned Telegram message that is edited in place on a schedule. The updater runs inside the gateway as a plugin, using the engine's own Telegram adapter so the bot token never leaves the engine. A cron tick with a separate bot is available as a fallback for installations without the plugin API. The dashboard message shows, in a compact phone-screen format: overall health status with a dated data stamp, gateway and Telegram connection state, last backup time and integrity, config drift (keys differing from baseline), account limits for each provider (Claude, Codex, Grok, Kimi, Gemini) with time to reset, and the Hermes version running versus the latest upstream release. A collapsed details block carries confirmation times, coverage, backup details, drift check time, release dates, and reasons for any missing data. Freshness is a core requirement: the message always shows absolute data time and last Telegram confirmation time. A message not confirmed for two periods gets a loud banner. An external watchdog command reports freshness with exit codes. The plugin probes capabilities rather than version numbers, degrading gracefully to 'unsupported' on unknown versions. Delivery requires Hermes 0.21.1 or later; on 0.20.x only the cron fallback works. Installation is via the Hermes Plugin Catalog (`hermes plugins install telegram_dashboard_probe`) or by copying the plugin folder. Configuration is through `config.yaml` settings or environment variables, including chat ID, thread ID, period, drift report, backup status, and limit sources. The plugin writes a delivery record to plugin state so restarts edit the same message. The screen uses HTML when the adapter supports it, otherwise plain text, with automatic fallback and retry logic. Account limits come from official provider surfaces where available, local accounting otherwise, or 'no data' with a reason. Gemini has no number without billing, showing the last refusal time instead. The Hermes version line is informational only, with no update advice. The project includes tests that run against real engine objects and a compatibility matrix documenting verified versions.