Article Share

从泄露源码里抠出的 12 个 Skill:每个都不到 5KB,但都是顶级范本

越顶级的规则字数越少——这才是写 Skill 的真功夫

发布于 9 分钟阅读
目录
阅读模式

问这篇文章

只基于本文回答

一句话总结:越顶级的 Skill,字数越少——12 个文件没有一个超过 5KB,但每一个都精确控制了模型的一类行为。


开场

Claude Code 源码泄露之后,社区都在拆它的 Runtime、压缩梯子、Tool 协议。但还有一层东西更接地气、更能直接抄回家用——Skill

Skill 是 Anthropic 给模型写的”行为铁路”:不是写死的 system prompt,而是按需激活的、负责约束某一类具体动作的小规则集。源码里一共抠出 12 个,加起来不到 60KB。

很多人一看到”提示词模板”,第一反应是越长越好、越细越好。结果就是动辄 20KB、30KB 的 mega-prompt,模型注意力被稀释,规则形同虚设。Claude Code 的做法恰好相反:每个 Skill 都被压到极限的精炼,靠”少而准”赢过”多而散”

那么这 12 个 Skill 到底各管什么?怎么按场景挑?哪些可以直接照抄?


金字塔总览


一、为什么 12 个 Skill 都不到 5KB

先把这一点说清楚——它不是巧合,是设计取向

大模型有注意力机制。规则文件越长,模型越读越散,前面读完后面忘了,最后哪条都没贯彻。所以顶级 Skill 不是”把所有规则写全”,而是把规则压到模型一眼能扫完的程度

Skill 大小与质量的关系,大致是这样:

大小形态模型行为
< 2KB单一规则 + 几条反例几乎 100% 命中
2~5KB一类行为 + 触发场景 + 反例高命中,仍可控
5~10KB多类混杂注意力开始分散
> 10KBmega-prompt形同虚设

金句:好的规则像铁路,决定的不是方向,而是速度——是火车还是动车,全看铁路修得有多准。

12 个 Skill 全部落在前两档。下面按”调度、反思、护栏、节流”四类拆开。


二、调度类:让模型知道”谁该干这件事”

这一类 Skill 解决的是任务分发:一个请求进来,到底是该自己干、找子 Agent 干,还是先规划再干。

2.1 代码探索 Agent

核心规则:遇到陌生代码库的问题,先做侦察、不做修改——读、grep、glob、跟随调用链,把上下文摸清楚再发结论。

典型场景:用户说”这个 bug 在哪里”、“这块逻辑怎么实现的”。模型最容易犯的错是直接给一段看似合理的代码,但其实没读过仓库。这个 Skill 把”先侦察”写成硬规则。

抄家精髓:规则里只有几条——禁止写入、禁止猜测、必须列出引用过的文件路径。不到 2KB。

2.2 规划 Agent

核心规则:复杂任务先出计划再动手,计划里必须有可验证的中间产物。

典型场景:用户说”重构这个模块”、“加一个新功能”。如果不强制规划,模型会直接 dive into 写代码,到一半发现方向错了,沉没成本巨大。

抄家精髓:把”先写 plan.md,再按步执行,每步完成打勾”写进规则。重点不在格式而在强制中断——计划没出来之前不许调用 file_edit。

2.3 子 Agent 编排

核心规则:什么时候开 sub-agent,什么时候在主链里继续。默认不开,只有上下文压力大或者任务可以并行时才开。

典型场景:批量读文件、跑多个独立检索。如果主 Agent 自己读 20 个文件,主链 transcript 会被工具产物撑爆。开一个 sub-agent,让它读完只返回摘要,主链就轻了。

抄家精髓:明确写出”开 sub-agent 的三种条件”——任务可并行、输出量大、需要隔离失败半径。不满足条件就不开。

金句:调度类 Skill 不是教模型”怎么做”,而是教模型”先停下来,想清楚谁来做”。


三、反思类:把”差不多”和”幻觉”按死

这一类是 12 个 Skill 里最有创意的。它们不解决”怎么做对”,而是解决”怎么不让模型给自己找借口”。

3.1 反向假设

