ZERO TO SOURCE READER
9 小时,不是速览:是一条完整认知坡道
六次学习会话从全局直觉逐步推进到扩展交付。每层都明确前置问题、学习结果与通向下一层的原因。
01
SESSION 1
≈ 51 min建立全局直觉
先知道 Harness 解决什么问题,再学习它如何拆分复杂度。
完成这一层,你将能够能向别人讲清模型、Agent 与 Harness 的边界
02
SESSION 2
≈ 82 min掌握组合语法
沿着 Cordis 的上下文、effect、服务、事件、作用域与配置树读系统。
完成这一层,你将能够能读懂一棵真实插件树为何可安装、可替换、可卸载
H05Context:插件的协作面Context 是一个更方便的全局变量,还是系统的边界对象?15mH06Effect 与 Fiber:让卸载真正完成调用 AbortController.abort(),为什么不等于插件已经卸载?16mH07Service 与 Event:能力和协作要分开什么时候应该调用 ctx.fs,什么时候应该监听 fs/write-intent?17mH08Scope、Realm 与 Rescope两个 Agent 为什么可以看到不同工具、人格和工作目录,却仍共享同一进程?16mH09Profile、Bundle、Patch 与启动树不 fork 官方仓库,怎样替换模型、沙箱或工具集合?18m03
SESSION 3
≈ 117 min追踪 Agent 主干
从 Agent 创建到 SessionEvent、Turn、Step、Prompt、LLM 与工具执行。
完成这一层,你将能够能逐事件解释一次完整模型请求
H10Agent 的创建、所有权与取消谁有权销毁一个 Agent?创建失败一半时又如何回滚?19mH11SessionEvent:唯一真源为什么连原始 assistant/chunk 都要持久化,而不是只存最终消息?20mH12Inbox、Turn 与 Step为什么“用户发了一条消息”不等于“系统只会请求一次模型”?20mH13Prompt 不是一段字符串插件如何增加模型可见上下文,又不让所有人共同编辑一份 systemPrompt?18mH14LLM Adapter 与流式词汇DeepSeek、重放模型或其他 Provider 的流式事件为什么能进入同一 Agent Loop?18mH15工具执行不是一次函数调用为什么一个后加载插件不能把前面已经 deny 的危险调用重新放行?22m04
SESSION 4
≈ 99 min理解安全与耐久性
审批、沙箱、文件系统、压缩、持久化、投影与防御性不变量。
完成这一层,你将能够能判断系统在拒绝、崩溃、取消和长上下文下是否仍可信
H16审批、策略与权限预设为什么“danger-full-access + never ask”仍然不等于所有工具都能执行?18mH17Sandbox、FS、Shell 与同一个执行世界为什么替换 subprocess provider,Bash、PTY、LSP 与外部子 Agent 会一起迁移?20mH18Compaction、Token Meter 与 Spill如何缩短模型上下文,同时不破坏工具 call/result 配对、不删除原始事实?21mH19持久化、Projection 与 Query会话列表为什么不应该为每一行加载完整 SessionEvent 日志?22mH20取消、超时与防御性不变量为什么一个超时不能简单地 Promise.race 后忘掉仍在运行的工作?18m05
SESSION 5
≈ 81 min从单 Agent 扩到协作系统
目标、计划、待办、子 Agent、后台任务、工作流、调度和能力发现。
完成这一层,你将能够能区分状态、委派、编排与长期运行的责任边界
06
SESSION 6
≈ 83 min动手扩展并交付
把理解落到工具、适配器、客户端表面、Profile 与 Bundle。
完成这一层,你将能够能在不修改 Agent Loop 的前提下交付一项完整能力