本文从底层原理角度探讨了 Agent Skills 的工作机制。首先介绍了 ReAct Agent 模式,强调其结合大语言模型推理与行动执行的核心思想,以及 LLM 能力演进带来的效果提升。接着,以 Claude Code 为例,展示了其基于 ReAct 模式并侧重文件系统和 Shell 命令的特点。文章重点分析了上下文管理的重要性,特别是 Context Offloading 策略,解释了如何通过文件系统存储信息以减轻 LLM 上下文负担。最后,介绍了 Skills 的三层加载技术(元数据、指令、资源)及代码执行、虚拟机等关键技术,帮助读者深入理解 Agent Skills 并为其未来演进方向提供展望。

ReAct Agent

现代 Agent 都是基于ReAct[2]模式构建的。ReAct 的核心思想是将大语言模型的推理能力(Reasoning)与行动执行(Acting)相结合,使 Agent 能够反复思考问题、使用工具,并根据观察结果采取行动,从而实现用户目标。

早期采用 ReAct 模式的 Agent,效果并不理想。随着 LLM 能力的持续演进,特别是函数调用(Function Calling[3])的引入,ReAct 模式的效果得到了显著改善,使得 Agent 能够更可靠且高效地完成任务。

以天气查询为例,从上下文(Context)的角度来看,ReAct Agent 的运行过程大致如下:

System: You are a helpful weather assistant.
User: What is the weather like in Chengdu?
Assistant: ToolCall(name="get_weather", args={"location": "Chengdu"})
User: ToolOutput(result={"weather": "Sunny", "temperature": "22°C"})
Assistant: The weather in Chengdu is Sunny with a temperature of 22°C.

Claude Code

作为一个现代 Agent 系统,Claude Code 也遵循了 ReAct 模式。我们在揭秘 Claude Code:自主式编程[4]中介绍过它的核心架构:

Claude Code自主式编程架构

可以看出,Claude Code 与常规 Agent(如天气查询助手)最大的不同之处在于:它工作在操作系统之上,几乎所有的工具都是围绕文件系统和 Shell 命令展开的!

以“查看文件并创建一个 Hello World 函数”为例,Claude Code 运行过程中的 Context 大致如下:

System: You are Claude Code, Anthropic's official CLI for Claude.
User: What files are there?
Assistant: ToolCall(name="Bash", args={"command": "ls"})
User: ToolOutput(result="[README.md]")
Assistant: There is only one file named README.md.
User: Create a hello world function in Python.
Assistant: ToolCall(name="Write", args={"file_path": "hello_world.py", "content": "def hello_world():\n    print('Hello, World!')\n\nif __name__ == '__main__':\n    hello_world()"})
User: ToolOutput(result="Created `hello_world.py` with a simple hello world function.")
Assistant: I've created a simple Python file with a "Hello, World!" function.

上下文管理

有了对 ReAct Agent 和 Claude Code 的基本认识,我们再来讨论一个关键话题——上下文管理。

了解大语言模型的读者可能知道,LLM 的上下文有两个重要特征:

  1. 上下文窗口大小限制:LLM 的上下文窗口大小是有限的(早期 GPT 3 仅有 2048 个 token),虽然这个大小在持续增长(比如最新 Claude Sonnet 4.5 已支持百万 token),但仍然是有上限的。
  2. 上下文过载导致性能下降:即使最先进的 LLM 支持长上下文(如百万 token),但如果上下文内容过多,其性能也会显著下降。除了经典的Lost in the Middle[5],还会出现上下文污染(Context Poisoning)、上下文混淆(Context Confusion)等各种问题。感兴趣的读者可以进一步参考How Long Contexts Fail[6]。

因此,如何有效地管理上下文,成为了 Agent 设计中的一个重要课题。常见的上下文管理策略包括检索增强(RAG)、上下文总结(Context Summarization)、上下文隔离(Context Quarantine)和上下文卸载(Context Offloading)等。本文的讨论重点关注 Context Offloading。

关于 Context Offloading,How to Fix Your Context[7]一文给出了以下定义:

上下文卸载(Context Offloading)是指将信息存到 LLM 的上下文之外,通常借助能管理数据的工具来实现。