核心规则:当模型自己心里冒出”看起来没问题”、“测试应该过了”、“应该可以”这种模糊词时——立刻去做相反的事,主动找反例。

典型场景:写完代码后模型说”我觉得这个改动应该 OK”。这个”应该”就是触发器,Skill 立刻要求它构造一个失败用例去打破自己的假设。

抄家精髓:规则只有两段——列出”危险词清单”(“应该、大概、差不多、看起来、似乎”),列出”触发后必做动作”(写反例、跑测试、对比 diff)。

3.2 不准乱来

核心规则:禁止四件事——加没要求的功能、过度封装、瞎重构、假装测试。

典型场景:用户只是说”改一下 X 函数的返回值”,模型一兴奋顺手把整个文件重构了。或者用户说”加一个测试”,模型写了一个 expect(true).toBe(true) 凑数。

抄家精髓:每条禁令配一个典型违规样本。模型对”反例”的敏感度远高于”正面规范”。

3.3 诚实汇报

核心规则:禁止说”已经完成”,除非有可验证的产物。允许说”我尝试了 A、失败原因是 B、下一步建议 C”。

典型场景:长任务跑到一半因为某个工具失败,模型最常见的反应是美化失败——“已经基本完成,剩下一点小问题”。这个 Skill 强制它直说”卡在哪、为什么卡”。

抄家精髓:规则里写明三种合法汇报格式——成功 + 证据、失败 + 原因、部分完成 + 边界。其他一律不算。

金句:反思类 Skill 的本质是给模型装一个”自我反讽器”,让它发现自己开始打模糊牌时,主动出手把自己拽回来。


四、护栏类:让”能跑 shell 的 Agent”也敢交给普通人

这一类是和 Runtime 安全管线配套的——Skill 负责模型层的克制,Runtime 负责执行层的拦截,两层叠在一起才是完整的安全策略。

4.1 权限分级

核心规则:每一个工具动作必须自己声明”风险级别”——只读、本地写、外网请求、shell 执行——不同级别走不同审批路径。

典型场景:模型决定跑一条 rm -rf 之前,必须把它标成最高风险等级,触发权限弹窗,而不是直接调用。

抄家精髓:风险级别只分三档,别多——绿(直接做)、黄(提示后做)、红(必须问)。三档已经够覆盖 90% 场景。

4.2 命令安检

核心规则:所有 shell 命令进入执行前要过 14 道关卡——危险关键字、路径白名单、参数解析、目录边界等等。

典型场景:用户输入 npm test,看着无害,但参数里如果带了 --prepare-script 之类的钩子,可能间接拉起任意命令。Skill 不直接信任命令字符串,而是先做语义解析。

