Token导航 LogoToken导航

Agent Skill · 开发

byted-outbound-call(字节出站呼叫)

byted-outbound-call 用于补充开发相关能力,适合在 Local Agent 中需要让 Agent 承接开发相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

byted-outbound-call 是开发类 Agent Skill,可用宿主为 Local Agent,通过unknown获取,权限为权限未标注;许可证信息还不明确,暂无第三方扫描结果,按安装量在开发类的 21,746 个 Skill 里排第 19,716。

总安装 259周安装 11下载 91核验 2026-05-01
开发权限未标注unknown未标认证来源可访问许可证需确认审计未展示Local Agent

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:byted-outbound-call(字节出站呼叫)
来源仓库:https://skills.volces.com
仓库路径:byted-outbound-call
安装命令:
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。当前暂无明确安装命令,请以来源页面说明为准。

这个 Skill 是做什么的

开发类 Skill 面向写代码、改代码和排查问题,一般会读写仓库文件,部分还会执行构建或测试命令。

byted-outbound-call 用于餐厅门店预约、改订与取消的智能外呼服务。适用于生活服务场景中电话外包需求,如家庭聚餐预订。需提前开通火山引擎账号并完成外呼号线资质备案。byted-outbound-call 属于开发类 Skill,可作为该场景下的辅助能力补充。

严禁修改技能代码,仅允许通过自然语言触发任务执行。涉及支付押金时会二次确认,失败时提供替代方案建议。

来源仓库内路径:byted-outbound-call

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Local Agent;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    没有现成安装命令,按unknown的说明从来源页面获取,仓库路径是 byted-outbound-call。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    权限没有明确标注,第一次使用时只给一个无关紧要的任务,观察它到底读了哪些文件和网络。

常见问题

6 条

byted-outbound-call 怎么安装?

公开资料没有给出可以直接复制的命令,需要按来源页面说明手动安装,仓库内路径为 byted-outbound-call。

byted-outbound-call 支持哪些 AI 工具?

公开资料标注支持 Local Agent。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

byted-outbound-call 需要什么权限?

权限级别没有明确标注。第一次使用时建议只给无关紧要的任务,观察它实际读写了哪些内容。

byted-outbound-call 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

byted-outbound-call 用的人多吗?

公开数据是累计安装 259 次,近一周安装 11 次,下载 91 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

byted-outbound-call 安全吗?

没有查到第三方扫描结果,安全性无法从公开资料判断,安装前请自行审查源码、依赖和命令行为。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 Local Agent 一种宿主,触发方式和使用习惯不用来回切换。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 没有第三方扫描结果,安全性只能靠自己读源码判断。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Local Agent,想直接扩展它能力的人。
  • 需要处理开发类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 要求有安全扫描结论才肯安装的团队。
  • 需要厂商级技术支持和 SLA 的生产系统。

开发类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
skill-vetter

技能审查员 · OpenClaw

8,779,018986操作浏览器MIT-0通过
ontology

本体论 · OpenClaw

6,636,960576只读MIT-0通过
entra-app-registration

内部应用程序注册 · Codex、Claude

6,631,872764接触敏感数据未明确通过
entra-app-registration

内部应用程序注册 · Codex、Claude

3,757,680201接触敏感数据未明确通过
nano-banana-pro

纳米香蕉专业版 · OpenClaw

3,526,898364接触敏感数据MIT-0有提醒
byted-outbound-call

字节出站呼叫 · 本页

259—权限未标注未明确未收录

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

概述

目标用户

希望将生活服务场景中「需要打电话」的琐事外包给AI Agent的用户,适用场景目前只包含餐厅门店的预约、改订、取消。

注意事项

严禁修改byted-outbound-call下的代码。


核心用户故事,智能代打电话

  1. 核心场景:作为不想自己打电话的用户,我可以直接用自然语言告诉ArkClaw要联系的门店、具体需求,调用流程:[二、外呼任务执行流程]。
  2. 分步场景:

- 我可以直接说自然语言需求:「帮我联系A餐厅,电话13500015678,预约3月20日晚上7点的家庭聚餐,4个人」 - 当预订需要支付押金时,我会收到二次确认提示,确认后再继续执行 - 我能收到清晰的结果:成功时会返回完整的预订信息,失败时会告知具体原因,以及可选的替代方案

核心用户故事,查询外呼任务结果

  1. 核心场景:用户主动的询问外呼任务状态,调用流程:[三、查询外呼任务状态流程]。

功能说明

