更新时间:2026-05-29 GMT+08:00
分享

技能

配置目录

技能按作用范围可分为项目级和个人级。

类型

作用域

存放位置

项目级

仅针对当前项目生效,存储在本地

项目根目录/.codeartsdoer/skills

个人级

当前用户下的所有项目

~/.codeartsdoer/skills

“~”表示当前用户的主目录,Windows下等同于“C:\Users\用户名\”,macOS下等同于“/Users/用户名/”

若存在名称相同的技能,技能调用优先级为:项目级 > 个人级。

技能的目录结构

技能是一个包含必需的SKILL.md文件和其他可选的捆绑资源的结构化目录,打包完成特定任务所需的知识和工具。
skill-name/
├── SKILL.md (必填)
│   ├── YAML frontmatter 元数据 (必填)
│   │   ├── name: (必填)
│   │   └── description: (必填)
│   └── Markdown 指令 (必填)
└── Bundled Resources/ 捆绑资源 (选填)
    ├── scripts/      - 可执行代码 (Python/Bash 等)
    ├── references/   - 旨在根据需要加载到上下文中的文档
    └── assets/       - 输出中使用的文件 (模板、图标、字体等)
表1 技能参数说明

参数名称

说明

skill-name

整个技能的根目录,skill-name需要替换成实际的技能名称(比如data-analysis-skill)。技能名称由小写字母、数字和连字符(-)组成,开头和结尾不能是连字符,且连字符不可连续使用,长度1~64字符。

SKILL.md

SKILL.md文件名不可修改。它是技能的核心描述文件,相当于技能的“说明书”,必须包含以下两部分:

  • YAML frontmatter元数据:放在SKILL.md文件的最顶部,以“---”首尾包裹,是AI可解析的结构化信息。包含name和description两个字段。
    • name:技能名称,由小写字母、数字和连字符(-)组成,开头和结尾不能是连字符,且连字符不可连续使用,长度1~64字符。name必须与skill-name保持一致
    • description:技能描述,长度不超过1024字符。该字段对华为云码道识别技能的使用场景至关重要,需清晰描述技能功能及适用触发条件。
  • Markdown指令:YAML元数据下方的Markdown内容,用于详细说明技能的使用方法、参数、示例和依赖等。

Bundled Resources(可选)

存放技能配套资源的目录,非必填,但能让技能更完整。

  • scripts/:存放技能的可执行脚本,例如Python脚本、Shell脚本等,实现确定性操作
  • references/:存放技能依赖的参考文档,例如API文档、领域知识、公司政策等,是给智能体的知识库,这些文档会在技能执行时按需加载到上下文。
  • assets/:存放资源文件,例如字体资源、公司Logo、PPT模板等,直接在智能体生成的输出中使用,不需要被加载到上下文窗口。

示例

本文以Windows系统为例,创建个人级技能,在“.codeartsdoer/skills”下创建“test”文件夹,在该文件夹下创建“SKILL.md”文件,写入如下内容。

---
name: test
description: add a "test" after each answer
---
#回答增加后缀
在每个回答结束的时候加上“测试”

编写示例后,可在TUI下启动或者CLI下启动进行验证。

TUI下启动

  1. 编写示例后,进入TUI开发模式,如下图所示,输入“/skills”可查看技能列表。

    图1 编写skill示例

  2. 选中“test”技能后,输入指令“测试一下”并回车,“test”技能生效。

CLI下启动

  1. 打开CMD,输入如下指令:

    codearts run add a "test" after each answer

  2. 如下图所示,“test”技能生效。

    图2 验证技能生效

相关文档