Coze Studio智能体技能扩展:通过插件集成第三方API的方法

【免费下载链接】coze-studio An AI agent development platform with all-in-one visual tools, simplifying agent creation, debugging, and deployment like never before. Coze your way to AI Agent creation. 【免费下载链接】coze-studio 项目地址: https://gitcode.com/GitHub_Trending/co/coze-studio

你是否还在为智能体功能单一而烦恼?想让你的AI智能体连接天气API、支付系统或企业内部服务,却被复杂的开发流程劝退?本文将带你3步完成第三方API集成,让智能体秒变全能助手。读完你将掌握:插件开发全流程、API参数配置技巧、权限验证最佳实践,以及10+官方插件模板的使用方法。

插件开发准备工作

在开始集成第三方API前,需先了解Coze Studio的插件架构。插件系统核心模块位于backend/application/plugin/plugin.go,主要包含插件的创建、更新、权限验证等功能。开发插件需准备:

  • 第三方API文档:包含接口地址、请求方法、参数说明
  • 开发环境:Git、Go 1.21+、Docker(可选)
  • 项目结构:通过common/_templates/plugin/模板创建标准插件工程

插件类型选择

Coze Studio支持两种插件类型,在backend/domain/plugin/dto/plugin.go中定义:

type CreateDraftPluginRequest struct {
  PluginType   common.PluginType  // 插件类型:LOCAL本地插件/CLOUD云端插件
  IconURI      string             // 图标存储路径
  ServerURL    string             // API服务地址
  AuthInfo     *PluginAuthInfo    // 认证信息
}
插件类型 适用场景 优势
LOCAL 内部系统集成 低延迟、高安全性
CLOUD 公网API服务 无需服务器部署

开发步骤:从API到可用插件

1. 创建插件草稿

通过CreateDraftPlugin接口初始化插件基础信息,关键参数包括:

// 代码片段来自[backend/domain/plugin/service/service.go](https://link.gitcode.com/i/91b80b8a7ff62acf0b4222680276da8d)
CreateDraftPlugin(ctx context.Context, req *dto.CreateDraftPluginRequest) (pluginID int64, err error)

请求示例

{
  "PluginType": "LOCAL",
  "Name": "天气查询插件",
  "Desc": "集成高德地图天气API",
  "ServerURL": "https://restapi.amap.com/v3/weather",
  "AuthInfo": {
    "Type": "API_KEY",
    "Params": {"apiKey": "your_amap_key"}
  }
}

2. 定义工具方法

每个插件可包含多个工具方法,对应API的不同端点。通过CreateDraftToolsWithCode批量创建工具:

// 代码片段来自[backend/domain/plugin/service/service.go](https://link.gitcode.com/i/91b80b8a7ff62acf0b4222680276da8d)
CreateDraftToolsWithCode(ctx context.Context, req *dto.CreateDraftToolsWithCodeRequest) (resp *dto.CreateDraftToolsWithCodeResponse, err error)

OpenAPI定义示例

paths:
  /weather/forecast:
    get:
      summary: "获取未来3天天气预报"
      parameters:
        - name: city
          in: query
          required: true
          schema: {type: string}

3. 发布与绑定智能体

插件开发完成后通过PublishPlugin接口发布,然后在智能体配置中绑定:

// 代码片段来自[backend/domain/plugin/service/service.go](https://link.gitcode.com/i/91b80b8a7ff62acf0b4222680276da8d)
BindAgentTools(ctx context.Context, agentID int64, toolIDs []int64) (err error)

高级配置:参数与权限管理

公共参数设置

backend/domain/plugin/dto/plugin.go中定义了公共参数机制,可设置所有工具共享的参数(如API密钥):

type CreateDraftPluginRequest struct {
  CommonParams map[common.ParameterLocation][]*common.CommonParamSchema
}

支持的参数位置:

  • PATH:URL路径参数
  • QUERY:URL查询参数
  • HEADER:请求头参数

认证方式选择

Coze Studio支持多种认证方式,通过AuthInfo字段配置:

type PluginAuthInfo struct {
  Type consts.AuthzType  // API_KEY/OAUTH2/BASIC等
  Config map[string]interface{}
}
认证类型 配置示例 适用场景
API_KEY {"keyName": "api_key", "value": "xxx"} 简单API服务
OAUTH2 {"clientID": "xxx", "scope": "read"} 第三方登录授权

调试与测试

插件开发过程中可通过以下接口进行调试:

推荐使用docker-compose.yml启动本地测试环境,包含插件所需的数据库、消息队列等依赖服务。

官方插件模板

Coze Studio提供多种插件模板,位于common/_templates/目录,涵盖:

  • HTTP客户端:快速集成REST API
  • 数据库连接器:支持MySQL/PostgreSQL查询
  • 文件处理:基于backend/bizpkg/fileutil/的文件转换工具

总结与下一步

通过本文介绍的3步方法,你已掌握Coze Studio插件开发的核心流程。建议接下来:

  1. 尝试修改docs/oceanbase-integration-guide.md中的示例插件
  2. 参与社区插件开发,提交PR到CONTRIBUTING.md
  3. 关注版本更新,README.zh_CN.md中会同步最新功能

点赞+收藏本文,下期将带来《插件性能优化:从100ms到10ms的实践》。如有疑问,欢迎在GitHub Issues中交流!

【免费下载链接】coze-studio An AI agent development platform with all-in-one visual tools, simplifying agent creation, debugging, and deployment like never before. Coze your way to AI Agent creation. 【免费下载链接】coze-studio 项目地址: https://gitcode.com/GitHub_Trending/co/coze-studio

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