📄 一句话概括
同一份清单,要按【该活多久】分两堆:跨会话的留宿主,随会话生灭的进预设——分错了不是报错,是泄漏。
📝 本节和前面几节的关系
8.3.2 列了清单,这一步把清单上的每一项分到两个平面里。
一、两个平面各放什么
- 宿主平面(进程一份):模型路由与密钥、沙箱范围、审批策略、会话存储、插件注册表。
- 会话平面(每会话一份):人格指令、工具清单、预设组合、输出格式。
3.2.1 已经讲过这条线:能力挂在会话作用域上,随会话生灭;记录留下,能力不留。
二、判断标准还是那一句
它该活多久。
- 模型路由:进程一份就够,每会话重来是浪费——留宿主。
- 沙箱范围:权限要收口,不能由会话自己定——留宿主。
- 人格指令:换预设就该换人格——进会话。
- 工具清单:只读审查和全功能不是一个组合——进会话。
两堆分完,预设里该有几件就定下来了。
三、挂错平面的三种事故
3.2.2 讲过:泄漏、残留、失控。
- 会话里的东西挂到宿主:别的会话也能看见,泄漏。
- 宿主的东西挂到会话:撤下时容易漏账,残留。
- 权限类的挂到会话:等于让被管理者自己定规矩,失控。
三种都不是崩溃型故障,但都会在某个意想不到的时候冒出来。
四、实测:宿主那一份长什么样
在 dump 出来的 1259 行树里,宿主层的几件开头就是:
sandbox-policy:mode = DSH_PERMISSION_MODE ?? 'workspace-write'approval:policy = …… === 'danger-full-access' ? 'never' : 'ask'permission:三档枚举,沙箱与审批成对写死
这三件都不在任何预设里——它们属于进程,不属于会话。
五、动手 Demo:哪些留下,哪些跟着会话走
同一份需求,两边的归处不一样:
host = ["模型路由", "密钥", "沙箱范围"]
session = ["人格指令", "工具清单", "审查输出格式"]
print(" 留宿主(%d): %s" % (len(host), "、".join(host)))
print(" 跟会话(%d): %s" % (len(session), "、".join(session)))
print(" 判断标准只有一条: 它该活多久")
实跑输出:
--------------------------------------------------------------------
哪些留下,哪些跟着会话走
--------------------------------------------------------------------
同一份需求,两边的归处不一样:
东西 归哪层 理由
-----------------------------------------------------------
模型路由、密钥 宿主层 进程一份,不该每会话重来
沙箱范围 宿主层 权限要收口,不能会话自己定
人格指令 会话层 换预设就该换人格
工具清单 会话层 只读审查与全功能不是一个组合
审查输出格式 会话层 属于这套预设的做法
-----------------------------------------------------------
判断标准还是 3.2.2 那一句:**它该活多久**。
跨会话的留宿主,随会话生灭的进预设。
分错的三种后果(泄漏/残留/失控)都不是崩溃,是慢慢显形的毛病。 权限三件(sandbox-policy/approval/permission)一件都不在预设里——这是 8.4 的伏笔。 判据始终是那一句:它该活多久。
30 秒实验
- 把你清单上的每一项标上【宿主】或【会话】。
- 再问一句:分到会话的那些,撤下时能不能算清账?
- 分到宿主的那几项,谁有权改它——如果答案是【会话】,那就分错了。
常见误区
- 错误:分哪边都行,反正都能用。——纠正:分错不是不能用,是用出别的问题——泄漏、残留、失控三种都是延迟显形的毛病。
- 错误:会话级的东西更【灵活】,尽量往会话放。——纠正:权限类的往会话放就失控了——被管理者给自己定规矩,这条线不能越。
- 错误:宿主层的东西离我太远,不用管。——纠正:它常常是你唯一能改权限的地方——本章 8.4 的实测就落在这里。
自测三问(点开对答案)
1. 两个平面各放什么? —— **宿主放进程一份的**(模型路由、密钥、沙箱范围、审批策略),**会话放随会话生灭的**(人格、工具清单、输出格式)。 2. 挂错平面的三种事故是什么? —— **泄漏**(会话的东西挂宿主)、**残留**(宿主的挂会话)、**失控**(权限类挂会话)。 3. 权限三件在哪个平面? —— **宿主平面**——`sandbox-policy`/`approval`/`permission` 都在顶层,一件都不在任何预设里。- ☐ 下一节(8.3.4 第三步:只向模型暴露审查真正需要的工具)
相关笔记
- 第三步:只向模型暴露审查真正需要的工具 —— 会话那一堆里,再筛一遍
- Scope Context:会话级能力从哪里来 —— 两个平面的出处
- 作用域的意义:动态组合必须有边界 —— 挂错的三种事故
- 🐳 DeepSeek Harness · 索引