而该文引用的 Anthropic 原文The think tool[8]中,则这样指出:

这个“think”工具特别适合用在那些仅凭用户提问、Claude 信息不够没法直接回答的情况,还有那些需要处理外部信息(比如工具返回的结果)的场景。比起深度思考那种全面推演,Claude 用“think”工具做的推理会更聚焦,主要围绕模型刚发现的新信息展开。

在 Claude Code 中实现 Context Offloading

上述关于 Context Offloading 的描述稍显抽象。为了便于理解,我们来设想一个问题:如果要让 Claude Code 支持 Context Offloading,应该如何实现?

结合前文的讨论,我们知道 Claude Code 的能力基本建立在文件系统和 Shell 命令之上。因此,要实现 Context Offloading,从第一性原理出发,我们能够很自然地想到以下方案:

  1. 将信息存储在文件系统,而不是一开始就全部放到 LLM 的上下文中;
  2. 为了让 LLM 知道这些信息的存在,需要在 LLM 的上下文中(通常在系统提示词中)记录这些信息的位置;
  3. 用户提问信息不全时,Agent 可以根据系统提示词的引导,按需从文件系统寻找信息;
  4. 寻找信息的过程,需要借助文件读写和 Shell 命令等工具;
  5. 将获取到的外部信息加载到 LLM 的上下文中,以辅助完成用户的目标。

以“生成博客前端页面”为例,为了不把所有的设计指南都塞到 LLM 的上下文中,可以将其保存到resources/frontend-design.md文件中:

# Frontend Aesthetics Guidelines

Focus on:

**Typography**: Choose fonts that are beautiful, unique, and interesting...

**Color & Theme**: Commit to a cohesive aesthetic...

...

同时,在 Agent 的系统提示词中添加对这个文件的引用:

You are Claude Code...

You have access to the following resources:
- `resources/frontend-design.md`: Guidelines for designing the frontend UI.

...

如此一来,Agent 只会在用户请求生成前端页面时,才会去额外读取resources/frontend-design.md文件中的内容,从而避免了不必要的上下文膨胀。具体来说,运行过程中的 Context 可能会是这样的:

System: You are Claude Code...\n\nYou have access to the following resources:\n- `resources/frontend-design.md`: Guidelines for designing the frontend UI.
User: Generate a blog frontend UI.
Assistant: ToolCall(name="Read", args={"file_path": "resources/fontend-design.md"})
User: ToolOutput(result="Choose fonts that are beautiful, unique, and interesting...")
Assistant: ToolCall(name="Write", args={"file_path": "app/index.html", "content": "<html><head><style>...</style></head><body>...</body></html>"})
User: ToolOutput(result="Created file `app/index.html`.")
Assistant: ToolCall(name="Write", args={"file_path": "app/styles.css", "content": "..."})
User: ToolOutput(result="Created file `app/styles.css`.")
Assistant: I've generated a simple blog frontend UI based on the guidelines.

讨论到这里,使用过 Skills 的读者可能发现了,如果把上述例子中的resources/重命名为skills/,那么frontend-design.md本质上就是一个 Skill(参考anthropics/skills/frontend-design/SKILL.md[9])。

Skills 的三层加载技术

至此我们可以看出,Skills 的核心思想,其实也遵循了 Context Offloading 的上下文管理策略。当然,上述例子只是最基础的实现。

Agent Skills架构

在 Anthropic 的设计中,又巧妙地引入了 Skills 的三层加载技术,以求最大化减少 LLM 上下文的负担:

  1. 元数据(Metadata):可用 Skills 的名称、描述及其文件路径。这些信息会被预先放到上下文(系统提示词)中,以确保 Agent 知道有哪些 Skills 可以利用。
  2. 指令(Instructions):每个 Skill 都有一个对应的SKILL.md文件,其中包含了 Skill 的详细描述、使用方法和示例等信息。当 Agent 需要某个 Skill 的帮助时,它会通过Read工具读取SKILL.mds 文件的内容,进而将其动态加载到上下文中。
  3. 资源(Resources):除了SKILL.md文件,每个 Skill 还可以包含其他类型的资源文件,如配置文件、文档等。当 Agent 需要更具体的信息时,它会进一步读取这些资源文件的内容,从而将其加载到上下文中。