一、前置准备(使用前需完成)

  1. 开通火山引擎账号,完成外呼号线对接与资质备案
  2. 在火山外呼平台创建3个专用Agent并配置对应的语音交互逻辑、音色、话术模板,每个场景对应固定剧本ID: 场景 Agent名称 剧本ID 新预约 预约Agent llm_wlne_biffj 修改已有预约 改订Agent llm_eeac_bigci 取消已有预约 取消Agent llm_ivqy_bigcj
  3. 每个Agent配置对应的任务并发数,支持多任务并行执行

二、外呼任务执行流程

阶段1:任务创建与校验

  1. 用户输入:用户用自然语言描述需求,无需固定格式
  2. 范围校验:仅接受生活服务类商户的「预约/改订/取消」类任务,其他类型任务(如商务通话、私人联系、非生活服务类需求)直接拒绝,返回拒绝原因
  3. 需求分类:自动识别用户需求是「预约/改订/取消」中的哪一类,匹配对应剧本ID
  4. 信息校验与追问:校验对应场景的必填信息,任意一项缺失时自动用自然语言追问用户,直到信息补全: 需求类型 必填信息 对应参数名 预约 门店名称、门店电话、预约日期(年月日)、预约时间(时分)、人数、用户姓氏、用户联系电话 shop_name/shop_phone_number/date/time/people_number/first_name/user_phone_number 改订 门店名称、门店电话、原本预约的日期(年月日)、原本预约的时间(时分)、原本的人数、新预约日期(年月日)、新预约时间(时分)、新人数、用户姓氏、预订时预留的联系电话 shop_name/shop_phone_number/date/time/people_number/new_date/new_time/new_people_number/first_name/user_phone_number 取消 门店名称、门店电话、人数、用户姓氏、预订时预留的联系电话 shop_name/shop_phone_number/people_number/first_name/user_phone_number
  5. 押金二次确认:如果外呼前检测到该门店预订需要支付押金,自动向用户发送确认提示,用户确认后再继续执行
  6. 异常处理:若本阶段任何步骤出现接口异常(code非200),直接将错误信息整理为自然语言告知用户,终止外呼流程,不进入后续提交步骤。

阶段2:必须携带的环境变量列表

当调用本技能的脚本时,下列所有的变量都必填,否则消息通知会报错,必须自动将当前会话的如下信息作为环境变量传递给exec命令。信息获取方式如下:

  • OPENCLAW_CHANNEL:

- 含义: 当前消息渠道。 - 获取方式: 从消息元数据(metadata)中的channel字段获取。

  • OPENCLAW_SESSION_ID:

- 含义: 当前会话的chat_id。 - 获取方式: IF: channel为webchat,则运行工具(tool)sessions_list,从sessions_list输出结果中获取当前对话的会话id(sessionId),并将sessionId赋值给OPENCLAW_SESSION_ID。ESLE: 将字符串赋值"no_need"赋值给OPENCLAW_SESSION_ID。

  • OPENCLAW_USER_ID:

- 含义: 发送者用户ID。 - 获取方式: IF: channel为webchat,将字符串赋值"no_need"赋值给OPENCLAW_USER_ID ELSE: 将消息元数据(metadata)中的chat_id字段去除"user:"前缀,赋值给OPENCLAW_USER_ID。

阶段3:外呼任务提交

按如下步骤一步步执行:

  1. 执行脚本:调用scripts/submit_job.py提交外呼任务,调用方式(Agent自动调用,不需要用户手动执行) 推荐方式:通过exec工具内置env参数传递(敏感信息不会出现在命令行历史) {"tool": "exec", "command": "python3 scripts/submit_job.py --request-body '{"job_name": "【预约/改订/取消】+ 门店名称 + 用户需求", "job_description": "用户自然语言原始需求(可选)", "script_id": "对应场景的剧本ID:预约=llm_wlne_biffj/改订=llm_eeac_bigci/取消=llm_ivqy_bigcj", "params": {"user_phone_number": "联系电话(所有场景必填)", "date": "预约日期(仅预约场景)", "time": "预约时间(仅预约场景)", "people_number": "预约人数(仅预约场景)", "shop_name": "门店名称(所有场景必填)", "shop_phone_number": "门店电话(所有场景必填)", "first_name": "用户姓氏(所有场景必填)", "new_date": "新预约日期(仅改订场景)", "new_time": "新预约时间(仅改订场景)", "new_people_number": "新预约人数(仅改订场景)"}}' ", "env": {"OPENCLAW_SESSION_ID": "{{阶段2中获取到的OPENCLAW_SESSION_ID}}", "OPENCLAW_CHANNEL": "{{阶段2中获取到的OPENCLAW_CHANNEL}}", "OPENCLAW_USER_ID": "{{阶段2中获取到的OPENCLAW_USER_ID}}"}}
  2. 查看上一步脚本的输出, 按如下要求进行处理:

