日本最大级别的收录量 × 最快1分钟找到合适的AI

  1. AI BEST SEARCH
  2. AI 工具使用方法与应用案例汇总
  3. Claude Code会话管理技巧|用/rewind和/fork彻底消除开发返工

Claude Code会话管理技巧|用/rewind和/fork彻底消除开发返工

系统讲解Claude Code的/rewind、/fork、/clear、/compact命令。从上下文窗口机制到检查点设置、实战场景、使用选择流程图,手把手教你将会话管理融入开发策略。

Claude Code 用得越深,就越容易遇到「上下文污染」和「返工」的问题。随着对话不断增加,响应精度会逐渐下降,或者在错误的实现方向上越走越远——而会话管理正是从根本上解决这些问题的方法。

本文将系统讲解 /rewind、/fork、/clear、/compact 这四个命令,并介绍如何将会话管理从「事后收拾」转变为「开发策略」来加以运用。


为什么会话管理如此重要

上下文窗口中存储了哪些内容

在 Claude Code 的会话中,以下信息会持续累积到上下文窗口中。

  • 对话历史:用户的所有指令和 Claude 的所有回复
  • 文件内容:已读取的源代码、配置文件
  • 命令输出:构建日志、测试结果、git diff 等
  • CLAUDE.md:项目规则和指令
  • 工具调用结果:Grep / Glob / Bash 等的输出

上下文填满后精度会下降

正如官方文档明确指出的,随着上下文窗口被填满,Claude 的响应精度会逐渐降低。具体表现为以下症状:

  • 遗忘最初给出的重要指令
  • 反复读取同一个文件
  • 提出相互矛盾的建议
  • 被关联性较低的信息带偏

自动压缩的局限性

Claude Code 内置了在上下文接近上限时自动进行摘要的机制(自动压缩),但这并非万能。

  • 初始指令被压缩的风险:最初设定的重要规则可能在摘要过程中被稀释
  • 无用信息残留:失败的试错日志可能被保留在摘要中,对后续判断产生负面影响
  • 无法控制触发时机:由于是自动触发,可能在意料之外的时间点丢失信息

手动控制这些问题,正是会话管理命令的作用所在。将会话管理视为「开发策略」而非「事后收拾」,这一认知转变至关重要。


检查点的工作原理

要理解 /rewind,首先需要了解检查点的工作机制。

自动快照

Claude Code 会在每次编辑文件时,自动将修改前的状态保存为快照。这是一套独立于 git 提交的、会话本地的机制。

  • 仅在会话内有效(会话结束后消失)
  • 不影响 git 工作树
  • 无需显式操作,自动创建

注意不可撤销的操作

检查点可以撤销文件变更,但以下操作无法撤销。

操作示例是否可撤销
文件编辑代码修改、新建文件可撤销
git push推送到远程不可撤销
npm publish发布包不可撤销
API 调用向外部服务发起请求不可撤销
DB 操作数据的插入、更新、删除不可撤销

重要的是,/rewind 仅针对本地文件变更和对话历史进行回滚。对外部产生影响的操作无法还原,因此在 git push 或 npm publish 之前,务必做好确认。


/rewind——安全回滚到过去的状态

启动方式

执行 /rewind 有两种方式:

  • 连按两次 Esc 键:快速调用的快捷方式
  • 输入 /rewind:以命令形式显式执行

执行后,会显示会话内的检查点列表,可以选择要回到的时间点。

三种恢复模式

/rewind 最大的特点是可以独立回滚代码和对话。选择检查点后,可以从以下三种模式中选择:

1. 同时回滚代码和对话

最简单的模式。完全恢复到所选时间点的状态。

使用场景:想从根本上推翻并重新规划实现方案时
效果:文件变更和对话流程全部重置

2. 只回滚代码(保留对话中获得的知识)

撤销文件变更,同时保留对话中积累的知识和讨论内容。

使用场景:实现失败,但想保留讨论中获得的经验时
效果:代码重置,对话历史保持不变

3. 只回滚对话(保留代码成果)

保留实现结果,仅删减对话历史。

使用场景:实现已完成,但反复试错的日志导致上下文膨胀时
效果:代码保持不变,修剪对话以减轻上下文负担

实践场景

场景一:重构实验失败

委托 Claude 将代码重构为状态类模式,结果导致大量现有测试被破坏。

