1. 零基础跑通 Trae Skill 的真实场景
Trae 装好之后,很多人会卡在同一个地方:软件能打开、对话能聊天,但一提到 Skill 就不知道从哪下手。Skill 说白了就是给大模型配一份标准作业程序,你把它写成一个SKILL.md文件,模型在需要的时候自动读取并按里面的步骤干活。它不需要你训练模型,也不需要写复杂代码,本质上是把「你每次都要重复粘贴的那段长提示词」固化成一个可复用的文件。
这篇面向零基础开发者,聚焦三件事:Node.js 环境怎么准备、SKILL.md骨架怎么写、怎么用npx把技能跑起来并验证生效。适合刚装完 Trae、想给自己常用的重复任务(翻译文档、合并文件、格式化代码)做自动化的朋友。整个过程我会用「中文翻译技能」当例子,因为它的输入输出最直观,跑通一次你就能照着改。
先说清楚 Skill 和普通提示词的区别。普通提示词是你每次在对话框里现打,模型看完就忘;Skill 是落盘的文件,Trae 会扫描技能目录,把name和description挂到索引里,真正触发时才读取完整内容。这种渐进式加载的好处是平时不占上下文,需要时才展开,Token 消耗低,行为也更稳定。理解了这一点,后面的目录结构和命名规则就顺理成章了。
2. TaoToken 前置:把模型通道先接好
Skill 负责「怎么干」,模型负责「谁来干」。Trae 本身是编辑器侧的壳,真正执行推理的模型通道需要你提前配好。我习惯用 TaoToken 来做这一层,它的接口兼容主流协议,配置成本低,模型对话、编码计划、API Key 管理都有对应入口,适合当作 Skill 运行时的稳定后端。
如果你只是想让翻译技能跑起来,用模型对话通道就够了;如果你打算长期做编码类 Skill(比如代码审查、提交信息生成),建议直接上 Coding Plan,额度更耐用。接入文档里有完整的参数说明,照着填即可。
提示:先把模型通道调通,再去写 Skill。否则技能触发后模型没响应,你会分不清是 SKILL.md 写错了还是通道没配好,排查成本翻倍。
具体入口我放在这里,按需取用:
- 模型对话:https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_content=model_chat&utm_campaign=rewrite
- Coding Plan:https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding_plan&utm_campaign=rewrite
- 控制台:https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_content=console&utm_campaign=rewrite
- API Keys:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite
- 接入文档:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite
API 基础地址是https://taotoken.net/api,注意这个地址不带任何查询参数,配置时直接填这一串就行。官网首页是 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,第一次了解可以先看首页再进文档。
3. 可复制配置:Node.js 环境与 SKILL.md 骨架
3.1 准备 Node.js 与 npx
npx是随 npm 一起装的,所以只要 Node.js 装好,npx就能用。Windows 用户去 Node.js 官网下 LTS 版本,一路下一步即可。装完打开终端验证:
node --version npm --version npx --version三条命令都能打印出版本号(比如v20.11.0、10.2.4)就说明环境没问题。如果npx报「不是内部或外部命令」,多半是安装时没勾选加入 PATH,重装一次并勾选即可。Python 是可选的,只有当你的 Skill 要调用 Python 脚本时才需要,纯 Markdown 技能用不上。
3.2 创建项目级 Skill 目录
Trae 会扫描项目下的.trae/skills/目录。每个技能一个子文件夹,文件夹名建议用英文短横线命名。下面这套命令在 Windows 的 PowerShell 或 CMD 里都能跑:
mkdir hello cd hello type nul > README.md mkdir .trae\skills\zh-translator cd .trae\skills\zh-translatormacOS 或 Linux 用户把type nul >换成touch、把反斜杠换成斜杠即可。目录建好后,在zh-translator文件夹里新建SKILL.md。
3.3 SKILL.md 骨架
SKILL.md分两部分:顶部是 YAML frontmatter(元数据),下面是 Markdown 正文(行动指南)。元数据里的name和description决定技能何时被匹配,正文决定模型怎么执行。下面这份可以直接复制:
--- name: zh-translator description: 将文本文档(Markdown、TXT 等)翻译成中文,并生成带 .zh.md 后缀的新文件。保留原格式、代码块、链接等结构。仅支持翻译成中文。 --- # 中文翻译技能 ## 用途 将任意文本文档(尤其是 Markdown 文件)翻译成中文,并生成对应的中文翻译文件。 例如:`readme.md` → `readme.zh.md`。 ## 核心原则 1. 保留原格式:不改变 Markdown 标记、代码块、HTML 标签、URL、图片链接。 2. 精准翻译:只翻译自然语言段落、标题、列表项、表格文本、链接显示文字、图片 alt。 3. 不翻译内容:代码块内所有内容、行内代码、URL 或文件路径、Frontmatter 键名。 4. 文件命名:移除已有语言后缀(.en/.zh 等),再添加 .zh,扩展名保持原样。 5. 避免覆盖:目标文件已存在时,询问用户是否覆盖、跳过或另存。 6. 分块处理:文档超过上下文限制时自动分段翻译再组合。 ## 执行步骤 ### 第一步:确认参数 获取源文件路径。若用户未提供,主动询问。 ### 第二步:读取源文件 使用 read_file 读取完整内容。文件不存在则报错终止。 ### 第三步:规范化目标文件名 `docs/api.md` → `docs/api.zh.md`。 ### 第四步:检查目标文件是否存在 存在则询问:「目标文件已存在,是否覆盖?(是/否/另存为)」。 ### 第五步:执行翻译 解析文档结构,逐块翻译。代码块、行内代码、URL 保持原样。 术语保持一致,例如 API 不翻译,endpoint 译为「端点」。 ### 第六步:写入新文件 使用 write_to_file 写入目标路径,UTF-8 编码。 ### 第七步:反馈结果 报告生成的文件路径与处理情况。写完后回到 Trae,打开「设置 - 规则和技能」,如果列表里没看到新技能,点技能旁边的圆圈箭头刷新一下。刷新后应该能看到zh-translator,说明目录结构和 frontmatter 都被正确识别了。
3.4 用 npx 安装社区技能
除了自己写,也可以直接装别人做好的技能。社区技能一般发布在 GitHub 仓库,用npx skills add安装:
npx skills add vercel-labs/agent-skills这条命令会把仓库里的技能拉到本地技能目录。安装完成后同样去「规则和技能」里刷新确认。如果你想从零初始化一个自己的技能脚手架,可以用:
npx skills init my-file-merger它会生成一个带 frontmatter 的SKILL.md模板,你只需要改name、description和步骤即可。实测下来,init生成的骨架对新手很友好,省得记 frontmatter 的字段格式。
4. 验证请求:让翻译技能真正跑一次
技能加载成功后,回到 Trae 的对话窗口,直接说人话触发:
将文档翻译成中文,然后拖入 README.md回车后观察模型行为。一个正常执行的技能会按SKILL.md里的步骤走:先读取文件、再计算目标文件名、检查是否存在、然后翻译、最后写入。如果一切顺利,项目目录下会多出一个README.zh.md,打开确认内容已翻译、代码块和链接结构没被破坏。
想更直观地验证npx链路,可以在终端里单独跑一次技能里用到的命令,确认工具本身可用:
npx prettier --version能打印版本号说明npx能正常拉取并执行远程包,这条链路通了,Skill 里写的 shell 命令才有执行基础。如果这一步卡住,先解决网络和 npm 源的问题,再回头看技能。
验证技能是否「真的生效」,我一般看三个信号:一是模型回复里出现了按步骤走的痕迹(比如先问路径、再报文件名);二是目标文件确实生成且内容正确;三是重复触发时行为一致,不会这次翻译、下次改写。三个都满足,说明这个 Skill 已经稳定可用。
5. 本篇常见错排查
5.1 技能列表里看不到 zh-translator
最常见的原因是目录层级不对。Trae 认的是项目根目录下的.trae/skills/<技能名>/SKILL.md,少一层或多一层都不行。另一个原因是 frontmatter 格式错误,比如---前后有空格、name和description缺一个。检查方法:把SKILL.md顶部三行单独贴到 YAML 校验工具里过一遍。
5.2 npx 命令报错或卡住
先确认node --version和npm --version都有输出。如果npx拉包超时,多半是 npm 源的问题,可以临时切换源再试:
npm config set registry https://registry.npmmirror.com切换后重新执行npx skills add。如果报权限错误(EACCES),Windows 用户用管理员终端重试,macOS 用户检查全局目录权限。
5.3 技能触发了但没生成文件
这种情况通常是模型没拿到文件路径,或者read_file失败。检查对话里有没有明确给出文件路径,相对路径要相对于项目根目录。如果文件确实存在却读不到,看是不是被其他程序占用,或者路径里有中文和空格导致解析异常,换成英文路径再试。
5.4 翻译结果覆盖了原文件
说明SKILL.md里「避免覆盖」那一步没写清楚,或者模型跳过了检查。把第四步的询问逻辑写得更硬一点,明确要求「写入前必须先检查目标文件是否存在,存在则停止并询问」。技能步骤越具体,模型越不容易自作主张。
5.5 代码块被翻译了
这是翻译类技能的高频坑。在SKILL.md的「不翻译内容」里把代码块、行内代码、URL 逐条列出来,并给一个反例。比如写明「```bash围栏内的内容一律保持原样,包括注释」。约束写得越细,输出越可控。
6. 继续把 Skill 用起来
跑通第一个技能之后,下一步是把它变成习惯。我的做法是:每发现自己重复粘贴同一段提示词超过三次,就停下来把它写成SKILL.md。翻译、合并 txt、生成提交信息、格式化代码,这些都能固化成技能。写的时候记住一个原则——把模型当成一个聪明但没背景的实习生,步骤要细到不需要猜,负面约束要列清楚,遇到意外要规定它先问你。
如果你打算长期做编码类技能,建议把模型通道换成 Coding Plan,额度更稳,适合高频触发。接入过程中遇到通道配置、API Key 或文档细节的问题,直接去 API Keys 和接入文档里对照排查,比在对话里反复试要快得多。技能写多了你会发现,真正难的不是写 Markdown,而是把一件模糊的任务拆成模型能一步步执行的清晰指令,这个能力练出来,比任何单个技能都值钱。