☰
Claude Code中英文系列教程33:用官方Skill创建Skill,TaoToken配置与验证全流程
2026/9/26 10:03:28 网站建设 项目流程

1. 为什么需要「用 Skill 创建 Skill」

如果你已经在 Claude Code 里写过几个 Skill,大概率会遇到一个很现实的问题:每次新建 Skill 都要手动建目录、写 frontmatter、补 description、再想触发条件,重复劳动特别多。尤其是团队里要批量产出 Skill 的时候,一个人写还好,多人协作时命名风格、目录结构、description 写法全都不一样,最后 Claude 加载时要么识别不到,要么触发时机完全不对。

我最近在整理一批内部 Skill,目标是让「描述需求 → 生成 Skill 骨架 → 本地加载 → 实际调用」这条链路能跑通,而不是每次靠记忆手敲模板。Anthropic 官方其实已经开源了一个 Skills 仓库,里面有一个专门用来生成 Skill 的 Skill,叫skill-creator。它的思路很直接:你把想做的 Skill 用自然语言描述清楚,它按 Agent Skills 规范帮你生成目录、SKILL.md、frontmatter 和示例段落。

这篇要解决的就是这条完整链路:怎么拿到官方 Skill、怎么把skill-creator装进 Claude Code、怎么用 TaoToken 统一 Key 和 API 通道把模型请求接上、生成后怎么验证 Skill 真的被加载并能被调用。面向的是需要批量生成 Skill 的开发者,所以配置部分我会给可直接复制的settings.json和config.toml骨架,验证部分给具体命令和预期输出。

需要先说明一点:Skill 本身是本地文件系统里的 Markdown + 目录约定,Claude Code 读取它不需要联网;但生成 Skill 内容、让模型按规范产出文本这一步,是要走模型 API 的。所以「TaoToken 配置」和「Skill 创建」是两件事,前者负责模型通道,后者负责本地能力沉淀,别混在一起理解。

2. TaoToken 前置:统一 Key 与 API 通道

TaoToken 在这里的角色是模型调用的统一入口。你可以在官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 了解它的定位,实际接入用的是 API 地址 https://taotoken.net/api(这个不加 UTM)。它的价值在于:不管你后面用 Claude Code、还是别的编码工具,Key 和 base_url 可以统一管理,不用每个工具单独配一套。

先拿 Key。进入控制台创建 API Key,路径是 https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_content=console&utm_campaign=rewrite ,创建完复制出来,形如sk-xxxx。这个 Key 后面会同时出现在 Claude Code 的配置和config.toml里。

如果你还没决定用哪种接入方式,可以先看接入文档 https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite ,里面区分了不同工具的配置写法。想先验证模型通不通,用模型对话页面 https://taotoken.net/models?utm_source=taotoken_aicg_blog_end&utm_content=models&utm_campaign=rewrite 发一条测试消息最快。

注意:Key 只创建一次就够,不要每个工具建一个。统一 Key 的好处是额度、日志、限流都在一个地方看,排障时不用猜是哪个 Key 出的问题。

环境变量建议这样设,Linux/macOS 写进~/.zshrc或~/.bashrc,Windows 用系统环境变量:

export TAOTOKEN_API_KEY="sk-你的Key" export TAOTOKEN_BASE_URL="https://taotoken.net/api"

设完执行source ~/.zshrc,再用echo $TAOTOKEN_API_KEY确认能打印出来。这一步看着简单,但后面 Claude Code 读不到 Key 时,八成是这里没生效或者拼错了。

3. 可复制配置:settings.json 与 config.toml 骨架

Claude Code 的配置分两层:一层是模型通道(走 TaoToken),一层是 Skill 目录约定。先把模型通道配好,再装skill-creator。

3.1 Claude Code 的 settings.json

Claude Code 的用户级配置一般在~/.claude/settings.json。下面这份骨架可以直接改 Key 后用:

{ "env": { "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_API_KEY": "sk-你的Key" }, "permissions": { "allow": [ "Read", "Write", "Bash(git:*)" ] } }

这里ANTHROPIC_BASE_URL指向 TaoToken 的 API 地址,ANTHROPIC_API_KEY填你刚创建的 Key。permissions.allow里我放了Read、Write和Bash(git:*),因为生成 Skill 时要写文件、偶尔要看 git 状态。你可以按需增减,但别一上来就全放开。

改完保存,重启 Claude Code 终端,让它重新读配置。

3.2 config.toml 骨架

如果你用的是支持config.toml的客户端(比如某些 CLI 或 IDE 插件),配置结构类似,核心还是 base_url 和 key:

[api] base_url = "https://taotoken.net/api" api_key = "sk-你的Key" model = "claude-sonnet-4-20250514" timeout = 120 [skill] user_dir = "~/.claude/skills" project_dir = ".claude/skills" auto_load = true

model按你实际可用的填,timeout给到 120 秒是因为生成 Skill 时输出可能比较长。skill.user_dir和skill.project_dir对应下面要讲的两种 Skill 存放位置。

