← 返回 Skills 市场
naive-white-expert

ai phone call

作者 naive-white-expert · GitHub ↗ · v1.0.4 · MIT-0
cross-platform ⚠ suspicious
83
总下载
0
收藏
0
当前安装
5
版本数
在 OpenClaw 中安装
/install ai-phone-call
功能描述
支持多场景中国手机号的AI外呼助手,一句话描述场景即可生成对话并拨打,呼后查看通话状态和记录。
使用说明 (SKILL.md)

Outbound AI Call - 智能外呼服务

用户有打电话意图 → 意图提取 → 信息收集 → 确认 → 调用外呼 → 检查结果 → 补充信息(如需)


⚠️ 隐私声明与用户确认

重要:在调用外呼接口前,必须向用户展示确认卡片并获得明确同意。

数据收集与传输

本 skill 会收集以下信息并发送到 Outbound AI 外呼服务:

数据类型 用途 是否传输 是否本地存储
电话号码 外呼目标号码
对话上下文 AI 理解通话目的
通话记录 状态和日志 -

第三方服务

  • API 提供方:Outbound AI Call
  • API 端点https://www.skill.black
  • 隐私政策:https://www.skill.black/privacy
  • API Key 申请:https://www.skill.black

本地数据保留

  • 请求记录:memory/skills/requests.jsonl
  • 通话日志:memory/skills/costs.jsonl
  • 这两个文件包含 PII(电话号码、对话内容),用户可随时删除

用户确认流程

在信息收集完毕后,必须展示确认卡片:

📞 外呼确认

对象:{Who} 电话:{Phone} 目的:{What}

⚠️ 以下信息将发送到 Outbound AI 外呼服务: • 电话号码:{Phone} • 对话内容:{对话摘要}

确认拨打?(回复"确认"或"取消")

仅在用户明确确认后才执行外呼。


🎯 触发条件

当用户表达以下意图时触发:

"帮我给xxx打个电话预约个位子" "帮我问下我父亲最近身体怎么样" "给客户打电话确认预约时间"

关键词:打电话、致电、外呼、电话通知、电话确认


📋 步骤 1:意图提取

从用户输入中提取核心信息:

要素 说明 示例
Who 打给谁(名称/关系/机构) 蜀九香、客户、餐厅
Phone 电话号码 18033009923
What 外呼目的 预约位子、活动、确认时间

📝 步骤 2:信息收集

目标:一次收集尽可能多的信息,减少后续追问次数。

重要:本 skill 采用通用信息框架 + 后端动态追问模式。后端会根据外呼目的自动判断需要收集的信息,并在缺少参数时返回追问要求。

信息收集清单

基础信息(必问)

信息项 说明 追问方式
Who 被叫方名称/关系 "请问打给谁?"
Phone 电话号码 "请问对方电话是多少?"
What 外呼目的 "请问打电话主要想说什么?"

时间信息(涉及时间时追问)

信息项 适用场景 追问方式
When 预约、提醒、限时活动 "请问是什么时间?"
Deadline 限时事项 "有截止时间吗?"

信息收集策略

按场景智能追问

预约类(预约位子、预约安装、预约服务)

已了解:{Who},{What} 追问:

  1. 请问预约什么时间?
  2. 请问预约在哪个地点?(如不明确)
  3. 请问几个人/需要什么服务?
  4. 有什么特殊要求吗?

活动类(活动通知、产品推广)

已了解:{Who},{What} 追问:

  1. 请问是什么产品/活动?
  2. 有什么核心卖点或优惠吗?
  3. 活动时间是多久?

✅ 步骤 3:信息确认(必须)

⚠️ 重要:在调用外呼接口前,必须向用户展示确认卡片并获得明确同意。

收集完毕后,展示确认卡片:

📞 外呼确认

对象:{Who}({ContactName}) 电话:{Phone} 目的:{What}

详细信息: • 时间:{When} • 地点:{Where} • 具体事项:{Details}

⚠️ 以下信息将发送到 Outbound AI 外呼服务: • 电话号码:{Phone} • 对话内容:{对话摘要}

确认拨打?(回复"确认"或"取消")

