会话恢复命令¶
加载最后保存的会话状态,在开始工作之前完全了解情况。
此命令是 /save-session 的对应命令。
使用时机¶
- 在开始新会话以继续前一天工作时
- 在达到上下文上限并开始新会话之后
- 当从其他来源收到会话文件时(只需指定文件路径)
- 当存在会话文件,并且希望 Claude 在继续工作前完全掌握内容时
用法¶
/resume-session # ~/.claude/session-data/ の最新ファイルを読み込む
/resume-session 2024-01-15 # その日付の最新セッションを読み込む
/resume-session ~/.claude/session-data/2024-01-15-abc123de-session.tmp # 現在の短縮IDセッションファイルを読み込む
/resume-session ~/.claude/sessions/2024-01-15-session.tmp # レガシー形式の特定ファイルを読み込む
流程¶
步骤 1:查找会话文件¶
未指定参数时:
- 检查
~/.claude/session-data/ - 选择最近更新的
*-session.tmp文件 - 如果文件夹不存在或没有匹配文件,向用户通知: 然后停止。
指定参数时:
- 如果为日期格式(
YYYY-MM-DD),先搜索~/.claude/session-data/,再搜索旧版的~/.claude/sessions/,查找匹配YYYY-MM-DD-session.tmp(旧版格式)或YYYY-MM-DD-<shortid>-session.tmp(当前格式)的文件, 并读取该日期最近更新的匹配文件 - 如果为文件路径,直接读取该文件
- 如果未找到,明确报告并停止
步骤 2:读取整个会话文件¶
读取整个文件。先不要总结。
步骤 3:确认理解¶
以以下精确格式返回结构化简报:
SESSION LOADED: [ファイルへの実際の解決済みパス]
════════════════════════════════════════════════
PROJECT: [ファイルに記載されたプロジェクト名 / トピック]
WHAT WE'RE BUILDING:
[自分の言葉で2〜3文の要約]
CURRENT STATE:
PASS: Working: [数] 件確認済み
In Progress: [進行中のファイル一覧]
Not Started: [計画済みだが未着手の一覧]
WHAT NOT TO RETRY:
[失敗したアプローチとその理由をすべて列挙 -- これは非常に重要]
OPEN QUESTIONS / BLOCKERS:
[ブロッカーや未回答の質問を列挙]
NEXT STEP:
[ファイルに定義されている場合は正確な次のステップ]
[定義されていない場合: "No next step defined -- recommend reviewing 'What Has NOT Been Tried Yet' together before starting"]
════════════════════════════════════════════════
Ready to continue. What would you like to do?
步骤 4:等待用户¶
不要自动开始工作。不要改动文件。等待用户指示。
如果会话文件中明确定义了下一步,并且用户说“继续”“是”等,则执行该确切的下一步。
如果未定义下一步,询问用户从哪里开始,并在必要时从“尚未尝试的事项”部分提出方案。
边界情况¶
同一日期存在多个会话时 (2024-01-15-session.tmp, 2024-01-15-abc123de-session.tmp):
无论使用旧版无 ID 格式还是当前短 ID 格式,都读取该日期最近更新的匹配文件。
会话文件引用了不存在的文件时:
在简报中注明这一点 -- "WARNING: path/to/file.ts referenced in session but not found on disk."
会话文件距今超过 7 天时: 注明时间间隔 -- "WARNING: This session is from N days ago (threshold: 7 days). Things may have changed." -- 然后照常继续。
用户直接指定文件路径时(例如从团队成员处转发): 读取它,并遵循相同的简报流程 -- 无论来源如何,格式都相同。
会话文件为空或格式无效时: 报告:"Session file found but appears empty or unreadable. You may need to create a new one with /save-session."
输出示例¶
SESSION LOADED: /Users/you/.claude/session-data/2024-01-15-abc123de-session.tmp
════════════════════════════════════════════════
PROJECT: my-app — JWT Authentication
WHAT WE'RE BUILDING:
User authentication with JWT tokens stored in httpOnly cookies.
Register and login endpoints are partially done. Route protection
via middleware hasn't been started yet.
CURRENT STATE:
PASS: Working: 3 items (register endpoint, JWT generation, password hashing)
In Progress: app/api/auth/login/route.ts (token works, cookie not set yet)
Not Started: middleware.ts, app/login/page.tsx
WHAT NOT TO RETRY:
FAIL: Next-Auth — conflicts with custom Prisma adapter, threw adapter error on every request
FAIL: localStorage for JWT — causes SSR hydration mismatch, incompatible with Next.js
OPEN QUESTIONS / BLOCKERS:
- Does cookies().set() work inside a Route Handler or only Server Actions?
NEXT STEP:
In app/api/auth/login/route.ts — set the JWT as an httpOnly cookie using
cookies().set('token', jwt, { httpOnly: true, secure: true, sameSite: 'strict' })
then test with Postman for a Set-Cookie header in the response.
════════════════════════════════════════════════
Ready to continue. What would you like to do?
注意事项¶
- 加载会话文件时不要修改它 -- 它是只读的历史记录
- 简报格式固定 -- 即使某个部分为空也不要省略
- 始终显示“不要重试的事项”。即使为“无” -- 它重要到不能遗漏
- 恢复后,用户可能希望在新的会话结束时再次运行
/save-session,以创建带有新日期的文件
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 ev/ECC