ByteNoteByteNote

字节笔记本

2026年5月3日

Trae IDE 技能(Skill)文档

API中转
¥120

Trae IDE 通过 SKILL.md 文件定义和管理"技能",为智能体提供可复用、面向特定场景的专业能力。技能采用按需加载机制,仅在任务相关时才加载,有效降低 Token 消耗。

什么是技能

在 TRAE 中,技能(Skill)通过 SKILL.md 文件进行定义和管理。每个技能封装了指令、脚本及相关资源,用于为智能体提供可复用、面向特定场景的专业能力。

一个技能可以被视为提供给智能体的一套"专业能力说明书"(类似用户手册或操作指南)。在执行任务时,智能体可以按需加载相应的技能,从而增强其对任务的理解与执行能力。

主要特点

  • 结构化: 一个技能对应一个 SKILL.md 文件,文件中以结构化的方式描述完成某一类任务所需的信息
  • 动态按需加载: 智能体不会在任务开始时一次性读取所有技能的完整内容,仅当判断当前任务与某个技能高度相关时,才会加载该技能的详细内容

使用场景

  • 保证输出结果的一致性与规范性: 将统一设计规范、执行团队标准、保持品牌一致性等要求封装为技能
  • 自动化重复性工作流: 将既有的 SOP 封装为技能,如测试流程、代码规范检查、常规数据分析等
  • 总结与共享专业能力: 总结个人经验或团队规范,并在更大范围内复用

技能 vs 其他功能

技能 vs 规则

规则采用全量加载机制,一旦开启对话,所有规则都会被注入并持续占用上下文窗口;技能则采用按需加载机制,仅在实际需要被调用时才加载到上下文中,从而显著降低 Token 消耗。

技能 vs MCP Server

技能用于向 TRAE 描述如何完成任务,而 MCP Server 负责向 TRAE 提供可以调用的工具

例如,TRAE 可以通过 Playwright MCP Server 获得页面操作等自动化测试能力;而对应的技能则用于约定测试工程结构、页面对象模型(POM)设计规范,以及常见测试用例的编写和执行流程。

技能类型

类型描述
全局技能跨项目全局生效的技能,可用于统一个人/团队的通用开发范式
项目技能仅在当前项目生效的技能,可用于注入项目专属的业务知识与规则

技能的结构

一个技能中必须包含一个 SKILL.md 文件,还可以根据实际需求添加其他文件:

text
skill-name/
├── SKILL.md          # (必须)智能体的核心指令
├── examples/         # (可选)输入/输出示例
│   ├── input.md
│   └── output.md
├── templates/        # (可选)可复用的模板
│   └── component.tsx
└── resources/        # (可选)参考文件、运行脚本或素材
    └── style-guide.md

技能所在目录

  • 项目技能: .trae/skills/ 目录
  • 全局技能: ~/.trae/skills 目录

SKILL.md 文件格式

markdown
---
name: 技能名称
description: 简要描述这个技能的功能和使用场景

---

# 技能名称

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

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

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

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

创建技能

方式一:通过对话,由 AI 自动创建技能

直接通过对话创建技能,只需向 AI 描述需求,AI 就会自动生成对应技能的 SKILL.md 文件。例如:

text
帮我在 ./trae/skills 目录下创建一个新的技能

技能的名字叫 xxx

这个技能可以帮我做以下事情:
- xxx
- xxx
- xxx

方式二:手动创建技能

  1. 前往 设置 > 规则和技能
  2. 技能 部分,点击 创建 按钮
  3. 新建 窗口中,选择 技能类型(全局/项目),然后填写:
字段描述
技能名称为该技能起一个简短且有辨识度的名称
描述描述该技能是什么,以及应该在什么情况下被触发
指令当该技能被触发时,你希望 AI 遵循哪些规则或信息
  1. 点击 确认 按钮

方式三:手动导入外部技能

  1. 前往 设置 > 规则和技能
  2. 技能 部分,点击 创建 按钮
  3. 上传一个 SKILL.md 文件或一个包含 SKILL.md 文件的 .zip 文件,然后选择技能类型
  4. 按需修改字段内容,然后点击 确认 按钮

启用/禁用技能

创建技能后,可以通过打开/关闭该技能的开关来启用/禁用它。使用该能力后,TRAE 会在项目的 .trae/ 目录下创建 skill-config.json 文件,文件内罗列被禁用的项目技能。

编辑/删除技能

点击目标技能右侧的齿轮图标,然后在菜单中选择 编辑删除。对于项目技能你还可以选择将其应用到全局

在对话中使用技能

方式一:手动调用技能

对话时,当你明确知道需要使用某个技能时,可以直接向 AI 发送指令。例如:"用 codemap 技能总结一下这个分支的改动"。

方式二:由 AI 自动调用技能

在执行任务时,AI 会结合当前任务内容与各技能中定义的"适用场景"或"何时使用"之类的描述,判断是否需要加载某个技能,并在合适的阶段自动调用相关技能。

最佳实践

Skill 的开发非一蹴而就,而是一个持续迭代的过程。关于构建和迭代 Skill 的最佳实践,参考官方文档《如何写好一个 Skill:从创建到迭代的最佳实践》。

核心要点

  • Trae 的 Skill 系统与 Claude Code 的 Skill 概念高度相似,都通过 SKILL.md 文件定义
  • 按需加载机制是 Skill 相比 Rules 的核心优势,有效降低 Token 消耗
  • Skill 负责描述"如何做",MCP Server 负责提供"可调用的工具"
  • 全局技能路径: ~/.trae/skills,项目技能路径: .trae/skills/
  • 支持通过对话、手动创建、导入 .zip 三种方式创建技能

相关资源

分享: