Roadrunner

💬 Beeper 消息平台的开发者 CLI

开发者工具榜 #5

Beeper Desktop 命令行工具,支持消息收发、聊天记录搜索、提醒管理等操作,适合自动化工作流集成。

收藏
18.3k
安装
4.7k
版本
0.14.2
CLS 安全性认证2026-07-01
点击查看完整报告 >

使用说明

核心用法

roadrunnerrr)是 Beeper 统一消息平台的官方 CLI 工具,通过本地 API 与 Beeper Desktop 通信,实现对多账户消息平台的命令行操控。主要功能模块包括:

  • 账户管理rr accounts list 查看已连接账户,rr capabilities 获取功能元数据
  • 聊天操作rr chats list/search/get 浏览和检索对话,rr messages list/search/tail 查看消息流
  • 消息发送rr messages send/edit 发送或编辑消息,rr messages send-file 上传附件发送
  • 联系人管理rr contacts search/resolve 查找和解析联系人
  • 全局搜索rr search 跨聊天搜索消息和对话
  • 提醒与聚焦rr reminders set/clear 设置消息提醒,rr focus 控制应用焦点和草稿

Agent 友好模式--agent 标志强制 JSON 输出、结构化的 envelope 错误、无交互模式和只读默认,适合自动化脚本集成。--readonly--enable-commands--envelope 提供细粒度安全控制。

显著优点

1. 多平台统一:Beeper 原生聚合 iMessage、WhatsApp、Signal、Telegram 等 14+ 聊天服务,单 CLI 管理全渠道
2. 结构化输出:原生支持 --json--envelope 错误格式,便于程序解析和错误恢复

3. 强大的搜索能力:支持按日期、发送者、媒体类型、阅读状态等多维度过滤消息

4. 安全的自动化设计--agent 模式默认只读,非幂态操作需显式启用;--dedupe-window--request-id 防止重复写入

5. 本地优先:依赖本地运行的 Beeper Desktop,无需暴露云端凭证,令牌通过环境变量管理

6. 流式与轮询支持tailwait 子命令支持实时消息监控和工作流触发

潜在缺点与局限性

  • 依赖桌面客户端:必须保持 Beeper Desktop 运行,无法独立作为纯服务端工具使用
  • 令牌管理负担BEEPER_TOKEN 需手动从应用设置提取,无 OAuth 等自动化授权流程
  • 搜索语义有限:消息搜索为字面词匹配,不支持向量语义搜索
  • 历史扩展风险! 字符在 bash/zsh 中触发历史扩展,需额外注意转义或禁用该功能
  • Matrix ID 暴露:部分 DM 标题显示原始 Matrix ID,对非技术用户不够友好

适合人群

  • 需要将聊天数据集成到自动化工作流的开发者/DevOps 工程师
  • 使用 Beeper 聚合多平台消息、偏好命令行效率的高级用户
  • 构建聊天机器人、消息归档系统或通知管道的系统管理员
  • 希望通过脚本批量管理聊天记录、设置提醒的自动化爱好者

常规风险

  • 令牌泄露BEEPER_TOKEN 具备完整 API 权限,硬编码或日志泄露可导致账户接管。务必使用环境变量,禁止在聊天中传输
  • 意外消息发送--no-input 配合 --force 会跳过确认,脚本逻辑错误可能导致消息误发
  • Shell 注入:消息文本通过 shell 传递时,$! 等特殊字符可能触发扩展。必须使用 <<'EOF' heredoc 或 --stdin 安全传递
  • 速率限制:未公开的 API 限流机制,高频轮询可能触发临时封禁
  • 数据同步延迟:本地 API 与 Beeper 云端存在同步延迟,极端情况下消息状态可能不一致

安全解读

核心用法

roadrunner(rr)是一款面向 Beeper Desktop 的命令行接口封装 Skill,旨在让用户通过本地 API 自动化管理聊天、消息、提醒与搜索。其核心价值在于将 Beeper 的多协议聚合聊天能力(iMessage、WhatsApp、Signal 等)转化为可脚本化的 CLI 工作流。

显著优点

1. 功能覆盖全面:支持聊天列表、消息搜索、联系人解析、草稿编辑、附件上传下载、提醒设置等全链路操作,几乎涵盖 Beeper Desktop 的所有核心能力。

2. 安全设计到位

  • 默认只读模式,写入操作需显式授权
  • 提供 --readonly--enable-commands 等细粒度权限控制
  • 支持 --envelope 结构化错误处理,包含 error.hint 重试指引
  • 强制环境变量注入令牌(BEEPER_TOKEN),禁止聊天中传输明文凭证

3. 自动化友好--json + --no-input + --agent 组合专为无人值守场景设计,支持分页自动处理(--all)、请求去重(--dedupe-window)、幂等性控制(--request-id)。

4. 跨平台生态:提供 Homebrew 与 Go 两种安装方式,依赖轻量(仅需本地运行的 Beeper Desktop)。

潜在缺点与局限性

  • 前置依赖严格:必须保持 Beeper Desktop 运行状态,无法独立运作
  • 搜索语义局限:消息搜索为字面匹配,不支持向量语义检索
  • 个人维护风险:来源为 GitHub 个人开发者(T3),无企业级 SLA 保障
  • Shell 特殊字符:Bash/Zsh 中 ! 触发历史扩展,需额外注意引号转义
  • Matrix ID 认知门槛:部分命令需理解 Beeper 的 Matrix 协议底层标识(如 !chatid:beeper.com

适合人群

  • 需要批量导出/归档聊天记录的运维人员
  • 希望集成 Beeper 到个人自动化工作流(如 n8n、Hammerspoon)的效率工具用户
  • 多账号管理者(可通过 --account 快速切换 iMessage/WhatsApp 等身份)
  • 对消息数据有本地备份需求的隐私敏感用户

常规风险

  • 令牌泄露:若 BEEPER_TOKEN 落入版本控制或日志,可导致账户被接管
  • 误操作群发messages send 等写入命令缺乏二次确认(除非 --no-input 未设),脚本错误可能导致意外发送
  • API 兼容性:Beeper Desktop 升级可能导致 CLI 行为变更,需关注版本锁定

Roadrunner 内容

手动下载zip · 3.5 kB
SKILL.mdtext/markdown
请选择文件