Amber — Phone-Capable Voice Agent

☎️ OpenClaw 语音电话助手 · MCP 插件

基于 Twilio + OpenAI Realtime 的 OpenClaw 语音助手 MCP 插件,支持电话呼入呼出、智能 CRM、日历管理,内置代码级通话确认安全门控。

收藏
12.5k
安装
3.2k
版本
5.5.37
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Amber 是一款为 OpenClaw 代理赋予真实电话能力的 MCP 插件。部署后,用户可通过自然语言指令让代理完成呼入应答、通话筛选、外呼任务、日历预约等全流程语音交互。

部署流程:进入 runtime/ 目录,运行 npm run setup 启动交互式向导,实时验证 Twilio/OpenAI 凭证,自动生成 .env 配置文件,可选自动安装依赖并构建项目。完成后配置 Twilio Webhook,启动服务即可接听/拨打电话。

MCP 工具集(9 个)prepare_call(按联系人名准备通话)、start_call(启动外呼)、call_history(查询通话记录)、crm(联系人管理)、contacts_lookup(Apple 通讯录查询)、calendar(日历查询/预约)、screening_control(通话筛选控制)、bridge_health(桥接健康检查)。

核心能力

  • 呼入处理:智能问候、来电者识别、留言记录与转发
  • 呼出工作流:结构化通话计划(预订、咨询、跟进),代码级强制确认机制防止误拨
  • 实时技能调用:CRM 查询、日历可用性检查、事件创建,均通过 MCP 工具在通话中即时执行
  • 本地数据管理:SQLite CRM(~/.config/amber/crm.sqlite)、通话日志仪表板、可选 Apple 通讯录同步

显著优点

  • 分钟级部署:交互式向导自动处理凭证验证、ngrok 检测、环境配置,无需手动编辑配置文件
  • 生产级架构:基于 Twilio + OpenAI Realtime 的完整 Node.js 桥接,支持 VAD 调优与语音填充词,对话自然无冷场
  • 安全设计突出:外呼采用"代码门控+LLM 提醒"双层确认(MCP 层 confirmed=true 强制校验,非仅靠 LLM 指令),支持一键禁用外呼(AMBER_ENABLE_OUTBOUND_CALLS=false
  • 最小权限原则:Twilio 子账户、OpenAI 独立项目密钥、OpenClaw Gateway 按需授权,依赖锁定于 package-lock.json
  • 隐私优先:日历仅返回忙闲状态(不泄露事件标题/地点),Apple 通讯录扩展字段需显式开启,通话数据本地存储
  • 可扩展技能系统:模块化 amber-skills/ 架构,支持自定义 mid-call 能力并共享至 ClawHub

潜在缺点与局限性

  • 基础设施依赖重:必须自备 Twilio 账户(电话号码)、OpenAI 项目密钥、公网可访问的 Webhook 端点(ngrok 或自有域名),配置门槛对非技术用户较高
  • 原生模块编译better-sqlite3 需本地编译,macOS 需 Xcode 许可证,Linux 需 build-essential+python3,ARM/特殊环境可能遇到构建问题
  • 实时性成本:通话音频/转录流经 Twilio/OpenAI 云端,非完全离线方案;依赖网络质量,延迟因地区而异
  • 运营责任转移:CRM 数据需操作员定期审查/修正,错误提取或敏感信息留存由用户负责,系统仅提供"建议"而非自动确认
  • MCP 生态锁定:作为 MCP 插件,需配合 Claude Desktop/Cowork 等 MCP-capable 客户端使用,独立 CLI 能力有限
  • 公测状态:v5.4.0 文档提及"若对话质量/延迟调优进行中,V1 可标记为 beta",稳定性待大规模验证

适合人群

  • 技术型专业人士/小型团队:需为 OpenClaw 代理快速添加电话能力,具备 Node.js 环境管理经验
  • 高隐私要求场景:倾向本地 CRM/日历存储,减少云端联系人数据暴露的用户
  • 合规敏感行业:需明确审计追踪(通话日志先存后转发)、操作员确认门控的咨询、预约类业务
  • MCP 生态早期采用者:已使用 Claude Desktop 等工具,希望统一语音能力至现有代理工作流

常规风险

| 风险类别 | 具体表现 | 缓解措施 |
|---------|---------|---------|
| **凭证泄露** | `.env` 文件或日志中硬编码密钥 | 向导实时验证但**不**回显完整凭证;运行期日志脱敏;建议专用子账户+定期轮换 |
| **误拨/骚扰外呼** | 代理错误触发外呼或拨打错误号码 | 代码级 `confirmed=true` 强制确认;可完全禁用外呼端点;支付/押金请求强制转人工 |
| **数据残留** | CRM SQLite 数据库、通话转录、Apple 通讯录缓存包含 PII | 操作员需建立定期审查/删除机制;通讯录扩展字段需显式开启;告知来电者 AI 处理及日志政策 |
| **供应链攻击** | 依赖包篡改、原生模块植入恶意代码 | 锁定 `package-lock.json`;部署前审查 `package.json`;受监管环境建议二次审计 |
| **Webhook 暴露** | 公网端点未授权访问 | 依赖 `OPENAI_WEBHOOK_SECRET` 校验;建议 HTTPS + 最小权限网络策略 |
| **提供商锁定** | 深度绑定 Twilio/OpenAI,迁移成本高 | 架构抽象为可替换桥接层,但实际切换需重写 `runtime/` 核心代码 |

部署前必读:必须配置来电者告知/同意政策、数据保留/删除实践、最小权限凭证,方可投入生产。

Amber — Phone-Capable Voice Agent 内容

amber-skills文件夹
calendar文件夹
crm文件夹
send-message文件夹
dashboard文件夹
scripts文件夹
demo文件夹
packaging文件夹
cowork文件夹
commands文件夹
skills文件夹
calendar文件夹
call-screening文件夹
contacts文件夹
crm文件夹
phone-calls文件夹
references文件夹
runtime文件夹
scripts文件夹
src文件夹
providers文件夹
skills文件夹
scripts文件夹
手动下载zip · 173.8 kB
handler.jstext/javascript
请选择文件