@@ -65,18 +65,18 @@ tags:
6565``` mermaid
6666flowchart TD
6767 A[新用户输入 / 新 tool result] --> B[并入当前 session]
68- B --> C[messages 累积 ]
69- C --> D[runtime 组织当前 context]
68+ B --> C[工作材料累积<br/> messages]
69+ C --> D[runtime 重建当前<br/>工作视图 / context]
7070 S[system prompt] --> D
7171 D --> E[模型继续当前 turn]
7272 E --> F[产生新消息 / 新动作 / 新结果]
7373 F --> C
7474 C --> G{上下文是否过重?}
7575 G -- 否 --> D
76- G -- 是 --> H[collapse / compact 等治理 ]
76+ G -- 是 --> H[collapse / compact<br/>减负与重组 ]
7777 H --> D
78- B --> I[必要时等待后续 restore ]
79- I --> J[restore 后重新接回 runtime]
78+ B --> I[中断后保留<br/>可续接状态 ]
79+ I --> J[restore 把工作线<br/>重新接回 runtime]
8080 J --> D
8181```
8282
@@ -90,6 +90,20 @@ flowchart TD
9090
9191也就是说,Claude Code 的“持续工作”不是某个单点功能,而是几层东西一起在维持。
9292
93+ 这里最好再把全文最容易误解的一点先钉死:
94+
95+ > ** Claude Code 不是把历史原样越背越多,而是 runtime 每继续一轮,都会从已有 messages、当前有效状态、system prompt 和 session 里,重新组织出一条当前还能继续跑的工作线。**
96+
97+ 这条工作线会随着任务推进不断变重,所以系统接下来才需要做三件事:
98+
99+ - 让真正相关的内容继续带着跑
100+ - 在过重时做折叠、压缩和重组
101+ - 在中断后把这条工作线重新接回 runtime
102+
103+ 所以这一篇真正要解释的,不是“系统记住了多少历史”,而是:
104+
105+ > ** runtime 怎样持续维护一条可减负、可续接、可继续执行的运行骨架。**
106+
93107---
94108
95109## 先把四个核心位置摆正
@@ -274,24 +288,21 @@ restore 处理的不是“当前太重”,而是“中断之后怎么续上”
274288
275289---
276290
277- ## 把 messages / prompt / compact / restore 再压成一张关系图
291+ ## 把 ` restore ` 的边界再压成一句话
278292
279- ``` mermaid
280- flowchart LR
281- M[历史 messages / 新 messages] --> C[当前 context 组织]
282- S[system prompt] --> C
283- C --> Q[当前 query / 当前判断]
284- Q --> N[继续产生新消息]
285- N --> M
286- M --> P{上下文是否过重?}
287- P -- 是 --> X[collapse / compact]
288- X --> C
289- C --> R[可续接工作状态\nmessages/tool_use/tool_result 的有效投影]
290- R --> T[restore]
291- T --> C
292- ```
293+ 如果把前面的内容再往下压一步,` restore ` 最容易误解的地方,其实不是“会不会恢复历史”,而是:
294+
295+ > ** 系统恢复回来的,到底是不是一条还能继续推进的工作线。**
296+
297+ 所以这里最稳的判断不是“把上一次对话重新打开”,而是:
298+
299+ - 当前任务做到哪一步了
300+ - 哪些 messages / tool use / tool result 仍然构成有效工作材料
301+ - 重新接回后,runtime 还能不能继续判断、继续执行、继续往下跑
302+
303+ 换句话说,` restore ` 真正恢复的重点不是展示层,而是:
293304
294- 这张图只表达一件事:Claude Code 的上下文不是一团静态记忆,而是一条会不断累积、治理、减负和续接的工作链。
305+ > ** 一条可继续工作的运行状态。 **
295306
296307---
297308
0 commit comments