1. 为什么要在 Claude Code 里装 Skill,以及它到底解决什么问题
Claude Code 本身已经能读写文件、跑命令、改代码,但默认状态下它对你的项目规范、团队约定、特定输出格式一无所知。每次对话你都要重复交代「用 4 空格缩进」「提交信息按 Conventional Commits 写」「生成周报要分三块」,这种重复劳动就是 Skill 要消灭的东西。
Skill 可以理解成给 Claude Code 装的一份「岗位说明书」:一个文件夹,里面放一个SKILL.md,开头用元信息声明这个技能叫什么、什么时候触发,正文写清楚具体执行步骤。装好之后,你在命令行里输入斜杠命令就能调用,或者 Claude 根据 description 自动判断该不该触发。它和插件(plugin)的区别在于粒度:Skill 是单个技能,插件是打包好的一组能力,插件里可以包含多个 Skill。
适合谁用?三类人最明显。第一类是天天用 Claude Code 写业务代码的开发者,想把代码评审、格式化、日志规范固化成命令;第二类是团队里负责统一工程规范的人,希望把规范文件化、可分发;第三类是喜欢折腾命令行工作流的人,想把 Skill 和统一的 API 通道串起来,避免每个工具各配一套 Key。
这篇要交付的东西很具体:一份可直接复制的SKILL.md骨架、settings.json的配置片段、命令行验证步骤,以及怎么通过 TaoToken 把 Key 和 API 通道统一起来。目标是你跟着走一遍,能完成一次可验证的 Skill 安装,而不是看完一堆概念还是不知道文件放哪。
2. TaoToken 前置准备:把 Key 和 API 通道先理顺
在装 Skill 之前,先把「Claude Code 用什么通道访问模型」这件事定下来。很多人卡在 Skill 装完了但命令跑不通,根因往往不是 Skill 写错,而是底层的 Key 或 base URL 没配对。
TaoToken 在这里扮演的角色是统一的 Key/API 通道:你申请一个 Key,把 Claude Code 的请求指向它的 API 地址,就不用为每个工具单独维护一套凭证。官网入口是 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 地址是 https://taotoken.net/api (这个不加 UTM 参数,配置里直接写它)。
操作顺序建议这样:先打开控制台创建 Key,再确认你要用的模型名,最后回到 Claude Code 的配置里填 base URL 和 Key。控制台地址是 https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,Key 管理页在 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 。
注意:Key 属于敏感凭证,不要写进会提交到 Git 的
SKILL.md或项目级配置文件里。项目级配置建议用环境变量引用,用户级配置放在 home 目录下相对安全一些。
如果你还没决定用哪个模型,可以先去模型对话页试一下手感,地址是 https://taotoken.net/models?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 。确认能正常对话之后,再回来配 Claude Code,能省掉一轮「到底是 Key 错还是 Skill 错」的排查。
3. 可复制配置:SKILL.md 骨架 + settings.json 片段
3.1 Skill 放哪里:项目级 vs 用户级
Claude Code 认两个目录。项目级是项目根目录下的.claude/skills/,只对当前项目生效,适合跟项目强绑定的技能,比如这个仓库专用的部署流程。用户级是 home 目录下的~/.claude/skills/,所有项目都能用,适合通用技能,比如写文档、做排版、生成周报。
判断标准很简单:这个技能换个项目还用不用?用就放用户级,不用就放项目级。放错位置不会报错,但会出现「我在 A 项目装好了,切到 B 项目怎么没了」的困惑。
3.2 一份可直接用的 SKILL.md 骨架
一个 Skill 本质就是一个文件夹,里面必须有SKILL.md。文件分两部分:开头的元信息用两行---包裹,正文写具体指令。最常用的两个字段是name(技能名,也是斜杠命令名)和description(告诉 Claude 这个技能干嘛、什么时候触发)。
--- name: code-review description: 收到代码片段时自动进行代码评审,检查语法、规范、潜在 bug、优化建议,需要代码审核时触发 --- ## 执行步骤 1. 识别用户发送的代码语言和上下文; 2. 按以下维度逐项检查:语法错误、命名规范、边界条件、潜在空指针、性能隐患; 3. 每个问题给出「位置 + 原因 + 修改建议」三段式说明; 4. 输出用 Markdown 表格汇总,严重问题排前面; 5. 不重写整段代码,只针对问题点给最小修改示例。把这段存成.claude/skills/code-review/SKILL.md(项目级)或~/.claude/skills/code-review/SKILL.md(用户级),目录名和name保持一致,省得自己记混。
3.3 settings.json 配置片段
Claude Code 的配置可以放在项目级.claude/settings.json,也可以放用户级。核心是把 API 通道指向 TaoToken,Key 用环境变量引用。下面是一份可复制的片段:
{ "env": { "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_API_KEY": "${TAOTOKEN_API_KEY}" }, "permissions": { "allow": [ "Read", "Write", "Bash(git status)", "Bash(git diff)" ] } }然后在你的 shell 配置文件(.bashrc/.zshrc)里导出真实 Key:
export TAOTOKEN_API_KEY="sk-你的真实Key"这样settings.json可以安全地提交到仓库,真实 Key 留在本地环境变量里。改完配置记得重开一个终端,或者source ~/.zshrc让变量生效。
3.4 用命令行批量装 Skill
如果你不想手动复制文件夹,可以用命令行工具批量装。先全局装 CLI:
npm install -g agent-skills-cli装完之后就能用命令行管理技能:
skills install code-review # 安装指定技能 skills list # 查看已装技能 skills uninstall code-review # 卸载技能注意:
npx直接拉起的某些 Skill 包是给其他编辑器用的,不一定适配 Claude Code。要装到 Claude Code 里,优先用上面这种全局 CLI 的方式,或者干脆手动复制目录,最稳。
4. 验证请求:确认 Skill 真的被加载了
配置写完不算完,得验证。分两步走,先验证 API 通道通不通,再验证 Skill 有没有被识别。
第一步,确认环境变量和 base URL 生效。在终端里跑:
echo $TAOTOKEN_API_KEY echo $ANTHROPIC_BASE_URL第一个应该输出你的 Key(别截图发出去),第二个如果没输出,说明settings.json里的env没被读取,检查文件路径是不是.claude/settings.json。
第二步,启动 Claude Code,输入斜杠看命令列表:
claude进入交互界面后输入/,如果code-review出现在命令列表里,说明 Skill 被成功加载。如果没出现,先确认目录结构是.claude/skills/code-review/SKILL.md,注意是SKILL.md全大写,不是skill.md。
第三步,实际触发一次。随便贴一段乱缩进的代码,看 Claude 是否按你写的步骤输出评审表格。如果它没自动触发,可以手动输入/code-review强制调用。手动能调、自动不触发,通常是description写得太模糊,Claude 判断不出该在什么场景用,把触发条件写具体一点。
验证通过的标准很简单:斜杠列表里有它,手动调用有正确输出,贴对应场景的输入能自动触发。三条都满足,这次安装就算完成了。
5. 本篇常见错排查
报错一:斜杠列表里找不到 Skill。九成是路径或文件名问题。检查三点:目录是不是.claude/skills/(注意skills是复数),技能文件夹名和name字段是否一致,文件名是不是SKILL.md全大写。Windows 下还要注意别存成SKILL.md.txt。
报错二:命令能调但请求报 401 / 403。这是 Key 或 base URL 的问题,跟 Skill 无关。先echo $TAOTOKEN_API_KEY确认变量有值,再确认ANTHROPIC_BASE_URL写的是https://taotoken.net/api,结尾不要多加斜杠或路径。Key 失效就去 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 重新生成一个。
报错三:Skill 装了但从不自动触发。看description字段。写「代码相关」这种太宽泛,Claude 判断不了边界;写成「用户粘贴无缩进代码时触发」就明确得多。description 是触发判断的唯一依据,值得多花两分钟打磨。
报错四:项目级 Skill 在别的项目里不见了。这不是 bug,是设计。项目级只对当前项目生效,要跨项目用就挪到~/.claude/skills/。
报错五:改了 settings.json 没生效。Claude Code 一般在启动时读配置,改完要退出重进。环境变量同理,新开终端或 source 一下配置文件。
排查顺序建议固定下来:先看路径和文件名,再看 Key 和 base URL,最后看 description。按这个顺序走,大部分问题五分钟内能定位。
6. 把 Skill 和统一通道串成长期工作流
单次装一个 Skill 只是起点。真正省时间的是把常用技能都固化成 Skill,再用 TaoToken 的统一 Key 通道串起来,这样你换项目、换机器,只要同步配置文件和 Skill 目录,环境就回来了。
如果你主要在做长期编码和 Agent 类任务,可以考虑 Coding Plan,地址是 https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,适合把日常开发流量集中管理。接入细节和参数说明看文档 https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,里面把 base URL、模型名、常见客户端配置都列了。Claude Code 相关的接入说明在 https://taotoken.net/claude-code?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,照着填就行。
一个实用习惯:把~/.claude/skills/做成 Git 仓库,每写好一个 Skill 就提交一次。换电脑时 clone 下来,配合环境变量里的 Key,十分钟就能恢复完整工作环境。Skill 写多了之后,你会发现真正值钱的不是某个具体技能,而是这套「规范文件化 + 通道统一化」的组织方式。