处理方式:只回滚代码 → 保留重构过程中发现的依赖关系知识,以不同策略(如策略模式)重新尝试。

场景二:调试陷入死胡同

为了找出认证错误的原因,尝试了各种日志输出和代码修改,但真正的原因是 CORS 配置问题。

处理方式:回滚到调试开始前的检查点 → 清除所有试错过程中插入的调试代码,从干净的状态专注于修复 CORS 配置。

场景三:实现完成后整理上下文

API 端点实现完毕,但中途的试错已占用大量上下文。下一步想进入测试编写阶段。

处理方式:只回滚对话 → 保留已实现的代码,削减无用的对话日志,为测试编写留出充足的上下文空间。


/fork——分支会话

启动方式

使用 /fork 的方式如下:

  • 在会话中输入 /fork:分支当前会话
  • 从终端执行 claude --continue --fork-session:fork 最新会话并在新终端中启动

工作原理

执行 /fork 后,会发生以下事情:

  1. 生成新的会话 ID
  2. 复制当前对话历史
  3. 对原始会话完全没有影响

简单来说,就是创建一个拥有 fork 时刻的知识和上下文的「分身」。fork 后的操作完全独立,回到原始会话后,分支中的变更不会同步回来。

与 resume 的区别

容易混淆的是 claude --continue(resume)。

项目/fork--continue(resume)
会话 ID新建继续同一会话
对话历史复制(独立)共享(同一份)
多终端并行可安全并行工作多个终端打开同一会话存在混乱风险
用途并行验证、实验恢复中断的工作

重要提示:用多个终端对同一会话执行 --continue 时,对话内容可能混杂,导致意外行为。并行工作时务必使用 /fork。

实践场景

场景一:A/B 方案对比

在 API 设计中,犹豫是否采用 REST 还是 GraphQL。

处理方式:对当前会话(需求已定义)使用 /fork 进行分支。终端 A 推进 REST 实现,终端 B 推进 GraphQL 实现,比较结果后再做决定。

场景二:不中断主线的技术调研

在功能实现途中,产生了「这个设计模式真的合适吗」的疑问。

处理方式:使用 /fork 创建分支会话,在分支中验证设计的合理性。主线实现可以继续推进,待调研结果出来后再做判断。

场景三:安全试验破坏性变更

考虑对数据库 schema 进行大幅修改,但影响范围难以评估。

处理方式:/fork 后再尝试 schema 变更。如果有问题,直接丢弃 fork 会话,即可回到原始会话的干净状态。成功后通过 git 提交将成果合并。


四个命令的使用指南

Claude Code 中有四个与会话管理相关的命令。了解各自的特性,合理使用。

对比表

项目/rewind/fork/clear/compact
目的回到过去的状态分支会话完全重置会话摘要压缩对话
对代码的影响可选(回滚/保留)无(仅分支)无无
对话历史可选(回滚/保留)复制并独立全部删除压缩为摘要
上下文消耗可减少不增加(新会话)归零重置大幅减少
CLAUDE.md不受影响被复制重新读取保持不变

决策流程图

不知道该用哪个命令时,请按以下流程判断:

Q1. 是否继续当前任务?

→ 否:用 /clear 完全重置,开始新任务

→ 是:进入 Q2

Q2. 是否想撤销上一步的操作?

→ 是:用 /rewind 回滚到特定检查点

→ 否:进入 Q3

Q3. 是否想并行尝试其他方案?

→ 是:用 /fork 分支会话,进行并行验证

→ 否:进入 Q4

Q4. 上下文是否已经紧张?(通过 /context 确认)

→ 是:用 /compact 摘要压缩对话

→ 否:继续当前工作


最佳实践

以下是充分发挥会话管理命令作用的最佳实践。

与 Plan 模式结合使用

处理大型任务时,建议有意识地遵循 Plan 模式 → 实现 → 遇到问题时 /rewind 的循环。

  1. 按 Shift + Tab 进入 Plan 模式,制定实现计划
  2. 确认计划后再推进实现
  3. 出现问题时,用 /rewind 回到计划阶段,修正方向

由于 Plan 模式中制定的计划会保留在上下文中,/rewind 回滚后仍能维持「为什么选择这个方向」的背景信息。

在 CLAUDE.md 中写入持久规则

即使通过 /compact 或 /clear 重置了对话,CLAUDE.md 中写入的规则也会被重新读取。希望跨会话保留的信息,请记录在 CLAUDE.md 中。

