Skip to content

技能系统概览 ​

技能(Skill)是 Nexent 为智能体扩展能力的方式。每个技能由以下部分组成:

  • 技能描述:这个技能是做什么的、什么时候该用它
  • 工具组合:一个或多个 nexent sdk方法或用户自定义工具的打包
  • 参数模板:用户可为技能填写哪些参数
  • 使用示例:这个技能通常怎么用

与直接选择一个一个工具相比,技能让复杂能力的配置变得简单——只需安装一个技能包,无需分别配置每个工具。

技能包结构 ​

技能包可以是单个 SKILL.md 文件,也可以是包含多个文件的 ZIP 包:

skill-name/
├── SKILL.md              # 技能定义文件(必需)
├── config/
│   ├── config.yaml       # 参数默认值(可选)
│   └── schema.yaml        # 参数类型与说明(可选)
├── scripts/
│   └── *.py               # Python 脚本(可选)
├── examples.md            # 使用示例(可选)
└── assets/                # 静态资源(可选)

SKILL.md 的结构 ​

每个技能必须有一个 SKILL.md 文件,分为两部分:

第一部分:YAML 元数据(必须)

yaml
---
name: skill-name           # 必填:技能名称,需唯一
description: |             # 必填:技能功能描述
  一段描述,说明这个技能是做什么的、什么时候该用它。
  建议用第三人称书写,如:"这个技能用于..."
allowed-tools:             # 可选:工具类技能暴露的 nexent sdk 方法或工具名列表
  - read_file
  - write_file
tags:                      # 可选:技能标签,用于分类与检索
  - tag1
  - tag2
# script_outputs:          # 可选:脚本类技能声明脚本输出结果
#   scripts/generate.py:   #   (如生成文件的位置与 MIME 类型)
#     kind: file
#     mime_types:
#       - text/plain
# 其他附加字段(如 output_type / output_mime_types)属于个别技能的扩展写法
---

第二部分:技能正文

元数据下方可以继续写 Markdown 内容,包括:

  • 技能的详细说明与使用指南
  • 工具调用方式的示例代码
  • 错误处理说明
  • 使用限制与注意事项

两种技能类型 ​

根据用途,技能分为两类:

工具类技能:用于暴露一个或多个 Nexent sdk方法的能力,包含工具的参数说明、调用示例、返回格式、错误处理等。用户配置好参数后,智能体即可调用这些工具。

智能体类技能:用于教智能体如何执行一个复杂任务,包含工作流程说明、领域知识、最佳实践,有时附带辅助脚本。这类技能的正文会包含详细的步骤指引。

官方技能一览 ​

文件操作类 ​

技能名称能力说明
read-file读取工作空间内文件内容与元信息
create-file-directory创建文件或目录
delete-file-directory删除文件或目录
move-file-directory移动或重命名文件/目录
list-directory树形列出目录结构
create-docx从结构化规格创建/生成 Word 文档,支持一次性生成与细粒度编辑
create-excel从结构化规格创建/生成 Excel 工作簿,支持一次性生成与细粒度编辑

知识库搜索类 ​

技能名称能力说明
search-knowledge-base本地知识库语义检索(支持 hybrid / accurate / semantic 模式)
search-difyDify 知识库检索
search-idataiData 知识库检索
search-datamateDataMate 知识库检索(支持相似度阈值控制)

公网搜索类 ​

技能名称能力说明
search-web-tavilyTavily 公网实时搜索
search-web-linkupLinkup 图文混合搜索
search-web-exaExa 深度网页搜索

多模态分析类 ​

技能名称能力说明
analyze-image基于 VLM 的图片内容分析问答
analyze-text-filePDF/Word/Excel 等文件内容提取与问答

通信与远程操作类 ​

技能名称能力说明
email-utilsIMAP 收件 / SMTP 发件(支持 HTML / CC / BCC)
run-shell-ssh持久化 SSH 会话远程执行命令

技能生命周期 ​

版本管理 ​

每个技能支持两个版本状态:

  • 草稿版本(version=0):开发调试阶段,修改即时生效,适合反复调整
  • 已发布版本(version>=1):正式使用,参数锁定,防止误改

技能实例 ​

同一个技能可以为不同的智能体配置不同的参数值,互不影响。

例如,搜索技能可以为"技术文档 Agent"配置只搜索技术知识库,为"客服 Agent"配置只搜索客服知识库。

常见操作流程 ​

创建技能 → 配置参数 → 为智能体选择技能 → 调试 → 发布
                ↓
            修改草稿版本

安全说明 ​

  • 路径隔离:技能包内文件仅能在技能目录范围内访问
  • 参数校验:schema.yaml 中定义的参数均经过前端表单校验
  • 权限控制:技能实例按租户隔离,API 需携带认证 Token

相关参考 ​