LAYER 01 · 建立全局直觉

一张地图看懂六个平面

把 49 个 package 家族压缩成可推理的职责地图,而不是记包名

14 min3 处源码锚点upstream@47f9438
组合 → 主干 → 能力 → 控制 → 事实 → 表面
本章要解决的问题

面对数千个源码文件,怎样判断一个新行为应该放在哪个层?

先建立直觉

读一座城市不从背街道名开始,而是先看分区:规划局决定组合,交通主干推动流转,公共设施提供能力,法规控制风险,档案馆保存事实,窗口把服务交给人。

MECHANISM

机制拆解

组合平面决定插件树;Agent 主干认领输入并推进 Turn;能力平面提供 LLM、FS、Shell、Subagent 等 seam;控制平面通过事件、guard、审批和沙箱约束执行。

事实平面以 SessionEvent 为真源;表面平面只负责协议适配与投影,不拥有另一套 Agent 逻辑。

第 1 步 / 共 6 步

组合产品

Profile、Bundle、Patch 生成运行树。

INVARIANTS

无论怎么扩展,都不能破坏

  • 表面不是业务真源
  • 能力 seam 必须同时说明定义、提供者和消费者
  • 持久事实与实时控制事件不能混用
FAILURE MODES

最容易踩中的坑

  • ×用目录层级代替职责模型
  • ×把所有 event 都当成可回放事件
  • ×认为 Web UI 直接驱动模型 SDK
VERIFY IN SOURCE

不要相信结论,去源码里复核

以下链接固定到官方 deepseek-harness@47f9438;查看当前上游时请留意后续 breaking changes。

KNOWLEDGE CHECK

先停十秒,再揭晓答案

为什么 UI 不能成为 Session 状态的真源?

为什么下一章紧接在这里

下一章建立源码阅读方法:如何从文档图、服务目录和事件目录,快速找到真实控制点。

Learn DeepSeek Harness

独立教学项目。解释力来自源码,判断边界以官方仓库为准。