Skip to content
GitCode

插件管理

概述

插件是可供智能体和工作流调用的能力单元,工具是插件下的内置功能:一个插件包含一个或多个工具,工具承载具体的输入 / 输出参数与调用逻辑。管理上分为两级——先管理插件,再进入某个插件管理其下的工具。

插件类型

类型pluginType说明
内置工具1系统预置插件,不可新增 / 编辑 / 删除,仅可启用或禁用
服务接口2通过 HTTP 调用外部接口,需配置请求地址与请求头
MCP3接入 MCP(Model Context Protocol)服务,需配置请求地址与请求头

工具的类型与其所属插件一致:服务接口插件下的工具为「服务接口工具」,内置工具插件下的工具为「内置工具」。

使用说明

插件列表

插件预览

进入 资源库 → 插件,页面以卡片形式展示所有插件:

  • 卡片展示图标、名称、类型标签、启用状态与描述
  • 顶部支持按名称插件类型状态筛选
  • 卡片上可直接切换启用 / 禁用状态
  • 卡片右上角菜单提供「编辑」「删除」(内置工具类型不可删除)
  • 点击卡片进入该插件下的工具列表

新增 / 编辑插件

点击「新增插件」打开弹窗填写:

  • 插件名称(必填)
  • 插件类型(必填):可选服务接口或 MCP;内置工具不可手动创建,编辑时类型不可修改
  • 图标:从图标库中选择
  • 排序
  • 插件描述(必填)
  • 插件配置(仅服务接口 / MCP 显示):
    • 请求地址(必填):外部服务的基础地址,作为其下工具接口地址的前缀
    • 请求头:以键值对形式添加,新建时默认带 User-Agent: AgentPlus/1.0

内置工具类型插件的所有字段均为只读,不可编辑。

工具列表

插件预览

在插件列表点击某个插件卡片,进入 工具列表 - {插件名称} 二级页面:

  • 展示该插件下的所有工具(卡片形式,含类型、状态、描述)
  • 支持按名称状态筛选
  • 卡片可直接切换启用 / 禁用状态
  • 「新增工具」进入工具编辑页;点击卡片或菜单「编辑」修改工具;内置工具不可删除

新增 / 编辑工具

插件预览

工具编辑页按折叠面板分为若干块,工具类型继承自所属插件:

基本信息

  • 工具名称(必填)、图标、工具描述(必填)

服务接口(仅服务接口工具显示)

  • 接口地址(必填):填写接口路径,输入框前缀为所属插件的请求地址
  • 请求方法(必填):GET / POST / PUT / DELETE / PATCH

输入参数配置

以表格形式定义入参,支持逐行新增:

说明
参数名称必填
参数描述必填
参数类型String / Integer / Number / Boolean / Object / Array / File / Image / Doc / Code / PPT / TXT / Excel / Audio / Zip / Video
传入方式仅服务接口工具:Body / Path / Query / Header
是否必填开关
默认值可选
开启关闭后该参数不生效,也不参与校验

参数类型为 ObjectArray 时可添加子参数,支持多层嵌套。

输出参数配置

以同样的表格方式定义出参结构。

内置工具的字段均为只读,不可修改参数配置。

数据库实体

AiPlugin(插件)

字段类型说明
idLong编号
nameString插件名称
pluginTypeInteger插件类型:1-内置工具,2-服务接口,3-MCP
iconString图标
descriptionString插件描述
pluginConfigAiPluginConfigVo插件配置(请求地址、请求头),服务接口 / MCP 使用
sortInteger排序
statusInteger启用状态:0-禁用,1-启用
createByLong创建人ID
createTimeLocalDateTime记录创建时间
updateByLong最后更新人ID
updateTimeLocalDateTime记录最后更新时间
deleteFlagBoolean删除标记:0-正常,1-已删除
orgIdInteger所属组织ID

AiTool(工具)

字段类型说明
idLong编号
pluginIdLong所属插件ID
nameString工具名称
typeInteger工具类型(同所属插件):1-内置工具,2-服务接口,3-MCP
descriptionString工具描述
iconString图标地址
paramsSchemaList<ToolParam>输入参数定义列表
responseSchemaList<ToolResponseParam>输出参数定义列表
httpConfigAiToolHttpConfigVoHTTP配置(接口路径、请求方法等),服务接口工具使用
statusInteger启用状态:0-禁用,1-启用
createByLong创建人ID
createTimeLocalDateTime记录创建时间
updateByLong最后更新人ID
updateTimeLocalDateTime记录最后更新时间
deleteFlagBoolean删除标记:0-正常,1-已删除
orgIdInteger所属组织ID

核心类

ToolRegistry

工具注册表,负责工具的注册与执行:

java
public interface ToolRegistry {
    ToolExecutionResult execute(Long toolId, Map<String, Object> inputs);
}

ToolQueryProvider

工具查询接口,供 LLM 节点获取可用工具列表。

参数定义

ToolParam(输入参数)

json
{
  "name": "orderId",
  "description": "订单 ID",
  "type": "String",
  "injectMethod": "Path",
  "required": true,
  "defaultValue": null,
  "enabled": true,
  "children": []
}
  • type — 参数类型:String / Integer / Number / Boolean / Object / Array / File / Image / Doc / Code / PPT / TXT / Excel / Audio / Zip / Video
  • injectMethod — 传入方式(仅服务接口工具):Body / Path / Query / Header
  • children — 当 type 为 Object / Array 时的子参数列表,支持多层嵌套