Beeper CLI

Read, send, and archive messages via Beeper Desktop. Uses Beeper local MCP API so agents can manage all your chats (iMessage, WhatsApp, etc.) in one place.

Beeper CLI (beepctl) by @jules is a command-line interface for the Beeper Desktop API that gives AI agents the ability to read, send, search, and manage messages across all messaging platforms unified through Beeper — including iMessage, WhatsApp, Telegram, Signal, Slack, Discord, and more. It turns Beeper's unified inbox into a programmable interface that OpenClaw can operate through. The CLI covers the full Beeper API surface: listing accounts and chats, reading message history with time-based filters, sending messages (including to new conversations), searching across all chats with powerful filters (by sender, chat type, media type, time range), downloading attachments, and managing chat aliases for quick access. The `--json` output mode makes it easy for agents to parse structured data, while human-readable tables work well for direct terminal use. For OpenClaw users, beepctl opens up a powerful capability: managing all your messaging platforms through a single agent. Instead of configuring separate OpenClaw channels for each platform, you can use Beeper as the unified layer and let your agent search, read, and respond across everything. It requires Beeper Desktop v4.1.169+ with the Developer API enabled — an unofficial but well-supported integration point.

Tags: messaging, beeper, cli, automation

Category: devtools

Tips

  • Enable the Beeper Desktop API in Settings → Developers, then create an approved connection token for the CLI
  • Enable 'Allow sensitive actions' on the token if you want the agent to send messages — read-only tokens can only view chats
  • Set up chat aliases (`beepctl alias set work <chat-id>`) for frequently accessed chats so commands are shorter and more readable
  • Use `--compact` or `--json` output when integrating with OpenClaw for clean, parseable responses
  • Combine with OpenClaw's cron to do periodic inbox sweeps — check for unread messages across all platforms and summarize in Telegram

Community Feedback

CLI for Beeper Desktop API — unified messaging from your terminal. Give your AI agents the power to chat across all your messaging platforms.

— GitHub

Read, send, and archive messages via Beeper Desktop. Uses Beeper local MCP API so agents can manage all your chats (iMessage, WhatsApp, etc.) in one place.

— OpenClaw Showcase

Frequently Asked Questions

Does this require Beeper Desktop to be running?

Yes. beepctl communicates with the Beeper Desktop local API, so Beeper Desktop must be running on the same machine (or accessible via network) for the CLI to work.

Can it send messages to any platform through Beeper?

Yes, as long as the platform is connected in your Beeper account and the API token has 'sensitive actions' enabled. You can send to iMessage, WhatsApp, Signal, Telegram, Slack, and any other Beeper-supported platform.

Is this an official Beeper tool?

No. It's an unofficial community tool that uses Beeper's Desktop API. The Beeper Desktop API itself is in beta, so expect potential breaking changes with Beeper updates.

How does it handle attachments and media?

beepctl can download attachments from messages using mxc:// URLs. Use `--json` output to get attachment URLs from messages, then pipe them to `beepctl download` for retrieval.