当前位置: 首页 » AI » Claude Skill 到底解决了哪些上下文痛点?一份来自实战的拆解
claude skills

Claude Skill 到底解决了哪些上下文痛点?一份来自实战的拆解

背景

开一段新的 Claude 会话,贴上几百字的品牌指南,再附上最新的活动资料和 tone of voice,希望它按套路给你写一篇推文。可是写着写着,Claude 还是把“我们 7 点直播”说成了“今晚 8 点”、把“走心口吻”写成 PPT 腔。为了纠错,你只好在下一轮输入里再贴一次那份文档——结果上下文窗口被塞满,回复也越来越慢。再加上一些同事喜欢引用旧版模版,整组人讨论同一个话题时,AI 输出的语气完全对不上,有的像广告语,有的像写会议纪要。

对刚接触 AI 的同事来说,这就是他们对“上下文”的第一印象:要么一次性塞太多,要么来回复读,既费精力又不稳定。 而当你让他们“多写点提示”时,他们又会担心:到底要写到多细、写错了 Claude 会不会更迷糊?于是大家陷入了“越写越多 → 模型越糊涂 → 再多写一点”的无用循环。

传统 system prompt 为什么越写越累

  1. 复制粘贴负担:
    • 每次开新会话都得贴一遍流程/风格/注意事项。
    • 稍微更新一下 SOP,又得人肉同步到所有提示模版。
    • 新人加入团队时,第一件事不是学习产品,而是学习“这一段提示在 Word 文档第几页”。效率被提示管理吞噬。
  2. Token 成本高:
    • 一份 2000 字的说明文,马上吃掉整段对话的 20%-30% 预算。
    • 需要引用别的资料时,系统提示占位反而挤掉了真正要处理的数据。
    • 对免费用户或限额账号来说,token 直接等于钱,把流程文档塞进去就像提前烧掉预算。
  3. 容易跑偏:
    • 长提示里塞了太多“必须”“请务必”,模型处理起来反而更容易忽略。
    • 多人协作时,大家 copy 的版本可能不同,输出风格就参差不齐。
    • 提示越长你越难发现“哪个句子导致了误解”,这也是为什么很多人调 prompt 调到崩溃。

总结一句:我们缺的不是更长的提示,而是“写一次就能反复调用”的机制。这也是 Claude Skill 想解决的问题。

换句话说,Claude Skills 不是教你写更复杂的 prompt,而是帮你把“该写的提示”搬到另一个更可靠的位置:写成技能包,交由 Claude 自己决定何时读取。对初学者来说,这意味着你能把有限的精力放在“告诉 Claude 你想做什么”,而不是“告诉 Claude 你是谁”。

Claude Skill 怎么做到“想用时再加载”

1. 技能包 = 入职手册 + 工具箱

官方文档把 Skills 解释成“文件系统里的资源包”。它由三部分组成:

  • Level 1:YAML 前言(元数据)
    --- name: pdf-processing
    description: Extract text and tables from PDF files...
    ---
    这段描述会在你打开 Claude 时就常驻在系统提示里,每个技能只占几十个 token。Claude 只知道“有这个技能,遇到 PDF 就可以用”。
  • Level 2:SKILL.md 主体 一旦你提到“PDF”或“表单”,Claude 就会读取技能内的说明。比如官方 PDF Skill 会告诉它:“先用 pdfplumber 抽文本,再用 fill_form.py 填字段”。这部分只有触发时才加载,所以不会一直占用上下文。你也可以在这里写更细的操作指导,比如“先确认用户是否提供了模板”“处理完记得导出为 CSV”,这些指令会在触发时一起加载,Claude 可以照着流程逐步执行。
  • Level 3:资源与脚本 技能包里还能放 FORMS.md 这类进阶说明、甚至 Python/JS 脚本。Claude 会在 VM 里运行这些脚本。脚本本身不用塞进上下文,只需要执行结果,这就让“重复性的操作”变得稳定又省 token。

2. Progressive disclosure 带来的三个好处

  • 不怕装太多技能:你可以同时安装十几个技能,它们不会互相挤掉上下文。只有命中才会真正加载内容。
  • Claude 自主选择:你不用手动切换,用戶一提“帮我把这个 PDF 里的表填好”,Claude 就会在思考区显示“Reading pdf-processing”。
  • 指令 + 代码双保险:对于“必须执行得很准”的操作,可以直接写成脚本交给 Claude 运行,避免模型凭语言拼运算。