代码执行与虚拟机

除了前文讨论的内容,需要强调的是,Skills 的完整能力还涉及代码执行和虚拟机:

  • 代码执行(Code Execution):某些 Skills 可能包含代码片段,甚至 Agent 为了处理任务还会动态生成代码,这些代码都需要执行。
  • 虚拟机(Virtual Machine):为了确保安全性,通常需要在一个隔离的沙盒环境(虚拟机)中管理文件系统、执行 Shell 命令和运行代码。

Agent Skills架构

由于篇幅所限,这里不再展开详细讨论,感兴趣的读者可以参考官方文档[10]或者其他相关资料。

结语

通过本文的探讨,相信读者对 Agent Skills 有了更深入的理解。在 Claude Agent 产品中,Skills 的实现基于 Context Offloading 这一上下文管理策略;而该策略的落地,则依托于 ReAct 模式的思想框架,以及文件系统、Shell 命令等基础工具的支撑。

此外,代码执行和虚拟机也是非常重要的话题,本文限于篇幅只做了简要提及。实际上,它们不仅是 Skills 的关键技术,也代表着 Agent 未来的主流演进方向。

最后

对于正在迷茫择业、想转行提升,或是刚入门的程序员、编程小白来说,有一个问题几乎人人都在问:未来10年,什么领域的职业发展潜力最大?

答案只有一个:人工智能(尤其是大模型方向)

当下,人工智能行业正处于爆发式增长期,其中大模型相关岗位更是供不应求,薪资待遇直接拉满——字节跳动作为AI领域的头部玩家,给硕士毕业的优质AI人才(含大模型相关方向)开出的月基础工资高达5万—6万元;即便是非“人才计划”的普通应聘者,月基础工资也能稳定在4万元左右

再看阿里、腾讯两大互联网大厂,非“人才计划”的AI相关岗位应聘者,月基础工资也约有3万元,远超其他行业同资历岗位的薪资水平,对于程序员、小白来说,无疑是绝佳的转型和提升赛道。
图片
图片
对于想入局大模型、抢占未来10年行业红利的程序员和小白来说,现在正是最好的学习时机:行业缺口大、大厂需求旺、薪资天花板高,只要找准学习方向,稳步提升技能,就能轻松摆脱“低薪困境”,抓住AI时代的职业机遇。

如果你还不知道从何开始,我自己整理一套全网最全最细的大模型零基础教程,我也是一路自学走过来的,很清楚小白前期学习的痛楚,你要是没有方向还没有好的资源,根本学不到东西!

下面是我整理的大模型学习资源,希望能帮到你。

图片

👇👇扫码免费领取全部内容👇👇

在这里插入图片描述

最后

1、大模型学习路线

img

2、从0到进阶大模型学习视频教程

从入门到进阶这里都有,跟着老师学习事半功倍。

在这里插入图片描述

3、 入门必看大模型学习书籍&文档.pdf(书面上的技术书籍确实太多了,这些是我精选出来的,还有很多不在图里)

在这里插入图片描述

4、 AI大模型最新行业报告

2026最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

img

5、面试试题/经验

img

【大厂 AI 岗位面经分享(107 道)】

img

【AI 大模型面试真题(102 道)】

img

【LLMs 面试真题(97 道)】

img

6、大模型项目实战&配套源码

img

适用人群

在这里插入图片描述

四阶段学习规划(共90天,可落地执行)
第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型

  • 带你了解全球大模型

  • 使用国产大模型服务

  • 搭建 OpenAI 代理

  • 热身:基于阿里云 PAI 部署 Stable Diffusion

  • 在本地计算机运行大模型

  • 大模型的私有化部署

  • 基于 vLLM 部署大模型

  • 案例:如何优雅地在阿里云私有部署开源大模型

  • 部署一套开源 LLM 项目

  • 内容安全

  • 互联网信息服务算法备案

  • 👇👇扫码免费领取全部内容👇👇

    在这里插入图片描述

3、这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
在这里插入图片描述
在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