Recall 的用途是在开始或恢复工作前,重建用户近期的工作上下文,并交回一份紧凑的简报,说明当前进展与下一步该做什么。它强调范围紧凑、只读与当前主题相关的内容。
上下文来自两类记录:自身聊天历史记录了你做过什么、决定了什么;共享记录则包含同一代码在其他名称下发生的一切,例如用户反复报告的症状、已发布又被回滚的修复、仍在生产环境触发的错误。共享记录由 why 技能搜索,覆盖源码管理、问题跟踪器、聊天与问题频道、长文档和错误跟踪。
聊天记录位于 ~/.claude/projects/<encoded-cwd>/<uuid>.jsonl,其中 <encoded-cwd> 是工作区路径去掉开头斜杠、并把每个“/”换成“-”(例如 /Users/you/proj 变成 -Users-you-proj),每行是一条聊天消息。
使用方式:先锁定范围,明确时间窗口(默认最近 7 天)、主题和工作区,并复述范围;再在聊天历史上并行展开子代理,按真实修改时间(ls -t)排序,先 grep 主题再只读匹配聊天及其相关区域,跳过当前聊天与明显噪声;当主题涉及功能、文件、子系统、区域或缺陷时,默认清扫共享记录,把问题从“为什么这样构建”转向“当前状态如何、试过什么没成立、用户还在报告什么”;最后用 git 和 gh 对照实时状态验证 PR、分支和工单。
输出契约:先写最多 5 条要点的胶囊,再按线程分组,每行一个状态标签([merged #N]、[open PR #N]、[in flight <branch>]、[verified, uncommitted]、[reverted #N]、[planned, not started]),然后是最多 5 个反复出现的问题,最后给出一个具体下一步。聊天发现按 UUID 引用,共享记录发现按来源引用。
限制:若用户已给出完整状态胶囊,则跳过挖掘;纯活动回忆且无命名目标时可跳过共享记录清扫;不读取其他项目的聊天记录;相邻功能或工单除非阻塞当前工作否则不纳入。资料未提供收费、价格、平台或效果信息。