用户确认后才可进入下一步。如果用户取消,则终止流程。


🚀 步骤 4:调用外呼接口

构建请求参数

参数 类型 必填 说明 示例值
phone string 外呼目标电话号码 "18033009923"
messages string[] 对话上下文 ["用户: ...", "助手: ..."]
mustOutbound boolean - 缺少选填参数时是否强制外呼 false

mustOutbound 使用场景

  • 用户明确要求立即外呼,即使信息不完整
  • 例如:用户说"不用问了,直接打吧"

messages 说明

  • 包含用户与助手之间的完整对话上下文
  • 后端根据上下文生成 prompt
  • 格式为字符串数组:"角色: 内容"

执行调用

推荐:Python 脚本(跨平台)

执行命令:

uv run scripts/make-call.py --phone "{电话}" --messages '["用户: ...", "助手: ...", "用户: ..."]'

强制外呼

uv run scripts/make-call.py --phone "{电话}" --messages '["用户: ..."]' --must-outbound


🔄 步骤 5:处理返回结果

返回格式

成功响应示例

字段 说明
code "10000" 成功状态码
result "成功" 结果描述
data "12331@e561a439..." request_id

失败响应示例

字段 说明
code "190001" 风控拦截
result "风控校验不通过..." 拦截原因

code 说明

code 说明 处理方式
10000 成功 告知用户,返回 request_id
190001 风控拦截 不再重试,告知用户风控原因
其他 失败 根据 result 提示用户

📊 步骤 6:查询通话结果

外呼发起后,可查询通话结果:

执行命令:

uv run scripts/query-call.py --request-id "{request_id}"

查询参数说明

参数 必填 说明
--request-id 外呼返回的 request_id
--no-retry - 禁用自动重试,只查询一次

重试机制

配置 默认值 说明
首次等待 30 秒 外呼完成后才能查询到结果
重试间隔 20 秒 未完成时的重试间隔
最大重试 12 次 总等待时间约 4.5 分钟

🚀 快速开始(首次使用引导)

当检测到用户首次使用(未配置 API Key)时,按以下话术引导:

你好!我是你的智能通话助手,很高兴能为你服务。😊

从现在起,那些琐碎的预约、重复的通知,或者偶尔不便亲自开口的询问,都可以放心地交给我。我会像真人助理一样,带着温度与对方沟通,并把最终结果整理成简报带回给你。

但在我们开始第一次合作前,需要请你完成一个小小的「授权」:

🔑 请前往 Outbound API 中心 申请您的专属 API Key,然后告诉我即可。

配置完成后,你就可以随时吩咐我,例如: 📞 "帮我给蜀九香打个电话,预订今晚 7 点 4 个人的位子" 📞 "给老爸打个电话问候一下,确认他明天的体检时间"


⚙️ 配置

前置要求

本 skill 需要以下工具:

  • uv - Python 运行器(ClawX 自带,跨平台)

环境变量(必需)

变量名 必需 说明 默认值
OUTBOUND_API_KEY API 密钥(申请地址见下方) -
OUTBOUND_BASE_URL - API 地址 https://www.skill.black

配置方式

推荐:环境变量(更安全)

添加到 ~/.zshrc~/.bashrc

export OUTBOUND_API_KEY="your-api-key"

可选:自定义 API 地址

export OUTBOUND_BASE_URL="https://www.skill.black"

备选:配置文件

创建配置目录:

mkdir -p ~/.openclaw/secrets

创建配置文件(注意设置权限):

chmod 600 ~/.openclaw/secrets/outbound.json


🔒 数据安全建议

凭据安全

  1. 优先使用环境变量:避免将 API Key 存储在文件中
  2. 文件权限:如果使用配置文件,务必设置 chmod 600
  3. 不要提交到代码仓库:将 outbound.json 添加到 .gitignore

本地日志

以下文件包含 PII(电话号码、对话内容):

  • memory/skills/requests.jsonl - 外呼请求记录
  • memory/skills/costs.jsonl - 通话日志

用户可随时删除这些文件以清除历史记录。

