context-mode 恢复会话完整指南:--continue 与 /resume 全状态还原详解

发布时间:2026/8/30 9:48:03
context-mode 恢复会话完整指南:--continue 与 /resume 全状态还原详解 context-mode 恢复会话完整指南--continue 与 /resume 全状态还原详解【免费下载链接】context-modeContext window optimization for AI coding agents. Sandboxes tool output (98% reduction), persists session memory, and enforces routing across 17 platforms via MCP hooks.项目地址: https://gitcode.com/GitHub_Trending/cl/context-modecontext-mode是一款面向 AI 编程智能体的上下文窗口优化工具它沙箱化工具输出最高降低 98% 的上下文占用将会话记忆持久化到本地 SQLite并通过 MCP hooks 在 17 个客户端平台强制执行路由。本文带你彻底搞懂它的会话恢复能力——如何用--continue与/resume在会话被压缩或中断后一键还原全部工作状态让 AI 从你上一条指令继续干活而不用你重复任何解释。为什么你需要 context-mode 的会话连续性AI 智能体在长任务中会不断消耗上下文窗口读文件、抓网页、跑测试……一旦窗口写满客户端会压缩compact对话来腾空间。压缩之后模型常常失忆——忘了自己在改哪些文件、哪些任务进行中、你最后一条指令是什么。context-mode 的Session Continuity会话连续性正是为解决这个问题而设计✅ 会话期间每一个有意义的事件文件编辑、Git 操作、任务、错误、你的决策都被持久化到按项目隔离的 SQLite 数据库✅ 对话被压缩或者你用--continue、--resume、/resume恢复时工作状态自动重建模型直接从你上一条提示词继续不需要你重复任何内容⚠️ 注意一个关键规则如果不带--continue启动新会话上一个会话的数据会被立即清理——新会话意味着干净起点。想接续上次工作恢复参数是必须的。五大 Hook 协同会话恢复是如何工作的会话恢复不是单一命令的功劳而是多个生命周期 Hook 协同的结果完整实现见 hooks/sessionstart.mjs 与 hooks/precompact.mjsHook在恢复流程中的角色PostToolUse每次工具调用后捕获文件、任务、Git、错误等事件UserPromptSubmit捕获你的决策与修正用 X 代替 Y、别做 ZStop捕获智能体回合结束状态PreCompact压缩前读取全部事件构建优先级快照并入库SessionStart压缩后或恢复时取回快照重建工作上下文核心时序如下PreCompact 触发 → 从 SQLite 读取该会话全部事件 → 构建按优先级分层的 XML 快照≤ 2 KB → 快照存入 session_resume 表 SessionStart 触发source: compact / resume → 取回已存储快照 → 写入结构化事件文件 → 自动索引进 FTS5 全文库 → 构建包含 15 分类的 Session Guide → 将 session_knowledge 指令注入上下文 → 模型带着完整工作状态从你最后一条提示词继续三种恢复方式--continue、--resume 与 /resume 用法详解在 Claude Code 等支持会话恢复的客户端中context-mode 对三种恢复入口全部生效claude --continue—— 继续当前项目最近一次会话。SessionStart Hook 会以source: resume触发优先读取该会话 ID 的实时事件表claude --resume session-id—— 恢复指定会话/resume选择器—— 在会话列表中挑选任意一段历史对话。其中/resume选择器有一个巧妙设计它会给恢复的会话发一个全新的 session id其实时事件表是空的。此时 hooks/sessionstart.mjs 会自动降级从项目的session_resume表中认领最近一份未被消费的快照claimLatestUnconsumedResume照样完成状态重建。换句话说选择器负责选对话context-mode 负责把之前的工作状态注水回来。全状态还原Session Guide 到底还原了什么恢复完成后模型收到的不是一堆原始日志而是一份结构化的Session Guide叙事文档涵盖 19 个类别Last Request—— 你最后一条提示词模型不会反问我们刚在做什么Tasks—— 复选框格式的任务清单[x]已完成 /[ ]待办Files Modified—— 会话中触碰过的全部文件Key Decisions—— 你的修正与偏好用 X 代替 YUnresolved Errors—— 尚未修复的错误 错误→修复配对Git—— 执行过的 checkout / commit / push / status 操作Plans、Constraints、Blockers、Environment—— 计划模式、发现的限制、阻塞项、工作目录与环境Project Rules、MCP Tools Used、Skills Used等其余类别。快照有≤ 2 KB 的预算采用优先级分层预算紧张时低优先级事件会话意图、MCP 工具计数先被丢弃而关键状态活动文件、任务、规则、决策永远保留。更细粒度的事件数据同时被索引进 FTS5 全文库模型可用ctx_search按需精确检索。快照如何构建与存储关键源码导读环节说明关键文件事件捕获Hook 从每次工具调用中提取结构化事件hooks/posttooluse.mjs快照构建优先级分层的 XML 快照生成src/session/snapshot.ts会话数据库按项目隔离的 SQLite 存储与快照读写src/session/db.ts恢复注入startup / compact / resume / clear 四分支处理hooks/sessionstart.mjs会话指令Session Guide 与 FTS5 索引写入hooks/session-directive.mjs两个容易忽略但很有用的细节--continue会话还保留已索引的文档ctx_fetch_and_index的 24 小时 TTL 缓存跨重启生效恢复会话无需重新抓取不浪费任何上下文 token数据不会无限堆积不带--continue的全新启动会触发清理保留 7 天窗口配合ctx purge可随时清空知识库。平台支持哪些客户端能恢复会话会话恢复依赖 Hook 支持不同平台完整度不同。以 Claude Code 为例是完整支持全部 Hook 触发、捕获工具事件与用户决策、构建压缩快照并在压缩、--continue、--resume、/resume后恢复状态Gemini CLI、VS Code Copilot、JetBrains Copilot 为高覆盖Cursor 目前暂不支持压缩后的会话恢复。完整能力对照表见 docs/platform-support.md。会话恢复排障清单遇到问题时按顺序检查ctx doctor—— 一键诊断运行时、hooks 注册、FTS5 与插件状态全部应显示[x]ctx stats—— 查看会话事件数量确认事件确实在被捕获确认启动时带了--continue/--resume或使用了/resume选择器——否则数据按设计已被清理相关行为回归测试可参考 tests/session/continuity.test.ts 与 tests/session/resume-leg-boundary.test.ts覆盖压缩恢复与 resume 边界场景。写在最后context-mode 把会话记忆从模型的一次性上下文变成了本地可持久、可检索、可回滚的资产。--continue一行命令背后是 PreCompact 建快照、SessionStart 注水还原、FTS5 按需检索的完整链路——下次 AI 忘记我们在做什么时你只需要恢复会话而不是重讲一遍需求。【免费下载链接】context-modeContext window optimization for AI coding agents. Sandboxes tool output (98% reduction), persists session memory, and enforces routing across 17 platforms via MCP hooks.项目地址: https://gitcode.com/GitHub_Trending/cl/context-mode创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考