This feature requires Beepster 0.15.0 and the updated Organik Apps Pebble Connector 0.3.0 or newer with native Agent Links and Telegram compatibility setup. It is not included in the older standalone Connector. Update both components. Do not reset Beeper access, phone pairing, or themes.
Repeat for the other agent. Disable link immediately stops new decisions for that link. Unlink before repurposing a bot or conversation. Refreshing the setup page performs read-only connection checks; it never approves an action.
OpenClaw Telegram approvals use the Telegram account’s existing authorization:
in an explicitly linked direct chat, fresh structured approval cards supply
the exact request ID and allowed decisions. A menu choice sends
/approve <exact-request-id> <decision> through Beeper into that same chat.
Unscoped commands, self-authored cards, expired cards, and group chats are not
offered. OpenClaw validates the account, request and final decision itself.
“Sent” confirms command delivery, not execution; check OpenClaw’s result in chat.
This path does not require granting the Connector administrator privileges.
Hermes continues to use its exact-request local bridge.
/approve message, or bot-token sharing. The agent
itself executes or blocks the action. Always uses the provider’s persistent
permission and requires a second confirmation; its scope is ticket-bound.
Hermes slash confirmations (bridge 0.3.0) disable confirmation globally for
ALL future /clear, /new, /reset, and /undo commands when Always is chosen.
Re-enable approvals.destructive_slash_confirm in Hermes to restore prompts.
Hermes tool approvals currently offer only once/deny. OpenClaw offers Always
only when the request explicitly includes allow-always in allowedDecisions.list_gateway_approvals and a request_id parameter on
resolve_gateway_approval, plus plugin hooks and unload support. Unsupported
versions fail closed. The bridge becomes available after the first Telegram
approval in that Hermes process; before then it reports not connected.OpenClaw change card has no choices: in Connector’s native Agent Links,
choose Enable Telegram approval text, then Back up and install. This
compatibility installer supports OpenClaw 2026.9.1 in the standard local
npm/Homebrew locations. It adds the exact request ID and supported /approve
reply choices to new Telegram change cards; it does not change authorization,
execution, or native Telegram buttons. Unsupported versions/layouts are refused.
Restart OpenClaw when its work is finished, then generate a fresh request.
Installation alone does not update a card already sent. The restart is currently
performed through your normal OpenClaw controls (or openclaw gateway restart).
No new watch build is needed if you already have the inline approval menu build.
The original renderer is backed up under
~/Library/Application Support/Beepster/openclaw-renderer-backups/, named with
its SHA-256 hash. Reinstalling the same patch is a no-op. After an OpenClaw
update, check compatibility again; do not copy an old patched renderer into a
new version. To undo on the same version, stop OpenClaw and restore that
version’s matching backup to its original dist/approval-handler.runtime-*.js
location, then restart. A clean reinstall of that OpenClaw version also removes
this compatibility change. If the installation is not writable, Connector
reports an error; it does not request administrator privileges automatically.
Hermes not connected: confirm plugin installation, restart Hermes when safe, then request an approval from Telegram and refresh. A request from its CLI is not a Telegram request. Check Hermes’s plugin status for unsupported-version errors. Normal Telegram approvals still work without Beepster.
OpenClaw requests have no Telegram identity: use the native OpenClaw approval UI. Beepster will not restore timestamp/keyword matching as a workaround.
Nothing on the watch: check the saved link, phone checkbox, current agent connection and that the request is still pending. Both components must contain the new feature. Older unscoped approval endpoints now return an update notice.
Decision not confirmed: check Hermes/OpenClaw before doing anything else. The action may have expired or been answered elsewhere. Do not blindly repeat it.
Run npm test, python3 gateway/test/hermes-bridge_test.py, pebble build, and
Swift type checking before packaging. These tests use synthetic actions only;
passing builds do not establish successful physical-watch or live-agent execution.