OpenClaw LLM-Context 全解析

2026年4月5日

83

341

OpenClaw LLM-Context 全解析

当你在AI Agent中输入“帮我查一下这个bug”时,你以为模型收到的就是这句话?远不止。它收到的是一整套精心组装的上下文:系统指令、历史对话、你的消息(外加一堆看不见的元数据前缀)、图片、以及几十个可调用工具的结构化定义。理解LLM-Context的工作机制,是掌握Agent原理的钥匙。

systemPromptText:系统指令的22个秘密

基于OpenClaw源码分析,一次典型的LLM调用可以理解为五大核心组件的组合:systemPromptText(系统指令)、activeSession.messages(历史对话)、effectivePrompt(当前输入)、prompt-local images(当前图片)、tools/tool schemas(工具定义)。这五部分在请求中各自占据独立位置,共同构成模型这一轮“看到的世界”。

effectivePrompt:被层层包裹的当前输入

当前轮的图片不是嵌入在文本中,而是作为独立数据块传给模型。图片来源有三种:内联附件(existing images)、落盘后引用的大附件(offloaded attachments)、正文中的本地路径引用(prompt ref images)。关键在于顺序:当上游指定imageOrder时,模型看到的图片顺序与用户发送顺序完全一致;无imageOrder时则按inline优先、再offloaded的规则排列。举例来说,用户依次发送小图A、大图B、小图C,无imageOrder时模型看到的是A、C、B;有imageOrder时才是A、B、C。图片在传输前还会经过大小限制、像素缩放、沙箱路径校验等清洗。

LLM-Context之于Agent,就像PCB之于OS,是你理解Agent的钥匙。

“技术观察”

prompt-local images:图片的独立处理与顺序玄机

群聊vs私聊:群聊时模型会收到“你在Slack群聊release-war-room中,参与者Alice、Bob、BuildBot”的额外上下文,并被设置为仅触发模式(仅在被@时回复);私聊则没有这些信息。子agent的世界观与主会话隔离,有独立的session history。定时任务(heartbeat)走特化路径:system prompt中包含heartbeat专用section、bootstrap加载退化为lightweight模式(只保留HEARTBEAT.md)、模型配置也可单独指定。

特殊场景的差异化处理

理解LLM-Context的组成机制,对于调试Agent行为、优化prompt设计、解决上下文丢失问题至关重要。当你掌握了这些底层逻辑,就能更精准地控制Agent“看到什么”和“怎么理解”。

如有侵权,请联系删除。

Related Articles

联系我们 预约演示
小墨 AI