1. IF 如果脚本输出内容里包含ERROR,将ERROR信息整理为自然语言告知用户,终止流程。 2. ELSE IF 如果脚本输出内容里没有ERROR,以比较友好的方式,把任务提交的参数和返回的JobId,整理为自然语言,在此环节告知用户任务已提交,在完成通知后终止流程。 参考返回样式: - 任务提交成功返回示例: ✅ 已为你发起外呼任务「海底捞火锅(中关村店)」,程时间较长请耐心等待,任务完成后会通知你! 📋 任务ID:{JobId} 📅 时间:3月20日 19:00 👥 人数:4位 📝 预订人:李先生

三、查询外呼任务状态流程

阶段1:根据用户问题中的JobId,查询当前Session中的外呼任务状态

  1. 到当前阶段,就可以以比较友好的方式,从Session中查询指定的JobId关联的任务状态,整理为自然语言,告知用户。
  2. 处理异常处理,请检查是否有如下异常
  3. IF 接口返回ERROR Code不为空,直接将Error.Message字段的错误信息整理为自然语言告知用户,终止流程,不进入阶段3。
  4. ELSE IF 接口返回Status是5,Status定义参考:[JobStatus 枚举说明]。
  5. 进入到当前阶段,就可以以比较友好的方式,把任务提交的参数和返回的JobId,整理为自然语言,告知用户任务已提交,等待外呼执行。 参考返回样式: ✅ 已为你发起外呼任务「海底捞火锅(中关村店)」,任务完成后会通知你! 📋 任务ID:{JobId} 📅 时间:3月20日 19:00 👥 人数:4位 📝 预订人:李先生 ❌ 预订失败:「海底捞火锅(中关村店)」3月20日晚上7点的位置已经约满 💡 可选替代方案:当天还有12:00、18:00、20:30三个时段有空位,需要我帮你预约其他时段吗?

- 任务提交成功返回示例: - 失败返回示例:


使用示例

示例1:完整信息直接执行

用户输入:帮我预约明天晚上7点的木北造型剪发,他们电话是13800138000,3个人,我姓王,联系电话13512345678 技能思考:用户query已经包含了门店名称、预约时间、预约人数、用户姓氏、联系电话等所有必要信息,无需追问,调用submit-job并通知客户 技能响应:好的,马上帮你联系木北造型预约,完成后第一时间告诉你结果~ 技能思考:继续执行流程,调用wait-job-result等待任务完成。 技能响应:木北造型预约成功啦!刚才的通话已经确认:

示例2:缺失信息自动追问

用户输入:帮我取消明天的海底捞预订 技能思考:用户query中包含了门店名称、时间,需要提供其他信息。 技能响应:请问海底捞的门店电话是多少?预订时预留的姓氏和联系电话是什么呢? 用户补全:电话是13500015678,我姓李,预留电话是13512345678 技能思考:用户query中已经包含所有必填信息,无需追问,直接调用cancel-job并通知客户。 技能响应:好的,马上帮你取消~

示例3:超出范围拒绝

用户输入:帮我给领导打个电话请假 技能响应:抱歉哦,我目前只支持生活服务类门店的预约、改订、取消类外呼任务,其他类型的通话需求暂时无法帮你处理~

错误处理

错误场景处理逻辑返回示例
商户电话无效/空号直接返回失败,提示用户核对号码❌ 拨打失败,你提供的门店电话135xxxxxxx是空号,请核对后重新提交
外呼接口调用失败提取接口返回的msg信息整理后返回❌ 外呼服务暂时不可用:接口返回「余额不足」,请充值后再试
任务提交异常直接返回接口错误信息❌ 任务提交失败:接口返回「剧本ID不存在」,请检查配置是否正确
环境变量校验失败检查哪些变量没有传递,重试并传递进去重试脚本

注意事项

  1. 请确保提供的门店电话真实有效,否则会导致外呼失败
  2. 涉及押金支付的场景会先经过用户二次确认,不会自动扣款

JobStatus 枚举说明

枚举值含义说明
1Waiting等待呼叫。Job 已提交,正在排队等待系统发起呼叫。
2Running呼叫中或等待重呼。系统正在进行呼叫,或者当前轮次呼叫失败后,正在等待下一个重呼周期的到来。
3CallFinished呼叫结束。所有预定的呼叫(包括重呼)均已执行完毕,但 Job 的最终数据仍在处理中。
4JobFinishedJob 结束。Job 已彻底完成,此时可以通过 QueryJobDetail 接口查询到完整的呼叫结果,如通话详情、定级信息等。
5NoExistJob 不存在

平台分布

Local Agent

79.17%
按下载量换算72

安全审计

暂无安全审计结果可展示。

权限和风险

权限未标注

当前来源未能明确判断权限范围,默认进入异常复核队列。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills