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.1.tar.gz (5.0 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.1-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: hermes_notify-0.4.1.tar.gz
  • Upload date:
  • Size: 5.0 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.1.tar.gz
Algorithm Hash digest
SHA256 0189b5d335ff056edbfa9313d7d1bbfb38325cc10b29dcd719481b8b3219d290
MD5 fca56a4686e29c197547333a937146fd
BLAKE2b-256 719fa9a0867d0a32d7b0102d3900c872982cba4ebf4ea3bbda241654af4bcb45

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hermes_notify-0.4.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 00cfbbe05b475c68206f214f067d1b8967eb18dd551c314a9dc2c5abaf8ddc2f
MD5 4e3865f17c45be02c9ab609f3dc4432e
BLAKE2b-256 091bb420825cef6d6aa5ff072fd0b4a483dd41190b504be7e0d510108bd8c1be

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