助手
扣子 AI 帮助与支持
你好,我是 扣子 文档问答助手 🎉 你在阅读当前文档的过程中,无论对文档概念的解释,还是文档内容方面的疑问,都可以随时向我提问,我会全力为你解答
推荐问题
如何快速了解这个空间的核心内容?
有哪些近期更新的重点文档?
我应该从哪些文档开始阅读?
文档反馈
低代码项目
快速开始
智能体
工作流
应用
资源
插件
创建插件
MCP 服务
图像官方收费插件
音视频官方收费插件
工具类官方收费插件
提示词
知识库
数据库
发布
模型
多人协作
开发工具
推广与变现

端插件概述

更新于: 2026-06-24 15:44:40

扣子编程提供端插件功能,用于使低代码智能体直接与硬件设备进行交互,实现对硬件设备的控制和信息获取。本文介绍什么是端插件、端插件的业务流程和应用场景,帮助你了解端插件。

什么是端插件

扣⼦插件具备调⽤各类第三⽅服务的能力,以拓展智能体能力边界。端插件是扣子编程插件的一种类型,能够使低代码智能体直接与本地设备进行交互,实现对本地设备的控制和信息获取。你可根据设备所具备的能力创建对应的端插件,之后通过简单的自然语言与绑定了端插件的低代码智能体对话,便可调用设备能力。
通过端插件,你可轻松实现设备信息获取、设备行为控制等。例如,若想调慢蓝牙音响的播放语速,只需向部署了扣子编程智能体的蓝牙音箱发送指令,扣子编程便会调用端插件,使蓝牙音箱按指令放慢语速。详细流程如下图所示。
Image

应用场景

扣子编程端插件主要应用于控制设备、获取设备信息、用户 GUI 交互等场景。

  • 直接控制设备
    用户向智能体发送指令后,智能体能够直接控制外部设备执行相应操作。例如,智能体绑定了一个端插件,对应的指令为 PlayMusic ,且设备内置了音乐播放逻辑处理模块。当用户向智能体发送指令“播放音乐”时,设备调用对应的方法启动音乐播放功能。
  • 获取设备信息
    用户向智能体发送获取设备相关信息的请求后,智能体能够获取到设备信息并反馈给用户。例如,智能体绑定了一个端插件(getCalendarList)。当用户向智能体发送指令“帮我总结我今天的日程”时,设备收到getCalendarList 指令后,会返回手机日程给扣子编程,扣子编程据此总结并回复用户。
  • 用户 GUI 交互
    用户向智能体发送指令后,设备弹出图形界面供用户进行交互操作,智能体会根据用户操作进行相应处理。例如:
    • 讲笑话场景
      用户向智能体发送指令“可以给我讲个笑话吗”,设备随即弹出卡片供用户选择笑话类型。若用户选择了黑色幽默,智能体便会开始讲黑色幽默的笑话。
    • 播放音乐场景
      用户向智能体发送指令“可以给我播放一首音乐吗”,设备便会弹出汽水音乐授权的卡片。用户点击授权后,开始播放音乐。

业务流程

本文以获取手机日程为例,来阐述端插件的业务流程。
Image
业务流程说明如下:

  1. 用户请求:用户向设备发送请求。
  2. 请求转发:设备将请求转发给业务服务端。
  3. 对话建立:业务服务端通过 v3/chat 接口与扣子编程建立对话。
  4. 推理与调用:扣子编程根据对话内容进行智能推理,判断是否需要调用端插件。
  5. 请求执行端插件:若需调用端插件,则向业务服务端请求执行端插件,此时对话状态流转至 requires_action 状态。
  6. 执行端插件:业务服务端根据下发的端插件指令,向设备执行相应的业务逻辑,具体实现由业务端自己控制。
  7. 返回结果:业务服务端通过扣子编程的 submit_tool_outputs 接口,将端插件执行结果返回给扣子编程。
  8. 生成回复:扣子编程再次进行推理后,生成回复,将结果返回给业务服务端,再由业务服务端通过设备反馈给用户。

重要组件及概念说明如下:

  • v3/chat:发起对话接口,用于向指定智能体发起一次对话。详细说明请参考发起对话
  • v3/chat/submit_tool_outputs:提交工具执行结果接口。详细说明请参考提交工具执行结果
  • 消息 Chat 状态机制:
    Image
    以下是对话的运行状态及其说明:

    状态名称

    状态说明

    created

    对话已创建。

    in_progress

    大模型接收消息请求后,正在处理中。

    • 扣子编程完成数据处理并返回结果,对话转为 completed 状态。
    • 端插件场景下,如果扣子编程判断需要调用端插件,对话转为requires_action 状态。

    requires_action

    端插件场景中,调用端插件时,对话转为requires_action 状态。业务服务端提交执行结果后,对话重新转为 in_progress 状态;24 小时未成功提交执行结果转为 expired 状态。

    expired

    requires_action 状态下 24 小时未成功提交端插件执行结果时,对话转为 expired 状态,用户需重新发起对话。

    completed

    扣子编程完成数据处理并返回结果后,对话转为 completed 状态。

    failed

    消息处理失败,对话转为 failed 状态。

    cancelled

    消息处理被取消,对话转为 cancelled 状态。

限制说明

  • 使用方式:仅支持通过 API 方式使用端插件。智能体绑定端插件后,调用发起对话接口与智能体对话时才能正常使用端插件能力。
  • 节点限制:工作流中支持添加端插件节点,但暂不支持在大模型节点中配置端插件技能。
  • 调试方式:创建端插件时暂不支持在扣子编程中调试,建议先在本地设备中调试完成后再创建并使用端插件。

接入流程

  1. 创建端插件并绑定到智能体。具体操作可参考创建端插件
  2. 将智能体发布为 API 服务。
  3. 调用 API 使用端插件。具体操作可参考通过 API 使用端插件

常见问题

端插件和普通扣子编程插件的区别?

端插件和普通扣子编程插件都是智能体与外界交互的工具。

  • 端插件:用于调用本地硬件能力,例如蓝牙音响、手机等。通过端插件,智能体可以直接操控本地硬件设备,实现与用户更直接的互动。
  • 普通扣子编程插件:用于调用线上服务或云端 API,例如在智能体内添加新闻搜索插件后,智能体将拥有搜索新闻资讯的能力。详细说明请参考插件介绍