# 项目规则
- TypeScript strict 模式必须启用
- 测试使用 Vitest
- 提交信息遵循 Conventional Commits 规范
- 错误处理使用 Result 类型模式

定期用 /context 检查上下文使用量

通过 /context 命令可以查看上下文窗口的使用情况。当使用率升高时,就是用 /compact 压缩或 /clear 重置的时机。

将大型任务委托给子代理

Claude Code 的 Agent 工具(子代理)在独立的上下文窗口中运行,因此不会占用主会话的上下文。

  • 文件搜索和调研任务 → 委托给子代理
  • 主会话 → 专注于架构决策和集成工作

这样可以高效利用主会话的上下文空间。

用 /rename 为会话命名

通过 /rename 命令为会话设置易于识别的名称,之后用 claude --resume 恢复时就能快速找到目标会话。

/rename 认证功能重构

特别是在用 /fork 并行管理多个会话时,命名可以让管理工作轻松许多。


常见问题(FAQ)

/rewind 回滚后,可以重做吗?

可以。 再次执行 /rewind 即可移动到另一个检查点。不过,rewind 删除的对话和代码变更没有「重做(redo)」功能,因此如果有重要变更,建议事先进行 git 提交。

/fork 会话的成果可以合并回原始会话吗?

可以通过 git 提交实现。 将 fork 会话中实现的变更提交到 git 后,原始会话(或任何其他会话)都可以获取这些变更。会话之间不支持直接合并对话历史。

外部操作(如 git push 等)可以撤销吗?

不可以。 /rewind 仅针对本地文件变更和对话历史。git push、npm publish、API 调用、数据库操作等对外部产生影响的操作无法撤销。执行重要的外部操作前,务必做好确认。

/compact 和 /clear 有什么区别?

  • /compact:由 AI 对对话历史进行摘要压缩。保留上下文的概要,因此可以继续同一任务。
  • /clear:完全删除对话历史。CLAUDE.md 会被重新读取,但其他所有上下文都会丢失。适用于开始新任务时使用。

上下文窗口的上限大概是多少?

Claude Code 所使用模型的上下文窗口为 200K tokens。但实际上,系统提示、CLAUDE.md、工具定义等会占用一定量,因此用户实际可用的有效容量会少于这个数字。可以通过 /context 命令查看当前的使用情况。


总结

Claude Code 的会话管理不仅仅是「事后收拾」,更是最大化开发效率的战略性工具。

  • /rewind:安全回到过去的状态,将试错成本降到最低
  • /fork:分支会话,无风险地进行并行验证
  • /compact:压缩上下文,维持响应精度
  • /clear:完全重置,以全新状态投入新任务

合理使用这些命令,可以有效防止因上下文污染导致的精度下降和返工问题,从而充分发挥 Claude Code 的潜力。

分享这篇文章

本文介绍的 AI 工具

相关文章

DeepSeek-V4.1-Flash-1017とは【2026年10月17日公開】APIの料金(円換算)・商用利用・安全性・V4-Proとの違い

DeepSeek(ディープシーク)は2026年10月17日、V4.1-Flashの小改良版「DeepSeek-V4.1-Flash-1017」を公開し、Web版・アプリ・API(deepseek-flash)を同日に切り替えました。重みはMITライセンスで商用利用でき、コード修正のベンチマークDeepSWE v1.1では77.0とClaude Opus 5(74.0)を上回りますが、数字は自己申告で、Opus 5が上の項目も多くあります。この記事では、公式のAPIドキュメントとHugging Faceのモデルカードにもとづいて、何が変わったか、APIの料金を円でいくらか(日本時間のピーク時間帯と半額のオフピーク)、11月1日から課金が始まるSearch/Fetch API、V4-Proの現状、中国のサーバーに保存されるデータの扱いと自社の環境で動かす選択肢を整理します。

DeepSeek-V4.1-Flash-1017とは【2026年10月17日公開】APIの料金(円換算)・商用利用・安全性・V4-Proとの違い

Claude MaxのAPIクレジットとは【2026年10月最新】毎月$100〜の受け取り方・使える範囲・Claude Codeは対象か・Haiku 5.5で何回動くか

