1. 为什么你的 Claude Skills 总在 56% 成功率上卡死
如果你正在用 Claude Code 写 Skills,大概率遇到过这种场景:一个 landing page copy Skill,跑十次有四次输出全是 "revolutionary"、"synergy" 这类空话,另外六次勉强能看,但 headline 永远模糊、CTA 弱得像 "点这里了解更多"。你以为是提示词写得不够细,于是反复手改,改完再跑,跑完再改,一天下来成功率还是原地打转。
问题不在提示词本身,而在于你缺少一个自动试错 + 闭环反馈的 Harness。Karpathy 在机器学习领域提出的 autoresearch 方法,核心就一句话:让 AI 自己小步试错、自动评分、保留有效变化,形成闭环迭代。把它移植到 Claude Code 的 Skills 场景里,你的 Skill 就从"一次性菜谱"变成了"会自己进化的生命体"。
我实测下来,一个初始成功率 56% 的 landing page Skill,跑 4 轮 autoresearch 后直接冲到 92%,全程只提供了 5 个 yes/no 检查清单,剩下的分析、改提示词、回滚、保存全由 Agent 自己完成。这篇文章交付的是可复制的 settings.json 骨架、CC Switch 配置和逐步验证指令,你可以直接在本地复现整个优化过程。
适合谁:已经在用 Claude Code 写 Skills、但被"成功率一半一半"折磨的开发者;想把重复 prompt 升级成自动进化系统的 Agent 玩家;以及任何需要可量化质量反馈的 prompt 工程场景。
2. TaoToken 前置:把 Claude Code 的请求链路先跑通
在跑 autoresearch 之前,得先确保 Claude Code 的模型请求是通的。我用的方案是通过 TaoToken 接入,官网入口在 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 端点是 https://taotoken.net/api (这个地址不加 UTM 参数,直接配到环境变量里)。
为什么先做这一步?因为 autoresearch 的迭代循环会高频调用模型——每轮要跑 10 次测试输入、分析失败项、生成改动、再验证。如果请求链路不稳定,迭代到第 3 轮就可能因为超时或限流中断,整个闭环就断了。所以先把接入层配好,再谈 Skill 进化。
你需要准备的东西:
- 一个 TaoToken 账号,在控制台生成 API Key(入口: https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= )
- Claude Code 已安装并能正常启动
- 一个你想优化的 Skill 文件(比如
landing-page-copy.skill.md) - 一个测试输入集(比如"给一个 AI 生产力工具写落地页文案")
API Key 的生成路径是:登录后进控制台 → API Keys 页面 → 新建 Key → 复制保存。这个 Key 后面要写进 Claude Code 的 settings.json,不要提交到 Git。
注意:API Key 只在创建时完整显示一次,关掉页面就看不到了。建议生成后立刻存到本地密码管理器或
.env文件里,并加进.gitignore。
如果你还没配过 Claude Code 的模型接入,可以先看接入文档: https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 。文档里有环境变量和配置文件的完整说明,跟着走一遍就能跑通。
3. 可复制配置:settings.json 骨架 + CC Switch 配置
这一步是整个 autoresearch 流程的地基。配置写对了,后面 Agent 才能自动跑循环;配置写错了,你会卡在"请求发不出去"或者"Skill 加载不了"这种低级问题上。
3.1 settings.json 骨架
Claude Code 的配置文件通常在~/.claude/settings.json(macOS/Linux)或%USERPROFILE%\.claude\settings.json(Windows)。下面是我实测可用的骨架,把YOUR_TAOTOKEN_API_KEY替换成你刚才生成的 Key:
{ "env": { "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_API_KEY": "YOUR_TAOTOKEN_API_KEY", "ANTHROPIC_MODEL": "claude-sonnet-4-20250514" }, "skills": { "directory": "~/.claude/skills", "autoresearch": { "enabled": true, "maxRounds": 50, "testRunsPerRound": 10, "earlyStopThreshold": 0.95, "earlyStopConsecutive": 3, "checklistSize": { "min": 3, "max": 6 }, "rollbackOnDrop": true, "saveChangelog": true, "backupOriginal": true } }, "permissions": { "allowFileWrite": true, "allowShellCommand": false } }几个关键参数解释一下:
maxRounds设 50 是上限,实际跑起来通常 4-8 轮就收敛了。testRunsPerRound设 10 是因为单轮样本太少会导致评分波动大,10 次能算出相对稳定的通过率。earlyStopThreshold和earlyStopConsecutive配合使用——连续 3 轮达到 95% 以上才停,避免某一轮偶然高分就误判收敛。rollbackOnDrop必须开,这是 autoresearch 的灵魂:分数跌了就回滚,防止局部优化伤害整体。
checklistSize限制在 3-6 个,这是甜蜜点。少于 3 个评分维度太粗,Agent 找不到改进方向;多于 6 个 Agent 会"死记硬背"清单,反而变蠢——它会为了满足某一条而牺牲整体质量。
3.2 CC Switch 配置
CC Switch 是用来在多个 Claude Code 配置之间切换的工具。如果你同时有官方 API 和 TaoToken 两套配置,用 CC Switch 可以一键切换,不用手动改 settings.json。
安装后,在 CC Switch 的配置目录里新建一个 profile 文件,比如taotoken-autoresearch.json:
{ "name": "taotoken-autoresearch", "settingsPath": "~/.claude/settings.json", "env": { "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_API_KEY": "YOUR_TAOTOKEN_API_KEY" }, "skillsDir": "~/.claude/skills", "notes": "用于 autoresearch 迭代循环,高频调用场景" }切换命令:
cc-switch use taotoken-autoresearch切换后验证当前生效的配置:
cc-switch current输出应该显示taotoken-autoresearch和对应的 base URL。如果显示的还是旧配置,检查 profile 文件路径是否正确,或者重启一下终端。
3.3 autoresearch Skill 文件放置
把 autoresearch Skill 文件放到~/.claude/skills/autoresearch.skill.md。这个 Skill 的核心逻辑是:读取目标 Skill → 读取 checklist → 跑测试 → 算通过率 → 分析失败项 → 生成改动 → 再跑测试 → 对比分数 → 保留或回滚。
Skill 文件里最关键的一段是循环控制逻辑,用伪代码表示大概是这样:
## Autoresearch Loop 1. Load target skill and checklist 2. Run baseline: execute skill N times, score each output against checklist 3. Calculate baseline pass rate 4. Loop until maxRounds or early stop: a. Analyze failed checklist items b. Generate one small modification to the skill c. Run N test executions with modified skill d. Calculate new pass rate e. If new > old: keep modification, log changelog f. If new <= old: rollback, log failed attempt g. Check early stop condition 5. Save new skill version (original untouched) 6. Output full changelog这段逻辑不复杂,但它是整个自动进化的引擎。你不需要自己写代码实现,Claude Code 会按 Skill 里的指令执行。
4. 验证请求:从 56% 到 92% 的逐步复现指令
配置写完,接下来是实际跑一遍。我会把每一步的指令和预期结果都列出来,你照着敲就行。
4.1 第一步:确认 Skill 加载成功
启动 Claude Code,输入:
列出当前加载的所有 skills预期输出里应该包含autoresearch和你的目标 Skill(比如landing-page-copy)。如果没看到,检查~/.claude/skills/目录下文件是否存在,以及 settings.json 里的skills.directory路径是否正确。
4.2 第二步:准备 checklist
新建一个文件~/.claude/skills/landing-page-copy.checklist.md,内容如下:
# Landing Page Copy Checklist 1. Headline 里有没有具体数字或结果? 2. 有没有用 buzzwords(revolutionary、synergy、cutting-edge 等)? 3. CTA 是否用了具体动词短语? 4. 开头第一句有没有戳中具体痛点? 5. 总字数是否控制在 150 字以内?这 5 个问题全部是 yes/no 形式。注意第 2 题是反向的——"有没有用 buzzwords",yes 表示失败。Agent 会自动处理这种反向计分。
为什么不用"整体质量打 1-10 分"?因为主观评分每次都不一样,同一段文案你今天打 7 分明天打 5 分,Agent 根本不知道往哪个方向改。yes/no 清单把模糊的"感觉不错"变成了可量化的数据,每一次改动都有明确方向。
4.3 第三步:启动 autoresearch
在 Claude Code 里输入:
对 landing-page-copy skill 跑 autoresearch,checklist 用 landing-page-copy.checklist.md,测试输入是"给一个 AI 生产力工具写落地页文案"Agent 会先跑 baseline,输出类似:
Baseline pass rate: 56% Failed items breakdown: - Item 1 (具体数字): 2/10 pass - Item 2 (buzzwords): 4/10 pass - Item 3 (CTA 动词): 6/10 pass - Item 4 (痛点开头): 7/10 pass - Item 5 (字数): 9/10 pass这个 breakdown 很关键——它告诉你到底哪里最烂。我那次是 Item 1 和 Item 2 拖后腿,headline 没数字、buzzword 满天飞。
4.4 第四步:观察迭代循环
Agent 进入循环后,每轮会输出:
Round 1: 56% -> 68% (kept: added rule "Headline must contain a specific number or result") Round 2: 68% -> 79% (kept: added banned words list) Round 3: 79% -> 85% (kept: added high-quality example) Round 4: 85% -> 92% (kept: refined CTA instruction) Round 5: 92% -> 89% (rolled back: tightened word count hurt headline quality) Round 6: 92% -> 93% (kept: minor tone adjustment) Early stop: 3 consecutive rounds >= 95%? No, continuing...注意第 5 轮——Agent 试过把字数压得更紧,结果分数反而掉,立刻回滚。这就是rollbackOnDrop的价值:它会自己发现"局部优化伤害整体"的陷阱,不需要你盯着。
4.5 第五步:查看最终产物
迭代结束后,Agent 会输出:
- 新版 Skill 文件(单独保存,原版不动)
- 完整迭代日志(每轮分数 + 改动原因)
- changelog(解释为什么每个改动有效)
- 原版备份路径
changelog 是最值钱的东西。以后模型升级了,你把 changelog 扔给新模型,它直接接上上一代的进化路径,不用从零开始。
4.6 第六步:验证新 Skill
用新 Skill 跑一次实际任务:
用新版 landing-page-copy skill 写一段落地页文案,产品是 AI 会议纪要工具检查输出是否满足 checklist 全部 5 项。我那次的结果是 headline 带了"节省 80% 会议记录时间"这种具体数字,buzzword 一个没有,CTA 是"免费试用 14 天",开头第一句直接戳"开完会还要花 1 小时整理纪要"的痛点。
5. 本篇常见错排查
跑 autoresearch 的过程中,我踩过几个坑,这里列出来帮你省时间。
5.1 Skill 加载失败:路径和权限问题
报错Skill not found: autoresearch。检查三件事:文件是否真的在~/.claude/skills/下;文件名是否以.skill.md结尾;settings.json 里skills.directory的路径是否用了绝对路径。Windows 上~有时不展开,建议写成C:/Users/你的用户名/.claude/skills。
5.2 请求 401:API Key 没生效
报错401 Unauthorized。先确认 settings.json 里的ANTHROPIC_API_KEY是不是完整的 Key,有没有多余空格。然后用 curl 直接测一下:
curl -X POST https://taotoken.net/api/v1/messages \ -H "x-api-key: YOUR_TAOTOKEN_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "content-type: application/json" \ -d '{"model":"claude-sonnet-4-20250514","max_tokens":100,"messages":[{"role":"user","content":"ping"}]}'如果 curl 通了但 Claude Code 不通,说明是 Claude Code 的配置读取问题,检查 CC Switch 当前 profile 是否指向了正确的 settings.json。
5.3 迭代不收敛:分数来回震荡
如果分数在 70%-80% 之间来回跳,通常是 checklist 有问题。检查两点:有没有模糊项(比如"文案是否吸引人"这种主观题);checklist 项数是否超过 6 个。把模糊项改成 yes/no,把项数压到 3-6 个,再跑一次。
5.4 回滚太频繁:改动幅度太大
如果每轮都回滚,说明 Agent 每次改动的幅度太大,一步跨太远导致分数暴跌。在 Skill 文件里加一条约束:"每次只修改一个规则或添加一个示例,不要同时改多处"。小步试错才是 autoresearch 的精髓。
5.5 测试输入太单一:过拟合
如果只用一条测试输入,Agent 会把 Skill 优化成只对这条输入有效。建议准备 5-10 条不同场景的测试输入,比如"AI 生产力工具"、"B2B SaaS"、"消费级 App"各来几条。这样进化出来的 Skill 泛化能力更强。
6. 把 autoresearch 用到更多场景
这套方法不只适用于 landing page copy。任何可测量的重复 prompt 都能加上进化引擎。
网站加载速度优化:checklist 是"首屏时间 < 500ms?""LCP < 2.5s?""CLS < 0.1?",Agent 改一个配置测一次,保留有效变化。有人用这个方法把加载时间从 1100ms 干到 67ms。
冷启动邮件:checklist 是"提到对方公司名?""字数 < 75?""结尾问具体问题?",自动迭代 50 轮。
Newsletter 开头:checklist 是"有没有个人细节?""有没有陈词滥调?",自动变强。
核心逻辑是一样的:只要能打分,就能进化。你提供的 checklist 就是 Agent 的"北极星",它把模糊的"感觉不错"变成了可量化的数据,让每一次改动都有明确方向。
如果你想把 autoresearch 用在长期编码或 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/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= )。
现在就去挑你最烂的那个 Skill,跑一次 autoresearch。回来你会发现,AI 已经帮你把最烦人的地方全修好了。