Skip to main content

Hermes notification toolkit — bus message sender, tmux notifier

Project description

hermes-notify

English | 中文

A config-driven notification toolkit for Hermes Agent — CLI senders for bus messages and tmux notifications.

Works with hermes-bus and hermes-bus-plugin. Route rules live in ~/.hermes/bus-rules.yaml.

What is this?

hermes-notify provides two CLI tools:

  • notify-hermes — send messages to any bus endpoint (short-lived connection via hermes_bus.client.send_message)
  • notify-agent — send messages to tmux sessions via send-keys

Route processing (print, context injection, command execution) is handled by hermes-bus-plugin.

Quickstart

  1. Install: pip install hermes-notify
  2. Configure route rules in ~/.hermes/bus-rules.yaml (see hermes-bus-plugin)
  3. Send a message: notify-hermes --to my-service --type task_done "Hello"
  4. The plugin matches match_type: task_done and handles it

Install

pip install hermes-notify

Or from source:

git clone https://github.com/mlinquan/hermes-notify.git
cd hermes-notify && pip install -e .

CLI

# Send a message to any bus endpoint
notify-hermes --to my-service --type task_done "Task completed"
notify-hermes --to my-service --type progress "50% done"
notify-hermes --to my-service --type ack "Received"

# Send a notification to a tmux session
notify-agent mysession "Start working"
notify-agent --simple mysession "FYI: something happened"

# Route processing is handled by hermes-bus-plugin
# See https://github.com/mlinquan/hermes-bus-plugin

Configuration

Route rules are defined in ~/.hermes/bus-rules.yaml and processed by hermes-bus-plugin. See its README for the full rule format.

Session aliases and the default sender name are also configured in bus-rules.yaml:

Architecture

notify-hermes ──→ hermes-bus (Unix Socket)
notify-agent  ──→ tmux send-keys

Message routing (print/inject/command) is handled by hermes-bus-plugin
via ~/.hermes/bus-rules.yaml.

Session Aliases

Map tmux session names to human-readable sender names in bus-rules.yaml:

session_aliases:
  session-1: alias-1
  session-2: alias-2

default_sender: notify-agent

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hermes_notify-0.4.3.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hermes_notify-0.4.3-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file hermes_notify-0.4.3.tar.gz.

File metadata

  • Download URL: hermes_notify-0.4.3.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for hermes_notify-0.4.3.tar.gz
Algorithm Hash digest
SHA256 33e52269c05d99b3d006959ed3dcf37360fb1c9686731ef644a360f6cc984871
MD5 808b09267d8a530aa5d7c5da2fb4c95a
BLAKE2b-256 30f8d4255a5e73dc18d7d23e8481cd076694d9690392e2a2f76f748abe870cbf

See more details on using hashes here.

File details

Details for the file hermes_notify-0.4.3-py3-none-any.whl.

File metadata

  • Download URL: hermes_notify-0.4.3-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for hermes_notify-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 50f6bd71e21e096db14eee12a1132bace288686add8f0f4e05878c3adb9c04ac
MD5 117a21fbef84d6a41bf4e778bf0fe795
BLAKE2b-256 b89c3d2af8aaf02db146dafd9c6a97d2e4347ceb61ab28892c96d6fa7ec9bba9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page