很多用户第一次体验到“Claude 自动打开另一个 Markdown 或执行脚本”时会有点惊讶:原来我们一直想让 AI 做的“标准操作”,可以通过文件系统 + 脚本更稳地实现。这也是为什么 Skills 需要 Claude Code 那套具备 bash / Python 执行的环境,模型不再只靠“生成文字”来凑答案。

总结:Skills 的核心并不是“新的提示语法”,而是一种把知识、流程、脚本封装在 Claude 身边的方式,只有需要时才展开。

官方技能与社区实践带来的启发

案例 1:官方 PDF Skill(来源:Claude Docs)

  • 任务:抽取 PDF 文本、读取表单字段、自动填表。
  • 流程:
    1. YAML 告诉 Claude “遇到 PDF、表单、文档合并时可以使用”。
    2. 当你上传 PDF 并提问时,Claude 触发 SKILL.md,读到 “用 pdfplumber 打开,再运行 scripts/fill_form.py”。
    3. Claude 在 VM 里执行脚本,把结果返回给你。整个过程不用你手动解释“那段脚本放哪儿”。
  • 对入门者的意义:哪怕你现在不会写脚本,仍然可以先体验“按需触发”流程,理解 Skill 的工作方式。 此外,观察 Claude 在思考区提示“Reading pdf-processing”也很重要,它会让你知道“模型正在参考哪个技能”。以后调试技能时,你就能更快定位问题:是 YAML 描述不准确,还是某个脚本抛错。

案例 2:一周内诞生的 80+ 子代理(来源:Tyler Folkman Substack)

  • 背景:Claude Skills 与 Claude Code Plugins 同期上线,开发者们把现有的 SOP、模板、脚本整理成技能包,在 GitHub 上打包分享。
  • 亮点:
    • 把“品牌内容 + PPT + ROI 计算”拆成三个技能,让 Claude 自动组合。
    • Junior 员工只要会调用技能,就能复用前辈的工作流程。
    • Simon Willison 甚至说 Skills “可能比 MCP 更重要”,因为它更像把“团队入职手册”装进 Claude。
  • 启发:即使手头只有零碎文档,也可以先写成 SKILL.md,再慢慢补脚本。重点是让每个技能描述清晰、触发准确。

Tyler 还提到一个细节:很多团队都是先写“最痛”的技能,比如“我们品牌的推文怎么写”“客户成功给用户回邮件怎么写”。这些场景高度重复,一旦做成技能包,就能立刻把“需要解释 10 分钟的任务”变成“Claude 自动读手册”。对刚接触 AI 的同事来说,这是最直观的生产力跃迁。

新手现在就能做的 3 件事

  1. 先试官方技能
    • 打开 Claude 网页端,输入 “请用 PDF Skill 帮我抽取这份报告的关键表格”。
    • 观察 Claude 思考区出现的 “Reading pdf-processing”,体会它是如何自动加载的。
    • 同理再试一个 Excel Skill 或 Word Skill,感受同一份描述如何跨任务复用。
  2. 把你的 SOP 写成 SKILL.md 草稿
    • 模板:
      ---
      name: brand-copy-starter
      description: Use when the user提到品牌稿 or 公众号推文。
      ---
      # 品牌文案流程
      - 语气:xxxx
      - 禁止出现的词:xxxx
      - 输出格式:xxxx
    • 先写指令,不懂脚本没关系。之后再慢慢补“常见素材”或“参考链接”。
  3. 练习一个“小脚本”
    • 例如写一个 sort_leads.py,用来把 CSV 里的潜客按照活跃度排序。
    • 放进技能包的 scripts/ 目录。Claude 调用它时,你能得到每次都一致的排序结果,避免“模型口算”带来的偏差。
    • 先写简单脚本没关系,哪怕只是把 JSON 转成 Markdown 表格,只要能节约你一遍遍复制粘贴的时间,就值得放进技能里。

5 分钟完成一个 Claude Skill 示例

