agentsclimarketplace

Telegram approval gate

Skill Martin-Hausleitner/martins-awesome-skills/skills/telegram-approval-gate

Martin's Awesome Skills: public-safe Hermes and OpenClaw agent skills with Telegram approval workflows

Install
npx -y skills add Martin-Hausleitner/martins-awesome-skills --skill telegram-approval-gate

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use when Hermes is about to send, publish, forward, reply, post, email, DM, or otherwise deliver text/media to another person, group, channel, or external service and the operator expects Telegram confirmation buttons.

SKILL.md

2.4 KB, as published. Nobody here has run it

Telegram Approval Gate

Before Hermes sends external communication, route the final draft through the operator's Telegram approval gate.

Rule

Never send user-facing or public content directly when this skill applies. First send a Telegram approval card with:

  • Senden - send the draft exactly as approved.
  • Bearbeiten - ask the operator for edits, revise the draft, then submit a new approval card.
  • Abbrechen - stop without sending.

This applies to Telegram, WhatsApp, Signal, email, social posts, channels, group messages, support replies, public comments, and any automation that sends on the operator's behalf.

Helper

Use the bundled helper when a real Telegram approval round is needed:

python3 ~/.hermes/skills/messaging/telegram-approval-gate/scripts/telegram_approval_gate.py \
  --title "Freigabe" \
  --draft-file /path/to/draft.txt

Required environment:

  • HERMES_APPROVAL_BOT_TOKEN - a dedicated approval bot token.
  • HERMES_APPROVAL_CHAT_ID - the operator's approval DM/chat id.

Do not reuse the live Hermes/OpenClaw Telegram bot token while another gateway is polling it. A dedicated approval bot avoids getUpdates conflicts.

For dry runs:

python3 ~/.hermes/skills/messaging/telegram-approval-gate/scripts/telegram_approval_gate.py \
  --dry-run \
  --draft "Hallo"

Workflow

  1. Draft the exact outgoing message locally.
  2. Run the approval helper or use the active messaging gateway's native inline-button approval mechanism.
  3. If the decision is send, deliver exactly the approved content.
  4. If the decision is edit, ask the operator for changes, revise, and repeat approval.
  5. If the decision is cancel or timeout, do not send.
  6. Record the approval result in the task summary.

Testing

Run the local end-to-end fake Telegram test before relying on changes:

python3 ~/.hermes/skills/messaging/telegram-approval-gate/tests/test_telegram_approval_gate.py

Optional live smoke test requires HERMES_APPROVAL_BOT_TOKEN and HERMES_APPROVAL_CHAT_ID; do not run it with the same token currently owned by OpenClaw/Hermes gateway polling.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.