Roadrunner

🐦 Beeper 桌面端命令行管家

Beeper Desktop CLI 工具,支持消息收发、聊天搜索、提醒管理等 IM 自动化操作,适合需要集成 Matrix 多合一聊天平台的开发者。

收藏
11.6k
安装
4.7k
版本
0.14.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

roadrunner(简称 rr)是 Beeper Desktop 的命令行接口,通过本地 API 与 Matrix 统一消息平台交互。主要功能覆盖四大领域:

1. 聊天管理:列表现有聊天、搜索(支持参与者、时间、未读等过滤)、创建新对话、归档/取消归档
2. 消息操作:列出消息历史、搜索关键词、发送/编辑消息、上传附件、监听实时消息流(tail/wait)

3. 联系人:按账户搜索和解析联系人,处理多账户场景下的身份歧义

4. 提醒与状态:设置聊天提醒、查看全局未读汇总、获取连接状态

Agent 友好特性

  • --agent 标志强制 JSON 输出、信封错误格式、无交互模式、只读安全默认
  • --readonly 可完全禁止写入操作
  • --enable-commands 白名单机制限制可执行命令范围
  • 信封错误包含 error.hint 字段,支持智能重试决策

显著优点

  • 协议统一:通过 Matrix 桥接 iMessage、WhatsApp、Signal 等 15+ 聊天服务,单 CLI 管理多端
  • 自动化友好:完整的 JSON 输出、分页控制、游标导航、请求 ID 追踪和去重窗口机制
  • 安全沙盒:细粒度权限控制(只读模式、命令白名单、强制确认),降低自动化风险
  • 实时能力:消息 tail 轮询、条件等待(wait)、草稿预填充等交互式场景支持

潜在缺点与局限性

  • 依赖桌面端:必须保持 Beeper Desktop 运行,无法独立作为守护进程
  • 搜索语义弱:关键词搜索为字面量匹配,无向量或语义搜索能力
  • 认证摩擦:需手动从 App 设置提取 Token,环境变量配置对非技术用户门槛较高
  • 生态封闭:仅支持 Beeper 自有协议栈,无法扩展至其他 Matrix homeserver
  • 历史扩展限制! 字符在 bash/zsh 触发历史展开,需特殊处理引号或关闭扩展

适合人群

  • 需要将聊天数据集成到工作流(CI/CD 通知、客服工单、日志监控)的开发者
  • 使用 Beeper 作为主力 IM 工具,希望实现批量操作或自动化响应的高级用户
  • 构建聊天机器人、消息归档、合规审计系统的工程师

常规风险

| 风险类型 | 说明 | 缓解建议 |
|---------|------|---------|
| 误发消息 | 自动化脚本目标 ID 错误导致消息发错聊天 | 强制 `--readonly` 预演,确认 recipient 后再解除 |
| Token 泄露 | `BEEPER_TOKEN` 环境变量被日志/进程列表捕获 | 使用专用 secret 管理工具,禁止在对话中粘贴 |
| 数据残留 | 下载媒体或草稿文件本地留存 | 定期清理 `--download-dir`,敏感内容启用临时目录 |
| 竞态写入 | 非幂等操作(发送、创建聊天)重复执行 | 使用 `--request-id` + `--dedupe-window` 严格去重 |
| 服务中断 | Beeper Desktop 崩溃或网络波动 | 封装重试逻辑,区分 `CONNECTION_ERROR` 与其他错误码 |

安全解读

核心功能与用法

roadrunner(简称 rr)是一个面向 Beeper Desktop 的 CLI 工具包装 Skill,提供完整的聊天管理接口。核心功能覆盖四大领域:

聊天管理rr chats list/search/get 支持多维度筛选(未读、收件箱类型、活动时间、参与者名称),rr chats resolve 可模糊匹配联系人。

消息操作rr messages list/search/tail/wait 实现消息检索与实时监控,--download-media 支持附件批量下载。搜索支持按发送者、日期、媒体类型过滤。

消息发送与编辑rr messages send/edit 支持纯文本与文件发送,rr focus 可预填充草稿或附件而不立即发送。

全局能力rr search 跨聊天全局搜索,rr status/unread 提供账户状态总览,rr reminders 管理消息提醒。

显著优点

  • 安全设计优先:默认只读模式,写操作需显式声明;--agent 模式强制 JSON 输出、禁用交互、--readonly 可完全阻断写入。
  • 精细化权限控制--enable-commands 白名单机制可按需开放特定命令子集。
  • 结构化错误处理--envelope 返回标准错误对象,含 error.hint 指导安全重试策略。
  • 完善的审计追踪--request-id--dedupe-window 支持非幂等操作的去重与链路追踪。
  • 自动化友好--json --no-input 专为脚本/Agent 设计,分页参数支持大规模数据遍历。

局限性与风险

  • 外部依赖关键:Skill 本身为纯 Markdown 文档,实际执行依赖 rr 二进制文件,其安全性需独立审查。
  • T3 来源可信度:个人开发者项目,无企业级维护背书,更新持续性存疑。
  • 凭证管理责任BEEPER_TOKEN 需用户自行配置,存在误泄露至命令历史的风险。
  • 语义搜索缺失:消息搜索为字面词匹配,不支持自然语言语义理解。
  • 网络行为不透明rr 与 Beeper 服务的通信细节未在 Skill 层暴露,难以审计。

适合人群

  • 需批量管理 Beeper 聊天记录的高级用户
  • 构建聊天自动化工作流的开发者/Agent 系统
  • 偏好命令行效率、熟悉 CLI 工具链的技术用户

常规风险

  • 凭证泄露:命令历史或脚本中硬编码 BEEPER_TOKEN
  • 误操作风险:未使用 --readonly 时可能意外触发发送/删除
  • 外部工具供应链rr 二进制被篡改或存在未披露的数据收集行为
  • Bash 历史扩展!chatid 语法可能触发 shell 历史替换,需用单引号包裹

Roadrunner 内容

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