Session 03

Context / Workspace

上下文不是聊天历史。对 agent 来说,context 包括系统规则、项目文件、workspace、session history、工具结果、技能说明、外部资料和用户偏好。

1. 训练目标

本页要练会:能解释三个项目如何把“当前任务需要知道的东西”放进模型输入,并区分 workspace、memory、session 和 instruction。

主要依据:Claude memory docs / OpenClaw context / OpenClaw workspace

2. 三项目对照

维度Claude CodeOpenClawHermes Agent
项目上下文CLAUDE.md、auto memory、repo 文件、IDE/terminal/session context。workspace files、AGENTS/SOUL/USER、history、tool results、attachments。context files、project files、memory files、tool outputs、provider context。
边界Claude Code 把 memory 当 context,不是硬权限;硬控制用 hooks/permissions。OpenClaw workspace 是 agent 的 home,私有且可被看作 memory。Hermes 把 terminal backend、memory provider 和 context files 组合进任务。
风险CLAUDE.md 过长或冲突、auto memory 误学、repo 上下文过载。workspace 泄露、channel 注入、skills/context 过量。长期文件记忆和外部 memory provider 污染。

3. 组件机制

机制解释
Instruction layer系统规则、项目规范、技能规则、用户当前请求之间有优先级和冲突处理。
Workspace layeragent 可读写的工作目录,不只是文件夹,也是持久上下文和权限边界。
Session layer当前对话的历史、工具结果和 routing state,服务本次任务连续性。
Context budget模型窗口有限,必须裁剪、摘要、检索或 pin 住关键状态。

4. 失败模式

失败模式为什么危险
上下文污染把不可信网页、工具输出或用户 prompt 当作系统规则。
上下文过载把所有历史和文件都塞入,导致模型忽略关键约束。
软规则误用把 CLAUDE.md / AGENTS.md 当强制权限系统,实际上模型仍可能偏离。

5. 架构练习

  1. 给一个 coding repo,列出哪些放 CLAUDE.md,哪些放 skill,哪些不该进 context。
  2. 解释 OpenClaw workspace 为什么要私有化。
  3. 设计一个 context packing 策略,避免工具结果污染下一步推理。

6. 知识展开

上面的卡片是索引,点击后跳到对应的详细解释。阅读时不要只记名词,要同时记住组件边界、为什么需要它、三个项目怎么体现,以及你能用什么问题自检。

Detailed Concepts

概念是什么为什么重要项目对照自检问题
Working context当前模型调用真正看见的输入窗口,包含指令、历史、检索片段、文件摘要和工具结果。working context 是短期推理材料,不应被当成长期记忆或权限配置。Claude Code 通过 repo/CLAUDE.md/工具结果进入;OpenClaw 文档拆分 context;Hermes 结合 files、memory 和工具输出。能否把当前任务必须看见的信息列成优先级?
Workspace isolation不同 agent 或不同任务拥有隔离工作区,避免文件、状态和凭据互相污染。多 agent 和高风险工具必须靠隔离降低副作用。OpenClaw 的 per-agent workspace/agentDir 是典型样本;Claude Code 通常依赖当前 repo;Hermes 依赖本地 backend 和配置边界。如果两个 agent 同时改文件,冲突怎么发现?
Context retrieval按任务需要从文件、搜索、记忆、历史或外部系统取上下文。召回太少会漏事实,召回太多会稀释注意力并引入污染。Claude Code 更贴近代码库检索;OpenClaw 强调 attachments/files/tool results;Hermes 可接 memory provider 和文件工具。是否有 relevance、source、freshness 和权限过滤?
Instruction layering系统规则、项目规则、用户任务、技能说明和工具约束的层级关系。层级不清会导致用户提示覆盖安全规则,或项目规则被普通上下文稀释。Claude Code 的 CLAUDE.md/skills/hooks 体现分层;OpenClaw 有 bootstrap/context;Hermes 有 configuration 和 custom instructions。哪些规则靠提示表达,哪些必须靠代码强制?
Workspace artifacts任务过程中产生的文件、日志、截图、报告、patch、测试结果等中间产物。artifact 是 agent 可复盘和可交付的证据,不只是临时文件。三类系统都需要 artifact 管理,只是 Claude Code 更偏代码变更,OpenClaw 偏 session/workspace,Hermes 偏本地 automation。产物是否有来源、版本和清理策略?