3.3 装官方 skill-creator

官方 Skills 仓库在anthropics/skills,里面skills目录下有skill-creator。两种装法:

第一种,直接拖目录。把仓库里的skill-creator文件夹复制到:

# 用户级,所有项目可用 ~/.claude/skills/skill-creator # 项目级,只对当前项目生效 .claude/skills/skill-creator

第二种,用插件市场方式。在 Claude Code 里运行:

/plugin marketplace add anthropics/skills

然后输入/plugin,安装example-skills或document-skills,重启终端后运行/skills,能看到已安装的 Skill 列表。装完后skill-creator应该出现在列表里。

提示:用户级和项目级别同时放同名 Skill,Claude Code 加载时可能产生歧义。团队协作建议项目级,个人通用建议用户级。

4. 验证请求与成功结果

配置完不验证,等于没配。分两步:先验证模型通道通,再验证 Skill 被加载。

4.1 验证 TaoToken 通道

最直接的方式是用 curl 打一次 API:

curl -s https://taotoken.net/api/v1/messages \ -H "x-api-key: $TAOTOKEN_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "content-type: application/json" \ -d '{ "model": "claude-sonnet-4-20250514", "max_tokens": 64, "messages": [{"role": "user", "content": "回复 OK 两个字母"}] }'

预期返回里能看到content字段,文本是OK之类。如果返回 401,检查 Key;返回 404,检查 base_url 是不是多了或少了一段路径。

4.2 验证 Skill 加载

在 Claude Code 里运行:

/skills

预期输出会列出当前加载的 Skill,包括skill-creator。如果没看到,按顺序查:目录名对不对、SKILL.md在不在、frontmatter 有没有写错。

4.3 实际生成一个 Skill

确认skill-creator加载后,直接对它下指令,比如:

用 skill-creator 帮我创建一个 Skill,名字叫 api-mock-helper, 用途是:当我在写前端代码需要 mock 接口时,自动生成符合 REST 规范的 mock 数据。 触发条件:用户提到 mock、假数据、接口模拟。

它会在~/.claude/skills/或.claude/skills/下生成目录,里面有一个SKILL.md,结构大致是:

--- name: api-mock-helper description: 当用户需要 mock 接口数据、假数据或接口模拟时使用,生成符合 REST 规范的 mock 响应。 --- # API Mock Helper ## 使用场景 - 前端联调时后端接口未就绪 - 单元测试需要固定返回数据 ## 示例 - 生成用户列表 mock - 生成分页响应 mock ## 规范 - 字段命名用 camelCase - 分页统一用 page/pageSize/total

生成后再次运行/skills,应该能看到api-mock-helper。然后在对话里说「帮我 mock 一个用户列表接口」,观察它是否触发这个 Skill。触发成功的话,输出会明显带上你定义的规范。

5. 本篇常见错排查

Skill 不加载:九成是目录层级错了。正确结构是~/.claude/skills/skill-creator/SKILL.md,不是~/.claude/skills/SKILL.md。每个 Skill 一个独立文件夹,文件夹名和 frontmatter 里的name最好一致。

frontmatter 解析失败:---必须是文件第一行,前后不能有空行或空格。name和description是必填,description要写清楚「做什么 + 什么时候用」,否则模型不知道何时触发。

模型请求 401/403:先echo $TAOTOKEN_API_KEY看环境变量有没有值,再看settings.json里的 Key 有没有多余空格。Key 复制时容易带上换行。

生成内容为空或截断:把max_tokens调大,或者把timeout从 60 提到 120。生成 Skill 的输出通常比普通对话长。

项目级和用户级冲突:同名 Skill 同时存在于~/.claude/skills和.claude/skills时,优先删掉一个。排查时先只保留项目级,确认能加载后再决定要不要放用户级。

插件市场装完看不到:装完必须重启终端,/skills才会重新扫描。不重启的话列表是旧的。

6. 后续怎么用这套链路

把skill-creator装好、TaoToken 通道配好之后,批量生成 Skill 就变成了一件可重复的事:描述需求 → 生成骨架 → 检查 frontmatter → 放进对应目录 →/skills确认 → 对话触发验证。团队里可以约定所有 Skill 都走这个流程,description 的写法统一,后面维护成本会低很多。

如果你后面要长期跑编码任务或者做 Agent 编排,可以看 Coding Plan https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding-plan&utm_campaign=rewrite ,它更适合持续性的编码场景。Key 管理统一在 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 。Claude Code 相关的接入说明在 ClaudeCodeAnthropic https://taotoken.net/claude-code-anthropic?utm_source=taotoken_aicg_blog_end&utm_content=claude-code-anthropic&utm_campaign=rewrite 。

最后留一个我踩过的坑:生成完 Skill 别急着写第二个,先把第一个在真实对话里触发三次,确认 description 的触发边界是对的。description 写太宽,什么话题都触发;写太窄,该触发时不触发。这个只能靠实测调,没有捷径。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询