Help us improve
Share bugs, ideas, or general feedback.
From swarm
Sends messages to Telegram/Slack/Discord, system events to agents, and agent invocations via openclaw CLI. For user notifications, broadcasts, agent coordination, and swarmmail.
npx claudepluginhub imbios/swarm-toolsHow this skill is triggered — by the user, by Claude, or both
Slash command
/swarm:openclaw-messagingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Three messaging layers, from user-facing to agent-internal.
Sends messages to Telegram/Slack/Discord, system events to agents, and agent invocations via openclaw CLI. For user notifications, broadcasts, agent coordination, and swarmmail.
Guides setup of messaging channels (WhatsApp, Telegram, Discord, iMessage, Slack) for external access to Claude Code agents via plugin installs. Shows exact commands, prerequisites, and relaunch steps.
Publishes messages to topics for inter-agent handoffs, notifications, broadcasts across hive sessions using `hive msg pub` CLI with flags for message, file, stdin, wildcards.
Share bugs, ideas, or general feedback.
Three messaging layers, from user-facing to agent-internal.
Notify the active agent session (Grimlock) of state changes, completions, or discoveries.
# Immediate delivery — agent processes NOW
openclaw system event --mode now --text "Deployed atproto-agents to prod. CF Worker live at agents.joelhooks.com"
# Batched — delivered on next heartbeat (default 15m)
openclaw system event --text "Non-urgent: test suite passing, 47/47 green"
# Wait for agent response
openclaw system event --mode now --text "Need decision: use D1 or KV for session state?" --expect-final --json
When to use: After shipping to main, completing a task, discovering something important, or needing a decision routed through the system agent.
Send to Telegram, Slack, Discord, WhatsApp, Signal, and 12+ other channels.
# Telegram (most common)
openclaw message send --channel telegram --target @joelhooks -m "Build complete, PR ready for review"
# Telegram with chat ID
openclaw message send --channel telegram --target 123456789 -m "Deployment finished"
# Slack
openclaw message send --channel slack --target "#dev-ops" -m "CI green, merging to main"
# With media attachment
openclaw message send --channel telegram --target @joelhooks -m "Architecture diagram" --media ./diagram.png
# Silent (no notification sound, Telegram only)
openclaw message send --channel telegram --target @joelhooks -m "FYI: background job done" --silent
# Dry run (preview without sending)
openclaw message send --channel telegram --target @joelhooks -m "test" --dry-run
Same message to multiple targets:
openclaw message broadcast --channel telegram --targets @joelhooks 123456789 -m "System maintenance in 5 min"
Fetch recent messages from a conversation:
openclaw message read --channel telegram --target @joelhooks --limit 10 --json
openclaw message read --channel slack --target "#general" --limit 5
openclaw message react --channel slack --target "#dev" --message-id 1234 --emoji thumbsup
openclaw message edit --channel telegram --target 123456789 --message-id 42 -m "Updated text"
openclaw message delete --channel telegram --target 123456789 --message-id 42
Trigger an agent turn and optionally deliver the response to a channel.
# Trigger agent, get response in terminal
openclaw agent -m "Summarize today's PRs" --json
# Trigger specific named agent
openclaw agent --agent ops -m "Check deployment status"
# Trigger agent AND deliver reply to Telegram
openclaw agent -m "Generate status report" --deliver --reply-channel telegram --reply-to @joelhooks
# With thinking level
openclaw agent -m "Analyze error logs" --thinking high
# Target existing session
openclaw agent --session-id abc123 -m "Continue from where we left off"
Internal message queue for coordinating between swarm workers. Available as MCP tools within agent sessions.
swarmmail_init — Start mail session (call once at session start)
swarmmail_send — Send message to another agent
swarmmail_inbox — Check incoming messages
swarmmail_reserve — Lock files for exclusive editing
swarmmail_release — Release file locks
swarmmail_ack — Acknowledge message receipt
swarmmail_health — Check session health
Swarmmail is for inter-agent coordination only. For user-facing notifications, use openclaw message send or openclaw system event.
Find targets before sending:
openclaw directory self --channel telegram # Your bot's info
openclaw directory peers --channel telegram # Known contacts
openclaw directory groups --channel telegram # Groups the bot is in
openclaw directory peers --channel slack # Slack users
| Goal | Command |
|---|---|
| Notify system agent (urgent) | openclaw system event --mode now --text "..." |
| Notify system agent (can wait) | openclaw system event --text "..." |
| Message user on Telegram | openclaw message send --channel telegram --target @user -m "..." |
| Message Slack channel | openclaw message send --channel slack --target "#channel" -m "..." |
| Send to multiple people | openclaw message broadcast --channel telegram --targets @a @b -m "..." |
| Trigger agent + deliver reply | openclaw agent -m "..." --deliver --reply-channel telegram --reply-to @user |
| Read conversation history | openclaw message read --channel telegram --target @user --limit 10 |
| Preview without sending | Add --dry-run to any send/broadcast command |
| JSON output for scripting | Add --json to any command |
Telegram, Slack, Discord, WhatsApp, Signal, iMessage, Google Chat, MS Teams, Mattermost, Matrix, Nostr, Feishu, Nextcloud Talk, BlueBubbles, Line, Zalo, Tlon.
Check active channels: openclaw channels status
openclaw system event --mode now --text "Shipped v1.2.3 to prod. Changes: new auth flow, fixed rate limiter."
openclaw message send --channel telegram --target @joelhooks -m "v1.2.3 live on prod"
openclaw system event --mode now --text "Completed Phase 1 encryption. All tests passing. Ready for Phase 2 HITL gate review."
openclaw system event --mode now --text "Worker task-42 complete: implemented D1 schema migration. 12 tests added."