抄家精髓:抄不动 14 道关卡的全部,但可以抄第一关——把命令字符串解析成 token,禁止 token 里出现 `; && || $( “。光这一条就拦掉 80% 的注入。

4.3 文件改动保护

核心规则:禁止改动一类特殊文件——.claude/、Skill 自身目录、权限配置文件。模型不能改自己的规则

典型场景:一个被注入了 prompt injection 的 issue,让模型修改 .claude/settings.json 来扩大权限。如果没有这条 Skill,模型可能真的会做。

抄家精髓:维护一个”禁写目录清单”,每次 file_edit 之前先比对路径前缀。一行 if 的事,但能堵掉一整类供应链风险。

金句:护栏不是堵在出口,而是写进每一个动作的协议里。模型不是”想做坏事时被拦”,而是”压根不知道有这条路”。


五、节流类:把 token 当资源管

Claude Code 的价格在所有大模型里算是最贵的之一。Anthropic 自己在源码里也写了大量的”节流 Skill”——这些规则可以直接照搬到任何调 API 的场景里。

5.1 上下文压缩

核心规则:每轮 API 请求前先尝试轻量压缩——把陈旧的工具输出折叠成一行摘要,再去算占用。占用没超阈值就别动主链。

典型场景:跑了 30 轮后 context 占用 80%。如果直接整体 compact 一次,要单独请求一次模型、再重建 attachment,成本极高。先尝试 micro-compact,能省下来就省。

抄家精髓:把压缩做成”阶梯”——能用 1KB 解决就别用 5KB,能截断就别摘要,能摘要就别整体重写。

5.2 缓存友好

核心规则:prompt 的前缀部分保持稳定——身份、规则、工具清单放最前面、不要变;当前日期、git 状态等会变的内容放后面。

典型场景:换模型、换会话最容易破坏缓存。源码里发现 Claude Code 明确告诉用户”别瞎换模型”,因为每换一次就是一次缓存重建。

抄家精髓:自己写系统提示词的时候,按”几乎不变 / 偶尔变 / 每次变”三段排序。光这一招就能把缓存命中率从 30% 拉到 70%+。

5.3 子任务复用

核心规则:sub-agent 的输出默认进会话级缓存。下次同样的子查询,先查缓存再决定要不要重新跑。

典型场景:用户两次问”这个文件依赖了哪些模块”。如果不复用,就要重新读文件、重新分析。Skill 让 sub-agent 的产出成为可被命中的缓存条目。

抄家精髓:给 sub-agent 的输入生成稳定 hash,把输出按 hash 存起来。这一招在 RAG 系统里也直接适用。

金句:节流类 Skill 的核心思想是把 token 当资源管——不是事后省,而是从 prompt 排序就开始省。


六、怎么用这 12 个 Skill

这 12 个 Skill 不是让你照搬全部,而是给你一个对照清单——你现在写的提示词模板,对应到这 12 类,哪几类是缺的?

  • 你的模板里有没有反思类?没有的话,你的模型一定会给自己找借口。
  • 你的模板里调度类是不是太重?任务还没拆,规则已经塞了 20 条,模型读不动。
  • 你的模板里节流类怎么排序?稳定前缀有没有放在最前?

更重要的一点——把现有的 mega-prompt 切片。一个 20KB 的模板拆成 8 个 2KB 的 Skill,按需激活,比塞成一坨好得多。这是源码里最值得直接迁移的工程动作。


一页速览

类别Skill一句话核心抄家精髓
调度代码探索先侦察再修改禁止写入 + 必列引用
调度规划复杂任务必须先出计划强制中断,plan 之前不动手
调度子 Agent 编排默认不开,三个条件触发并行 / 输出量大 / 隔离
反思反向假设出现模糊词立刻找反例列危险词清单
反思不准乱来不加、不封、不重、不假四条禁令配反例
反思诚实汇报没产物不准说完成三种合法汇报格式
护栏权限分级三档够用绿黄红
护栏命令安检解析 token,禁危险符一行 if 拦 80%
护栏文件改动保护模型不能改自己的规则禁写目录清单
节流上下文压缩阶梯式压缩能截断就别摘要
节流缓存友好稳定前缀不变三段排序
节流子任务复用sub-agent 输出进缓存输入 hash

一句话收束

顶级 Skill 的真功夫不在写多,而在写准——12 个 Skill 加起来不到 60KB,但它们把 Claude Code 的所有模型行为都钉在了铁路上。

引用卡片

带走这篇文章的核心观点

可引用观点

《从泄露源码里抠出的 12 个 Skill:每个都不到 5KB,但都是顶级范本》

核心结论:Claude Code 源码意外泄露后,作者从里面剥离出 12 个内建 Skill,全部加起来不到 60KB,平均每个不到 5KB。它们不是花哨的提示词模板,而是被 Anthropic 反复打磨过的"规则铁路"。这篇文章把 12 个 Skill 按"调度、反思、护栏、节流"四类摊开,给出每个的核心规则、典型场景、可直接照抄的精简范式。

  1. 1 一、为什么 12 个 Skill 都不到 5KB
  2. 2 二、调度类:让模型知道”谁该干这件事”
  3. 3 三、反思类:把”差不多”和”幻觉”按死

适合转发到飞书、微信、即刻或笔记工具;引用时建议保留作者 kele 与原文链接。

分享这篇
从泄露源码里抠出的 12 个 Skill:每个都不到 5KB,但都是顶级范本 分享卡片

微信暂不支持网页直接分享——复制链接后到对话里粘贴即可。链接在微信中预览会带上面的卡片缩略图。

相关文章