2026年10月7日(米国時間)、AnthropicはClaudeのMax・Teamプランに毎月のAPIクレジットを付けると発表しました。Max 5x(現在のMax)は月$100、Max 20x(現在のUltra)は月$200、Teamは1席あたりStandard $20・Premium $100をチームで1つの残高にまとめ、上限は$500です。この記事では、Xで食い違って広まったTeamの付き方(オーナー1人が受け取るプール方式)を公式ヘルプにもとづいて正し、使える範囲(Claude API・Managed Agents・Agent SDK・APIキーで動かすclaude -p)と使えない範囲(対話で使うClaude Code・Bedrock等の経由)、claude.aiの請求設定から組織を連携する受け取り方、7日の待機期間と繰り越し不可の条件を整理します。あわせて、同時公開のClaude Haiku 5.5の料金(入力$0.10・出力$0.50/100万トークン)で$100がどれだけの処理になるかを試算し、Pro・Max・Teamの選び方の目安を示します。

Claude MaxのAPIクレジットとは【2026年10月最新】毎月$100〜の受け取り方・使える範囲・Claude Codeは対象か・Haiku 5.5で何回動くか

Jev 是什么【2026年10月最新】不生成文本的 AI 的用法・价格|与 Microsoft-Decision-1 的区别

2026 年 10 月 9 日,Microsoft 发布了与 Jev 同价(每百万输入 token 0.042 美元、输出免费)、提问类型也相同的判断专用模型「Microsoft-Decision-1」。本文先梳理 TypeSafe AI 于 9 月 15 日发布的 Jev 是什么——不生成文本、以概率形式返回 Choice(分类)・Score(评分)・Noul(0〜1 真值)的「System One 模型」的原理,堆再多问题响应时间也几乎不变的投机式 fan-out,从候补名单到 Python SDK・HTTP API・Claude Code skill 的用法,用 confidence 把拿不准的交给人的设计,以及应用案例——再比较它与 Microsoft-Decision-1 的区别(提供途径・上下文长度・提供状态・日语支持)、该选哪个、在日本能否使用,以及 Jev 在 10 月的最新状况(A 轮融资・速率限制・OpenRouter 上架)。同时也覆盖官方明确的「CJK 准确率低于英语」以及官方公开的弱点。

Jev 是什么【2026年10月最新】不生成文本的 AI 的用法・价格|与 Microsoft-Decision-1 的区别

编码智能体时代的 CLI 与编程学习【2026 年 8 月最新】从终端与 Git 入手的 11 个学习服务

2026 年,Claude Code、Codex、Cursor 已进入实务,所需能力从「从零写出来」转为「读懂 AI 给出的差异、解释报错、从坏掉的状态恢复」,而这一切都发生在终端里。本文以「用好 AI 智能体的前提」这一视角,从入口(语言还是环境)、形式、日语支持、免费额度与价格出发,比较 WebTerm、WebTerm Learn、Progate、dotinstall、paiza 学习、ZEN Study、Techpit、Recursion、Boot.dev、KodeKloud、DeepLearning.AI 共 11 个服务。同时整理 Progate 的「Claude Code 入门(beta)」、KodeKloud 的「Claude Code For Beginners」(8 小时 32 分)、DeepLearning.AI 与 Anthropic 联合制作的课程等以智能体为前提重构的讲座,并给出环境→语法→智能体→评价的学习顺序。

编码智能体时代的 CLI 与编程学习【2026 年 8 月最新】从终端与 Git 入手的 11 个学习服务

Claude Fable 5、GPT-5.5、Gemini 3.1 Pro该如何选择?性能、价格、使用场景全面对比【2026年7月版】

全面对比2026年上半年三强最新旗舰模型Claude Fable 5、GPT-5.5、Gemini 3.1 Pro。以官方数据为主,涵盖基准测试表现、API定价、上下文窗口、多模态支持,以及ChatGPT Plus/Claude Pro/Google AI Pro等消费级方案的使用方法,并按用途给出选购建议。

Claude Fable 5、GPT-5.5、Gemini 3.1 Pro该如何选择?性能、价格、使用场景全面对比【2026年7月版】

Claude Fable 5是什么|深度解析Anthropic最新前沿模型的性能、定价与使用方法

全面解析Anthropic于2026年6月发布的最新模型Claude Fable 5。涵盖编程、知识工作、科学领域的基准测试成绩,与Mythos 5的区别,API定价及使用方法,并附官方数据说明。

Claude Fable 5是什么|深度解析Anthropic最新前沿模型的性能、定价与使用方法