> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trae.cn/llms.txt
> Use this file to discover all available pages before exploring further.

在 TRAE Work 中，技能（Skill）通过 `SKILL.md` 文件进行定义和管理。每个技能封装了指令、脚本及相关资源，用于为智能体提供可复用、面向特定场景的专业能力。
## 了解技能 {#72d7a3ce}
一个技能可以被视为提供给智能体的一套 “专业能力说明书”（类似用户手册或操作指南）。在执行任务时，智能体可以按需加载相应的技能，从而增强其对任务的理解与执行能力。
### 特点 {#41103b36}

* **结构化**
   一个技能对应一个 `SKILL.md` 文件，文件中以结构化的方式描述完成某一类任务所需的信息，例如：任务目标与适用场景；关键约束与注意事项；推荐流程或操作步骤；可选的脚本、模板或示例。
* **动态按需加载**
   智能体不会在任务开始时一次性读取所有技能的完整内容。在执行任务前，智能体会先扫描所有技能的简要描述，仅当判断当前任务与某个技能高度相关时，才会加载该技能的详细内容。这种按需加载机制可以有效减少上下文中的 Token 消耗、避免无关信息干扰智能体的决策。

### 使用场景 {#aba3bd24}

* **保证输出结果的一致性与规范性**
   需要智能体在不同时间、不同任务中，始终按照既定标准输出结果。例如，将统一设计规范、执行团队标准、保持品牌一致性或确保代码符合项目约定等要求封装为技能，从而将隐性的个人或团队标准转化为显式、可复用的专业能力，最终使输出结果更加稳定、可控。
* **自动化重复性工作流**
   需要频繁执行相同或高度相似的多步骤任务。例如，对于测试流程、代码规范检查、常规数据分析等难以避免的日常工作，可以将既有的 SOP 封装为技能。一旦相关任务被触发，智能体即可自动按照定义好的流程执行，从而减少重复的指令输入，提升效率。
* **总结与共享专业能力**
   总结个人经验或团队规范，并在更大范围内复用。例如，将技能在社区、交流群等公共平台进行分享，从而在不同的智能体、项目、团队间复用相同的技能。

### 技能 vs 其他功能 {#191d366c}

* **技能 vs 规则**
   规则采用全量加载机制，一旦开启对话，所有规则都会被注入并持续占用上下文窗口；技能则采用按需加载机制，仅在实际需要被调用时才加载到上下文中，从而显著降低 Token 消耗。
* **技能 vs MCP Server**
   技能用于向 AI 描述如何完成任务，而 MCP Server 负责向 AI 提供可以调用的工具。
   例如，AI 可以通过 Playwright MCP Server 获得页面操作等自动化测试能力；而对应的技能则用于约定测试工程结构、页面对象模型（POM）设计规范，以及常见测试用例的编写和执行流程，从而引导 AI 在正确的上下文中高效调用这些能力。

### 技能类型 {#8d69ecd1}

* **项目技能**：在项目内创建的技能，仅在当前项目中生效。
* **全局技能**：在设置中心创建的技能，在所有项目中生效。

### 技能的运行环境 {#755413ce}
<!-- @cols-width: 126,335,256 -->
| | | | \
|**环境类型** |**适用任务** |**适用客户端** |
|---|---|---|
| | | | \
|本地 |仅对本地任务生效。 |TRAE Work 桌面版 |
| | | | \
|云端 |仅对云端任务（及从 GitHub 拉取的项目）生效。 |TRAE Work 网页版、桌面版 |

### 技能的结构 {#fdbc5fd2}
一个技能中必须包含一个 `SKILL.md` 文件，还可以根据实际需求添加其他文件，例如可执行的脚本、可参考的模板和风格指南等。例如：
```Plain Text
skill-name/
├── SKILL.md               # （必须）智能体的核心指令
├── examples/              # （可选）输入/输出示例
    ├── input.md
    └── output.md
├── templates/             # （可选）可复用的模板
    └── component.tsx
└── resources/             # （可选）参考文件、运行脚本或素材
    └── style-guide.md
```

### 技能所在目录 {#13775448}
技能相关文件所在目录如下：

* **项目技能**：项目所在路径下的 `.trae/skills/` 目录。
* **全局技能**：
   * macOS/Linux：本地根目录 `~/.trae-cn/skills`。
   * Windows：本地根目录 `%userprofile%/.trae-cn/skills`。

