欢迎光临
我们一直在努力

Claude Skill底层逻辑:渐进式、分层加载机制全解析

很多开发者在用Claude Code时,都会陷入一个简单的认知误区:Skill只是打包整理后的Markdown提示词,把业务规则直接写进System Prompt和搭建Skill没有本质区别。

实际落地多套业务技能后就能发现,一次性把几十份领域手册全部灌入上下文,会快速消耗token额度,大量无关文本稀释有效信息,模型经常忽略关键业务规范。

Anthropic推出Skill体系真正的核心创新是渐进式分层加载,一套完整的上下文懒加载调度方案。

让我们抛开表层使用方法,拆解底层架构设计、分层机制、工程落地价值~


一、Skill基础结构:不只是纯文本,模块化业务资源包

Skill并不是一段简单文字,而是标准化目录资源包,所有配置、流程、工具脚本集中收纳,统一给Agent提供领域业务能力。

1. 标准目录模板

pdf-handle/
├── SKILL.md # 核心主配置文件(必填)
├── reference.md # 复杂业务补充说明
├── forms.md # 专项表单处理规范
└── scripts/ # 可执行业务脚本
└── fill_form.py

整个资源包无编译、无额外依赖,纯可读文本文件,开箱即用。

2. SKILL.md头部元数据(frontmatter)

文件最顶部用—包裹基础信息,是分层加载的核心索引,两个必填字段:


name: pdf-handle
description: 处理PDF读取、合并、表单填充,用户提及PDF相关操作时自动调用

# PDF处理完整流程

  • name:对应斜杠命令/pdf-handle,唯一标识技能;
  • description:技能用途描述,是模型匹配任务的核心依据;
    配套可选控制字段:allowed-tools限制可用工具、disable-model-invocation禁止AI自主调用。

通俗类比

Skill就像给新员工发放专属业务操作手册,不会修改员工本身的认知能力,只是把行业流程、操作规范整理成册。而直接塞入System Prompt,等同于把公司所有规章制度一次性全塞给员工,信息繁杂很难精准找到对应规则。

3. 5分钟搭建极简Skill示例