安全使用建议
This skill appears to be what it claims — an AI outbound-calling helper — but exercise caution: (1) SKILL.md and the included scripts require OUTBOUND_API_KEY (and optionally OUTBOUND_BASE_URL) even though the registry summary omitted these; don't rely on the registry summary alone. (2) Calls send phone numbers and conversation text to the external service (https://www.skill.black by default) and store PII locally in memory/skills/requests.jsonl and costs.jsonl — only install if you trust the API provider. (3) The skill instructs you to get explicit user confirmation before calling, but that is an instruction-level check; verify your agent actually enforces it. (4) If you decide to use it, consider: create/restrict the API key, verify or set OUTBOUND_BASE_URL before use, periodically delete the local memory files if you don't want logs retained, and inspect the scripts yourself. The metadata inconsistencies lower my confidence — request the publisher fix the manifest to clearly declare required env vars and binaries before deploying widely.
功能分析
Type: OpenClaw Skill Name: ai-phone-call Version: 1.0.4 The skill provides a legitimate AI-powered outbound calling service via the skill.black API. It includes strong privacy and security practices, such as a mandatory user confirmation step before initiating calls and a transparent disclosure of data transmission (phone numbers and conversation context). The implementation in 'make-call.py' and 'query-call.py' is straightforward, using standard Python libraries for API requests and local logging without any evidence of malicious intent, obfuscation, or unauthorized data exfiltration.
能力标签
requires-sensitive-credentials
能力评估
Purpose & Capability
Functionality (making calls to Chinese mobile numbers via an Outbound API) aligns with the name/description: the included scripts call https://www.skill.black endpoints and require an API key. However the registry-level metadata shown at the top of the evaluation (Required env vars: none; Required binaries: none; instruction-only) contradicts the SKILL.md which declares a required binary 'uv' and a required env var OUTBOUND_API_KEY. This metadata mismatch is unexplained and reduces trust.
Instruction Scope
Runtime instructions and scripts explicitly collect phone numbers and conversation context, transmit them to the external Outbound AI service, and persist PII to local files (memory/skills/requests.jsonl and memory/skills/costs.jsonl). The SKILL.md requires showing a confirmation card to get user consent before calling, which is good, but that is a procedural requirement enforced by instructions, not a technical guarantee. There is no other hidden data collection in the scripts; network calls are limited to the declared API endpoint (or a user-specified base URL).
Install Mechanism
No install spec or external downloads — code is included in the skill bundle and runs via the provided Python runner ('uv'). No additional packages or remote installers are fetched, so install risk is low.
Credentials
The skill legitimately requires an API key (OUTBOUND_API_KEY) and optionally OUTBOUND_BASE_URL. That is proportionate for an external telephony API. However the registry summary at the top incorrectly lists no required env vars/credentials while SKILL.md and the scripts require OUTBOUND_API_KEY; this inconsistency should be resolved before trusting the package. The scripts also look for a local config file (~/.openclaw/secrets/outbound.json), which is acceptable but should be noted by users storing keys on-disk.
Persistence & Privilege
The skill writes per-call and per-record JSONL files under its own memory/skills directory (requests.jsonl and costs.jsonl). This is expected to track request state and call logs, but these files contain PII (phone numbers, transcripts). The skill does not request broad system privileges nor modify other skills; always:false and normal autonomous invocation settings are used.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install ai-phone-call
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /ai-phone-call 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.4
Add skill tags
v1.0.3
Remove billing keywords to fix security scan false positive
v1.0.2
Metadata fix
v1.0.1
Fix metadata consistency
v1.0.0
Initial release
元数据
Slug ai-phone-call
版本 1.0.4
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 5
常见问题

ai phone call 是什么?

支持多场景中国手机号的AI外呼助手,一句话描述场景即可生成对话并拨打,呼后查看通话状态和记录。 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 83 次。

如何安装 ai phone call?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install ai-phone-call」即可一键安装,无需额外配置。

ai phone call 是免费的吗?

是的,ai phone call 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

ai phone call 支持哪些平台?

ai phone call 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 ai phone call?

由 naive-white-expert(@naive-white-expert)开发并维护,当前版本 v1.0.4。

💬 留言讨论