### SKILL.md 文件格式 {#01d0c346}
`SKILL.md` 文件的格式如下：
```Markdown
---
name: 技能名称
description: 简要描述这个技能的功能和使用场景

---

# 技能名称

## 描述
描述这个技能的作用。

## 使用场景
描述触发这个技能的条件。

## 指令
清晰的分步说明，告诉智能体具体怎么做。

## 示例 (可选)
输入/输出示例，展示预期效果。
```

## 创建技能 {#07c4342b}
你可以上传本地技能至 TRAE Work，或直接从 TRAE Work 的技能市场中安装所需技能。
### 方式一：上传本地技能 {#775d272b}
你可以将本地的技能上传至 TRAE Work。待上传的技能必须为包含根级 SKILL.md 文件的 zip 或 .skill 文件，且 SKILL.md 文件必须包含以 YAML 格式编写的技能名称和描述。
步骤如下：

1. 在左侧的任务栏中，点击顶部区域中的 **技能**。
   你将进入技能管理中心。
2. 点击右上角的 **上传技能** 按钮。
3. 在 **上传技能** 弹窗中，上传本地技能文件，然后点击 **确认** 按钮。
   ![Image=3024x1715](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/dc59fa0996b7445fb22ce36278ddc284~tplv-goo7wpa0wc-image.image)
   TRAE Work 会解析该技能中的文件并安装该技能。安装完成后，该技能将被添加至 **已安装** 页签，并默认被启用。

### 方式二：从技能市场安装技能 {#c75483e6}
TRAE Work 的技能市场为不同使用场景提供了多种技能，涵盖数据分析、界面设计、开发工具等领域。你可以直接从中安装所需技能。
步骤如下：

1. 在左侧的任务栏中，点击顶部区域中的 **技能**。
   你将进入技能管理中心。
2. 在 **技能市场** 页签中，搜索所需技能，然后点击技能卡片右侧的 **+** 按钮。
   :::tip 提示
   点击某个技能的卡片后，界面上会弹出该技能的详情窗口。你可以阅读该技能的说明，以判断该技能是否符合你的需求。
   :::
   ![Image=3020x1713](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/2c7b8070492243749fcc8d6c0ba64a87~tplv-goo7wpa0wc-image.image)
   TRAE Work 将安装该技能。安装完成后，该技能将被添加至 **已安装** 页签，并默认被启用。

## 在对话中使用技能 {#3652a279}
### 方式一：手动调用技能 {#0127d283}
你可以通过以下任一方式来手动调用技能。

* 在对话框中输入 `/`，然后从列表中选取所需的技能。
* 直接向 AI 发送指令，明确告知 AI 调用某个技能来完成任务，例如：“用 codemap 技能总结一下这个分支的改动”。
* 在技能管理中心的 **已安装** 页签中，点击某个技能的卡片以打开其详情窗口，然后点击窗口右下角的 **运行技能** 按钮。

### 方式二：由 AI 自动调用技能 {#8d691d99}
在执行任务时，AI 会结合当前任务内容与各技能中定义的 “适用场景” 或 “何时使用” 之类的描述，判断是否需要加载某个技能，并在合适的阶段自动调用相关技能。
例如，假设你定义了一个代码审核技能，其触发条件为 “当用户请求代码反馈或评审时”。当你提出 “这个函数写得如何”、“帮我审核以下代码” 之类的请求时，AI 会识别到这类请求与代码审核技能的相关性，并在无需额外指令的情况下加载并使用该技能，以完成对应的代码分析与反馈。
## 启用、禁用、卸载技能 {#6135714d}
在技能管理中心的 **已安装** 页签中，你可以启用、禁用、卸载技能。

* **启用、禁用技能**：找到目标技能，然后滑动卡片右侧的滑块来启用、禁用该技能。
* **卸载技能**：点击目标技能的卡片，然后点击详情弹窗左下角的 **卸载** 按钮。

## 最佳实践 {#2226cfab}
技能的开发非一蹴而就，而是一个持续迭代的过程。关于构建和迭代技能的最佳实践，参考[如何写好一个 Skill：从创建到迭代的最佳实践](/ide/best-practice-for-how-to-write-a-good-skill)。