如果你想要更具体的「我到底要放哪些文件」示范,可以按照下面这套流程在 Claude Code 工作区里动手:

  1. 创建技能目录Claude Code 默认会在工作区根目录下寻找 skills/ 文件夹。我们新建一个名叫 brand-copy-starter 的技能:
    mkdir -p skills/brand-copy-starter/scripts
  2. 编写 SKILL.md(内含 YAML 前言)把下面的完整示例保存到 skills/brand-copy-starter/SKILL.md。YAML 前言就是技能的“身份证”,主体则写清流程。
    --- name: brand-copy-starter
    description: Use when the user提到品牌稿件、公众号推文或品牌语气,输出时需要保持走心口吻。
    ---
    # 品牌推文流程
    ## 快速检查
    1. 先确认用户是否提供了 campaign 信息,如果没有,用 `campaign.md` 的模板回问。
    2. 检查输入里是否包含时间或价格,禁止擅自改写。

    ## 写作步骤
    - 语气:生活化、对话式,可以使用 emoji 但不超过 2 个。
    - 结构:
    1. 引子:用户痛点 + 当下场景
    2. 正文:产品亮点(控制在 3 点以内)
    3. 结尾:行动号召 + 截止时间

    ## 输出格式
    - 保持 150-180 字;
    - 末尾加 `—— 来自 Brand Team`;
    - 如引用价格,必须复述用户输入的原始数字。

    ## 常见禁止项
    - 禁止使用“极致”“前所未有”这类夸张词;
    - 禁止把直播/活动时间改写成别的时段;
    - 如果输入里没有提供数据,就不要杜撰。

  3. (可选)加入脚本或模板想要自动化一些小动作,可以在 scripts/ 放 Python 或 JS 文件。例如 scripts/tone_check.py 可以校验输出是否包含禁用词,Claude 会在需要时运行它。
  4. 目录长什么样?
    skills/
    └── brand-copy-starter/
    ├── SKILL.md
    ├── scripts/
    │ └── tone_check.py
    └── resources/
    └── campaign.md
  5. 在 Claude 中加载技能
    • 打开 Claude Code,添加上述 skills/ 目录;
    • 重新启动会话,输入「请按照品牌推文流程帮我写一篇关于新品的预热文案」;
    • Claude 会在思考区显示 “Reading brand-copy-starter”,并按照 SKILL.md 里的步骤输出。

这个示例可以直接复制后替换为你自己的 SOP。重点是:YAML 前言写清触发条件,SKILL.md 描述流程与禁止项,scripts/resources 用来补充可复用的代码与模版。

Skill vs MCP/插件,怎么选?

需求优先使用 Skill考虑 MCP / 插件
高频、固定流程✅ 把 SOP、模板写入 SKILL.md,一次写好反复用可能不需要
需要实时数据/API❌ 技能包主要是本地资源,无法主动调接口✅ 通过 MCP 连接数据库、CRM 等
在 IDE 里跑流水线✅ Claude Code Plugins 可以控制编辑器、终端
团队共享知识✅ 技能像“团队 onboarding 套件”✅ 也可用 MCP 做工具级协作

借用 Tyler 的建议:先把“高频且容易出错”的流程封成 Skill,其他需要实时连接的再写 MCP 或插件。这样 Claude 既能按 SOP 行事,也能调用外部工具。

构建技能时最容易踩的坑

  • 描述太泛 → 误触发:
    • 解决:在 YAML 里写清“什么时候不用”或“仅当用户文件类型=PDF 时触发”。
  • 脚本没测试 → Claude 执行失败:
    • 解决:本地跑一遍示例输入,用 README 记录运行方式。
  • 版本混乱 → 团队不知道谁更新过:
    • 解决:在 SKILL.md 底部加 ## 更新记录,注明日期、改动内容。
  • 分享渠道有限:
    • 目前还没官方 Skill Store,只能用 GitHub/压缩包。记得附加 LICENSE、使用说明,避免敏感脚本泄露。
    • 也意味着你分享技能之前要做权限审查:里面有没有硬编码的密钥?脚本会不会删除文件?这一步比写技能更重要。

结语:让 Claude 变成真正的队友

如果说传统 System Prompt 是“把说明书塞给 Claude”,那 Skills 则是“把说明书装进 Claude 的脑子,但只在需要时展开”。

对 AI 新手而言,这省掉了无数次复制粘贴,也让团队有机会把真正的流程固化下来:

  • 一次写好:YAML + SKILL.md 变成你的“入职手册”。
  • 想用就用:Claude 自动匹配技能,输出不再跑偏。
  • 持续演进:随着你补充脚本、资料,一个技能就能沉淀一个岗位的经验。

把技能越写越好,也是在为未来的“技能商店”做准备。一旦官方推出更完善的分发渠道,你的 Skill 就能像组件一样被更多团队使用。现在就把 SOP、模板、脚本整理好,等到 Skill Store 开放时,你就是第一批能上线“Claude 专属小程序”的人。

现在就挑一个你最常交给 Claude 的任务,把它写进第一个技能包。下一次有人抱怨“AI 不听话”时,你就能直接把技能丢给他,而不是再打一次长长的 system prompt。

滚动至顶部