
解剖小龙虾:AI Agent 的运作原理
让我们来看看李宏毅教授最新一期AI Agent分享课程讲了什么!
00 引言:一、OpenClaw是什么?为什么叫"龙虾"?你最近在养龙虾吗?
如果听到有人说「最近在养龙虾」,别误会——他十有八九是在自己的电脑上跑了一个叫 OpenClaw 的 AI Agent,24 小时不间断地替他干活。
它最特别的地方在于:可以通过 WhatsApp、Telegram、Discord 等通讯软件跟你聊天。
很多大模型都有APP,这点好像没啥稀奇?错! 真正稀奇的是——它真的会动手 。
今天我们就来「解剖」这只小龙虾,看看 AI Agent ,究竟藏着什么。
🦞 OpenClaw 是一个典型的 AI Agent 框架。它不是 AI 本身,而是连接「你」与「大语言模型」之间的那只智能的爪子。
01 传统 AI 与 AI Agent:动口 vs 动手
同样一条指令:
「你叫小金,帮我创建一个 YouTube 频道,每天中午提供影片构想,我通过后开始制作,做完给我审核,我说可以才上传。」
两种 AI 的反应,差距却天壤之别:
| 传统语言模型 | AI Agent(OpenClaw) | |
|---|---|---|
| 设计频道名称 | ✅ | ✅ |
| 撰写频道简介 | ✅ | ✅ |
| 规划内容策略 | ✅ | ✅ |
| 每天提供影片构想 | ✅ | ✅ |
| 真实创建 YouTube 频道 | ❌ | ✅ |
| 上传 AI 生成的头像 | ❌ | ✅ |
| 自主制作影片并配音 | ❌ | ✅ |
| 通过审核后自动上传 | ❌ | ✅ |
核心差异 :传统 AI 只动口不动手;AI Agent 能真正执行任务,而人类只需要下达指令与审核。
💡 AI Agent 只能操控这台电脑的一切,但物理世界仍然无法触碰。
02 三角关系:人、OpenClaw、大语言模型
OpenClaw 并不是 AI,它是 AI Agent 中「非 AI 的那个部分」。真正的智能来自背后连接的大语言模型。
人(用户端) OpenClaw(你的电脑) 大语言模型(云端)───────────── ────────────────── ─────────────────WhatsApp 记忆系统 ClaudeTelegram ──► 任务管理系统 ──► GPTDiscord ◄── 电脑操控能力 ◄── GeminiWeb UI 工具调用框架 本地模型飞书 / QQ
💡 你的龙虾有多聪明,取决于它背后连接的语言模型有多强大。OpenClaw 本身只是那个「爪子」,真正在思考的是语言模型。
03 AI Agent 如何知道自己是谁?
每次用户发送消息,OpenClaw 并不只是把这条消息转发给语言模型,而是在前面附上一大段 System Prompt ,告诉语言模型「我是谁」「我能做什么」「我该怎么做」。
System Prompt 里包含什么?
| 文件 | 内容 |
|---|---|
SOUL.md | 身份、个性、人生目标 |
IDENTITY.md | 角色定义 |
USER.md | 用户偏好与习惯 |
MEMORY.md | 记忆入口与检索方式 |
| 工具说明 | 有哪些工具可以调用 |
AGENTS.md | 行为规范与边界 |
| Skill 目录 | 可调用的技能列表 |
仅仅问了一个简单的问题,语言模型那端实际接收到的可能超过 4000 个 Token 。这就是 AI Agent 每次都知道自己是谁的秘密。
由于语言模型本身没有记忆,OpenClaw 采用的方式是:每次对话都将 System Prompt + 所有历史记录 + 当前问题,打包发给语言模型。虽然每次都像「重新开始」,但历史全部附带,从效果上实现了持续记忆。
04 AI Agent 如何操控你的电脑?
语言模型本质上只做一件事:文字接龙 。给它一段未完成的句子,它预测下一个 Token 应该是什么。但 OpenClaw 把这个能力转化成了对电脑的实际控制。
完整工具调用流程 (以「读取 question.txt,答案写入 ans.txt」为例):
-
发送指令 :用户消息 + System Prompt → 语言模型
-
模型决策 :语言模型回传 tool_use: read("question.txt")
-
龙虾执行 :OpenClaw 在电脑上真实执行该工具,读取文件内容
-
结果反馈 :文件内容 + 历史记录 → 再次发给语言模型
-
模型决策 :回传 tool_use: write("ans.txt", "答案内容")
-
任务完成 :OpenClaw 执行写入操作,通知用户
OpenClaw 最强大也最危险的工具是 exec ——它可以执行 任何 Shell 指令。输出文字指令本是语言模型最擅长的事,这也意味着它能轻松写出 rm -rf * 。
可能的防御方式:
-
语言模型层面 :在 MEMORY.md 中写入限制规则(取决于模型遵循指令的可靠性)
-
OpenClaw 层面 :开启「每次工具调用都需人工 Approve」的安全模式
⚠️ AI Agent 还可以自己创建新工具,甚至通过特殊工具 Subagent (sessions spawn) 召唤子 Agent。
05 Skill、子 Agent 与上下文工程
Skill(技能) 就是工作的 SOP——一个描述「怎么做这件事」的 Markdown 文档,放到指定目录即可被 Agent 调用。
人 → AI Agent(搜寻指定资料夹,看看有没有 SKILL.md) ↓ 语言模型 → tool_use: read(SKILL.md) ↓ 按需读取,执行任务
Skill 是按需读取的 ,而非全量塞进上下文——这是 Context Engineering(上下文工程) 的核心技巧之一。
当 Agent 遇到复杂任务时,还可以召唤 Sub-Agent(子 Agent) :主 Agent 的上下文窗口只看到摘要与执行结果,不包含子 Agent 的完整中间过程,极大节省了上下文空间。
常见的上下文管理策略:
-
Pruning :删除不重要的历史片段
-
Soft Trim :压缩、摘要旧记录
-
Hard Clear :开启新 Session,重新开始
⚠️ 注意网络上的恶意 Skill——不明来源的 Skill 文件可能包含提示注入攻击,甚至引导下载病毒文件等。
06 记忆、心跳机制与长期自主工作
跨会话记忆
| 记忆类型 | 实现方式 |
|---|---|
| 近期记忆(1-2天) | 直接写入 System Prompt |
| 更久远的记忆 | MEMORY.md + memory/*.md + memory_search工具(RAG检索) |
| 重要内容 | system prompt提示将重要内容存入本地 Markdown 文档(Daily notes / Long-term) |

心跳机制(Heartbeat)
OpenClaw 内置了「心跳」机制:每隔固定时间触发一次,执行例行任务——早报、日报、提醒、定期检查。HEARTBEAT.md 中的内容甚至可以不需要非常明确,Agent 会自行判断该做什么。

结合 Cron Job 系统 ,Agent 还能学会「等待」——到指定时间才触发行动,真正实现定时自主工作。
长期运行的上下文压缩
当上下文积累过长时,自动将旧记录 + 「请摘要这些记录」 → 语言模型生成摘要,用摘要替换原始历史,持续循环,使 Agent 永不「撑爆」上下文。

07 语言模型的本质:文字接龙
一切看起来神奇的背后,语言模型真正做的只有一件事:
给一段未完成的句子,预测下一个 Token 是什么。

将问题本身当作「未完成的句子」,不断预测、追加、循环,直到输出终止符——这就是我们看到的「回答」。
从人输入一个 Prompt,到模型不断生成 Token 并将其追加回输入,直至输出结束符,这整串 Token 合在一起,就是语言模型的 Response(回应) 。
每个模型都有 Context Window(上下文窗口) 上限,输入越长,模型接龙时越容易失准——这也是为什么 Context Engineering 如此重要。
结语
AI 现在只是缺一个物理上的身体。
AI Agent 带来了强大的力量,也带来了尚不成熟的想法。如何在「充分授权」与「保持安全」之间找到平衡,是我们这个时代真正需要思考的问题。
Claude Code 与 OpenClaw 大同小异,最大的区别在于:OpenClaw 通过即时通讯软件,让你可以在任何地方发出指令,而你的龙虾永远在那台电脑上等候。
参考
相关文章
AI Agent 之间的互动
与其训练一个更大更聪明的单一模型,不如让多个模型一起解决同一个问题。从多智能体协作到狼人杀博弈,再到 AI 独立写论文,探索 AI Agent 互动的前沿研究。
手机遥控 Claude Code 写代码?这个开源神器让我彻底解放双手
发现一个宝藏开源项目 Happy Coder,把 Claude Code / Codex 接入手机端,端对端加密,随时随地动动手指让 AI 干活。
Context Engineering:让 AI Agent 活得更久、更聪明的那把钥匙
语言模型的上下文窗口是有限的,但我们希望 Agent 能活得久、能记住事、还能越做越聪明。Context Engineering 就是那把钥匙。