以代码评审规范为例,快速构建团队统一检查技能:

  • 创建目录:mkdir -p ~/.claude/skills/code-lint
  • 写入SKILL.md头部元数据与规则:

  • name: code-lint
    description: 代码规范评审,用户要求检查代码质量、规范时启用

    # 代码检查清单
    1. 变量必须具备业务语义,禁止a、tmp等无意义命名
    2. 魔法数字统一提取为常量
    3. 捕获异常必须打印日志,禁止静默吞异常

    保存后无需重启、编译,可直接通过/code-lint手动调用,AI识别代码评审需求也会自动启用。


    二、核心底层:渐进式披露三层懒加载机制

    这是Skill和普通提示词最本质的分界线,整套设计只为解决「多技能同时常驻,上下文超限」的痛点。

    第一层:常驻轻量化索引(全程占用上下文)

    Agent启动扫描全部Skill目录,仅提取每个技能的name+精简描述,生成极简清单存入系统上下文。

    源码硬性约束
    • 整套技能索引总token仅分配窗口1%额度;
    • 单条描述最大字符限制250,超出自动截断;
    • 官方内置Skill描述永久完整,第三方技能描述额度不足时优先删减。
      示例常驻清单:

    – code-lint:代码规范评审,用户要求检查代码质量、规范时启用
    – pdf-handle:处理PDF读取、合并、表单填充
    – commit-gen:根据代码变更生成规范提交注释

    全程只保留索引,几千字的业务手册正文完全不占用常驻空间。

    第二层:任务匹配后载入完整SKILL.md

    当AI识别当前任务和某条Skill描述匹配,会自动读取完整主文件内容,以元用户消息的形式插入本轮对话,不会修改全局System Prompt。

    关键工程优势:不改动系统提示词,不会破坏缓存机制,避免每轮重新计费。
    这条消息在终端界面不会展示给使用者,但模型能完整读取全部业务流程。

    第三层:按需调取附属资源

    SKILL.md正文只会写指引语句,复杂补充文档、脚本不会同步载入。只有流程走到对应环节,Agent才会读取reference.md、脚本文件,用完不会长期驻留上下文。

    收益直观对比

    假设项目内置50套业务技能,每套手册平均3000token:

    • 全量塞入System Prompt:总计150000token,直接占满200K窗口大部分空间;
    • 分层渐进加载:常驻索引仅2000token,仅当前用到的单套手册临时载入,token占用降低98%。

    #mermaid-svg-ucuSAtJQtFPCahOQ{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-ucuSAtJQtFPCahOQ .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-ucuSAtJQtFPCahOQ .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-ucuSAtJQtFPCahOQ .error-icon{fill:#552222;}#mermaid-svg-ucuSAtJQtFPCahOQ .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-ucuSAtJQtFPCahOQ .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-ucuSAtJQtFPCahOQ .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-ucuSAtJQtFPCahOQ .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-ucuSAtJQtFPCahOQ .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-ucuSAtJQtFPCahOQ .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-ucuSAtJQtFPCahOQ .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-ucuSAtJQtFPCahOQ .marker{fill:#333333;stroke:#333333;}#mermaid-svg-ucuSAtJQtFPCahOQ .marker.cross{stroke:#333333;}#mermaid-svg-ucuSAtJQtFPCahOQ svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-ucuSAtJQtFPCahOQ p{margin:0;}#mermaid-svg-ucuSAtJQtFPCahOQ .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-ucuSAtJQtFPCahOQ .cluster-label text{fill:#333;}#mermaid-svg-ucuSAtJQtFPCahOQ .cluster-label span{color:#333;}#mermaid-svg-ucuSAtJQtFPCahOQ .cluster-label span p{background-color:transparent;}#mermaid-svg-ucuSAtJQtFPCahOQ .label text,#mermaid-svg-ucuSAtJQtFPCahOQ span{fill:#333;color:#333;}#mermaid-svg-ucuSAtJQtFPCahOQ .node rect,#mermaid-svg-ucuSAtJQtFPCahOQ .node circle,#mermaid-svg-ucuSAtJQtFPCahOQ .node ellipse,#mermaid-svg-ucuSAtJQtFPCahOQ .node polygon,#mermaid-svg-ucuSAtJQtFPCahOQ .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-ucuSAtJQtFPCahOQ .rough-node .label text,#mermaid-svg-ucuSAtJQtFPCahOQ .node .label text,#mermaid-svg-ucuSAtJQtFPCahOQ .image-shape .label,#mermaid-svg-ucuSAtJQtFPCahOQ .icon-shape .label{text-anchor:middle;}#mermaid-svg-ucuSAtJQtFPCahOQ .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-ucuSAtJQtFPCahOQ .rough-node .label,#mermaid-svg-ucuSAtJQtFPCahOQ .node .label,#mermaid-svg-ucuSAtJQtFPCahOQ .image-shape .label,#mermaid-svg-ucuSAtJQtFPCahOQ .icon-shape .label{text-align:center;}#mermaid-svg-ucuSAtJQtFPCahOQ .node.clickable{cursor:pointer;}#mermaid-svg-ucuSAtJQtFPCahOQ .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-ucuSAtJQtFPCahOQ .arrowheadPath{fill:#333333;}#mermaid-svg-ucuSAtJQtFPCahOQ .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-ucuSAtJQtFPCahOQ .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-ucuSAtJQtFPCahOQ .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ucuSAtJQtFPCahOQ .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-ucuSAtJQtFPCahOQ .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ucuSAtJQtFPCahOQ .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-ucuSAtJQtFPCahOQ .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-ucuSAtJQtFPCahOQ .cluster text{fill:#333;}#mermaid-svg-ucuSAtJQtFPCahOQ .cluster span{color:#333;}#mermaid-svg-ucuSAtJQtFPCahOQ div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-ucuSAtJQtFPCahOQ .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-ucuSAtJQtFPCahOQ rect.text{fill:none;stroke-width:0;}#mermaid-svg-ucuSAtJQtFPCahOQ .icon-shape,#mermaid-svg-ucuSAtJQtFPCahOQ .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ucuSAtJQtFPCahOQ .icon-shape p,#mermaid-svg-ucuSAtJQtFPCahOQ .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-ucuSAtJQtFPCahOQ .icon-shape .label rect,#mermaid-svg-ucuSAtJQtFPCahOQ .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ucuSAtJQtFPCahOQ .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-ucuSAtJQtFPCahOQ .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-ucuSAtJQtFPCahOQ :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}

    Agent 启动扫描所有 Skill 目录

    提取每个 Skill 的 name + 精简描述

    生成常驻轻量索引(第一层)

    用户输入任务需求

    模型依据索引描述判断匹配

    匹配成功?

    以元用户消息载入完整 SKILL.md(第二层)

    业务执行中按需调取 reference.md / 脚本(第三层)

    结束

    三、技能自动匹配:不靠向量检索,依托原生文本理解

    很多人会猜测,系统会用Embedding做相似度检索匹配技能,实际Claude Code底层完全没有这套逻辑。

    完整匹配流程

  • 常驻技能清单完整放在每一轮上下文内;
  • 模型同时读取用户当前需求与所有技能描述;
  • 依靠原生文本阅读理解,判断需求和哪套技能匹配;
  • 内置强制规则:匹配成功必须调用对应Skill,禁止跳过直接生成答案。
  • #mermaid-svg-xPDlLwBH5P4q1kKQ{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-xPDlLwBH5P4q1kKQ .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-xPDlLwBH5P4q1kKQ .error-icon{fill:#552222;}#mermaid-svg-xPDlLwBH5P4q1kKQ .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-xPDlLwBH5P4q1kKQ .marker{fill:#333333;stroke:#333333;}#mermaid-svg-xPDlLwBH5P4q1kKQ .marker.cross{stroke:#333333;}#mermaid-svg-xPDlLwBH5P4q1kKQ svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-xPDlLwBH5P4q1kKQ p{margin:0;}#mermaid-svg-xPDlLwBH5P4q1kKQ .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-xPDlLwBH5P4q1kKQ .cluster-label text{fill:#333;}#mermaid-svg-xPDlLwBH5P4q1kKQ .cluster-label span{color:#333;}#mermaid-svg-xPDlLwBH5P4q1kKQ .cluster-label span p{background-color:transparent;}#mermaid-svg-xPDlLwBH5P4q1kKQ .label text,#mermaid-svg-xPDlLwBH5P4q1kKQ span{fill:#333;color:#333;}#mermaid-svg-xPDlLwBH5P4q1kKQ .node rect,#mermaid-svg-xPDlLwBH5P4q1kKQ .node circle,#mermaid-svg-xPDlLwBH5P4q1kKQ .node ellipse,#mermaid-svg-xPDlLwBH5P4q1kKQ .node polygon,#mermaid-svg-xPDlLwBH5P4q1kKQ .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-xPDlLwBH5P4q1kKQ .rough-node .label text,#mermaid-svg-xPDlLwBH5P4q1kKQ .node .label text,#mermaid-svg-xPDlLwBH5P4q1kKQ .image-shape .label,#mermaid-svg-xPDlLwBH5P4q1kKQ .icon-shape .label{text-anchor:middle;}#mermaid-svg-xPDlLwBH5P4q1kKQ .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-xPDlLwBH5P4q1kKQ .rough-node .label,#mermaid-svg-xPDlLwBH5P4q1kKQ .node .label,#mermaid-svg-xPDlLwBH5P4q1kKQ .image-shape .label,#mermaid-svg-xPDlLwBH5P4q1kKQ .icon-shape .label{text-align:center;}#mermaid-svg-xPDlLwBH5P4q1kKQ .node.clickable{cursor:pointer;}#mermaid-svg-xPDlLwBH5P4q1kKQ .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-xPDlLwBH5P4q1kKQ .arrowheadPath{fill:#333333;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-xPDlLwBH5P4q1kKQ .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-xPDlLwBH5P4q1kKQ .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-xPDlLwBH5P4q1kKQ .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-xPDlLwBH5P4q1kKQ .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-xPDlLwBH5P4q1kKQ .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-xPDlLwBH5P4q1kKQ .cluster text{fill:#333;}#mermaid-svg-xPDlLwBH5P4q1kKQ .cluster span{color:#333;}#mermaid-svg-xPDlLwBH5P4q1kKQ div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-xPDlLwBH5P4q1kKQ .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-xPDlLwBH5P4q1kKQ rect.text{fill:none;stroke-width:0;}#mermaid-svg-xPDlLwBH5P4q1kKQ .icon-shape,#mermaid-svg-xPDlLwBH5P4q1kKQ .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-xPDlLwBH5P4q1kKQ .icon-shape p,#mermaid-svg-xPDlLwBH5P4q1kKQ .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-xPDlLwBH5P4q1kKQ .icon-shape .label rect,#mermaid-svg-xPDlLwBH5P4q1kKQ .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-xPDlLwBH5P4q1kKQ .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-xPDlLwBH5P4q1kKQ .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-xPDlLwBH5P4q1kKQ :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}

    每一轮对话携带完整技能索引清单

    读取用户当前需求与所有技能描述

    依靠原生文本理解进行匹配判断

    匹配成功?

    必须调用对应 Skill,禁止跳过直接生成答案

    返回通用回答

    优缺点

    ✅ 优势:无需额外向量库、检索服务,降低系统维护复杂度,适配中小型技能库;
    ❌ 短板:项目内置上百套技能时,清单描述被大幅截断,匹配准确率会明显下滑。


    四、斜杠命令和Skill底层为同一套体系

    日常使用的/commit、/code-lint斜杠命令,并不是独立功能,和Skill共用同一套Command底层数据结构。

    双调用入口设计

  • 人工手动触发:输入/技能名,主动唤起对应业务流程;
  • AI自动触发:识别匹配需求,后台自动调用,使用者无感知。
  • 两大权限控制开关(写在SKILL头部元数据)

  • disable-model-invocation: true
    禁止AI自动调用,仅支持人工斜杠触发,适合上线发布、数据删除等高风险操作,避免模型自主执行高危动作。
  • user-invocable: false
    隐藏斜杠调用入口,使用者无法手动输入,仅作为后台知识库供AI读取,适合项目底层数据表、配置说明类技能。

  • 五、两大动态扩展能力:参数插值+本地脚本执行

    Skill不只是静态文字,支持动态内容注入,适配多变业务场景。

    1. 参数占位符 $ARGUMENTS

    斜杠调用时追加的参数,会自动填充进文档内$ARGUMENTS占位位置。
    示例调用:/code-lint UserService.java
    文档内待检测文件:$ARGUMENTS会自动替换为目标文件路径,省去手动复制文件的操作。

    2. 内嵌Shell脚本执行

    本地存放的Skill目录,文档中可嵌入`cat xxx.py`这类脚本指令,调用时自动执行脚本,拉取实时数据再传入上下文。

    安全隔离设计

    来自MCP远程服务的Skill,会直接禁用脚本执行逻辑,防止第三方恶意资源读取本地文件、执行危险指令,仅本地项目、用户目录内技能开放脚本能力。


    六、多渠道Skill加载与团队协作价值

    Agent启动会扫描五大来源的Skill目录,按固定顺序加载,同名技能后加载版本不会覆盖前者:

  • 官方内置:平台自带通用文档、代码技能;
  • 用户全局目录:~/.claude/skills/,本机所有项目通用;
  • 项目目录:项目内.claude/skills/,随代码仓库同步;
  • 插件配套:安装插件自带专属技能;
  • MCP远程服务:远程动态下发业务技能。
  • #mermaid-svg-C4mabgEM45NnF1Nx{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-C4mabgEM45NnF1Nx .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-C4mabgEM45NnF1Nx .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-C4mabgEM45NnF1Nx .error-icon{fill:#552222;}#mermaid-svg-C4mabgEM45NnF1Nx .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-C4mabgEM45NnF1Nx .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-C4mabgEM45NnF1Nx .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-C4mabgEM45NnF1Nx .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-C4mabgEM45NnF1Nx .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-C4mabgEM45NnF1Nx .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-C4mabgEM45NnF1Nx .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-C4mabgEM45NnF1Nx .marker{fill:#333333;stroke:#333333;}#mermaid-svg-C4mabgEM45NnF1Nx .marker.cross{stroke:#333333;}#mermaid-svg-C4mabgEM45NnF1Nx svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-C4mabgEM45NnF1Nx p{margin:0;}#mermaid-svg-C4mabgEM45NnF1Nx .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-C4mabgEM45NnF1Nx .cluster-label text{fill:#333;}#mermaid-svg-C4mabgEM45NnF1Nx .cluster-label span{color:#333;}#mermaid-svg-C4mabgEM45NnF1Nx .cluster-label span p{background-color:transparent;}#mermaid-svg-C4mabgEM45NnF1Nx .label text,#mermaid-svg-C4mabgEM45NnF1Nx span{fill:#333;color:#333;}#mermaid-svg-C4mabgEM45NnF1Nx .node rect,#mermaid-svg-C4mabgEM45NnF1Nx .node circle,#mermaid-svg-C4mabgEM45NnF1Nx .node ellipse,#mermaid-svg-C4mabgEM45NnF1Nx .node polygon,#mermaid-svg-C4mabgEM45NnF1Nx .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-C4mabgEM45NnF1Nx .rough-node .label text,#mermaid-svg-C4mabgEM45NnF1Nx .node .label text,#mermaid-svg-C4mabgEM45NnF1Nx .image-shape .label,#mermaid-svg-C4mabgEM45NnF1Nx .icon-shape .label{text-anchor:middle;}#mermaid-svg-C4mabgEM45NnF1Nx .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-C4mabgEM45NnF1Nx .rough-node .label,#mermaid-svg-C4mabgEM45NnF1Nx .node .label,#mermaid-svg-C4mabgEM45NnF1Nx .image-shape .label,#mermaid-svg-C4mabgEM45NnF1Nx .icon-shape .label{text-align:center;}#mermaid-svg-C4mabgEM45NnF1Nx .node.clickable{cursor:pointer;}#mermaid-svg-C4mabgEM45NnF1Nx .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-C4mabgEM45NnF1Nx .arrowheadPath{fill:#333333;}#mermaid-svg-C4mabgEM45NnF1Nx .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-C4mabgEM45NnF1Nx .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-C4mabgEM45NnF1Nx .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-C4mabgEM45NnF1Nx .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-C4mabgEM45NnF1Nx .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-C4mabgEM45NnF1Nx .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-C4mabgEM45NnF1Nx .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-C4mabgEM45NnF1Nx .cluster text{fill:#333;}#mermaid-svg-C4mabgEM45NnF1Nx .cluster span{color:#333;}#mermaid-svg-C4mabgEM45NnF1Nx div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-C4mabgEM45NnF1Nx .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-C4mabgEM45NnF1Nx rect.text{fill:none;stroke-width:0;}#mermaid-svg-C4mabgEM45NnF1Nx .icon-shape,#mermaid-svg-C4mabgEM45NnF1Nx .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-C4mabgEM45NnF1Nx .icon-shape p,#mermaid-svg-C4mabgEM45NnF1Nx .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-C4mabgEM45NnF1Nx .icon-shape .label rect,#mermaid-svg-C4mabgEM45NnF1Nx .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-C4mabgEM45NnF1Nx .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-C4mabgEM45NnF1Nx .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-C4mabgEM45NnF1Nx :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}

    Agent 启动

    1. 官方内置

    2. 用户全局目录 ~/.claude/skills/

    3. 项目目录 .claude/skills/

    4. 插件配套

    5. MCP 远程服务

    同名技能后加载不覆盖前者

    团队工程优势

    项目目录内Skill跟随Git仓库同步,新同事克隆代码后,自动获取全套评审、部署、报表生成规范,不用人工传递文档、反复复制提示词,沉淀可复用团队业务资产。


    七、落地最优实践,三条写Skill核心准则

  • 描述聚焦使用场景,严格控制250字符以内
    不要堆砌功能介绍,优先写「用户什么场景会用到本技能」,提升AI自动匹配的准确率。
    差示例:本工具支持多种代码检查功能;
    优示例:用户要求评审代码、检查变量命名/异常处理规范时自动启用。

  • 主文档轻量化,复杂细节拆分附属文件
    SKILL.md只保留主干执行流程,表单、复杂计算、历史规则等长内容拆分到reference.md,减少第二层载入的token体积。

  • 重复固定操作封装脚本
    重复性文件读取、数据统计、格式转换直接写成脚本嵌入Skill,不用让AI每次重新推演步骤,大幅降低模型输出不稳定、逻辑出错概率。


  • 八、高频认知误区澄清

    误区1:Skill和System Prompt只是载体不同,效果一致

    错误。全量提示词常驻会持续占用大量上下文,分层Skill仅临时载入所需内容,长期会话token成本、模型识别准确率差距极大。

    误区2:内置技能数量越多,处理业务越精准

    错误,技能清单描述会被强制截断,技能过多会导致匹配逻辑失效,无关技能还会干扰模型判断。

    误区3:斜杠命令是独立功能,和Skill无关

    错误,两者底层共用Command架构,斜杠只是面向使用者的手动调用入口,核心逻辑完全依托Skill资源包。

    误区4:MCP远程Skill支持内嵌脚本执行

    错误,出于安全隔离设计,所有远程加载的技能会屏蔽Shell执行能力,仅本地目录文件可运行脚本。


    结尾总结

    Skill的核心竞争力从来不是把提示词分文件夹存放,而是渐进式分层加载这套上下文懒加载调度体系。
    它把常驻上下文占用压缩到极低水平,按需载入业务手册,解决多领域Agent长期会话上下文膨胀、信息稀释的核心痛点。

    对于团队开发场景,项目目录托管Skill还能把零散业务规范沉淀进代码仓库,替代反复复制、版本散乱的长提示词。


    赞(0)
    未经允许不得转载:171主机测评 » Claude Skill底层逻辑:渐进式、分层加载机制全解析
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址