用途:reflect 用于在会话结束时把当天 Claude Code 对话中的有价值知识固化下来,避免会话结束后知识流失。它读取当前项目当天的对话历史,识别纠正、发现、架构决策、调试突破和工作流洞察,再逐条交给用户决定保存位置。
主要能力:支持默认模式 /reflect(分析当前项目当天对话)和 /reflect global(分析所有项目当天对话)。提取的学习按五类整理:纠正、发现、架构决策、调试突破、工作流洞察。每条学习包含标题、背景、可执行的学习内容、类别和建议范围(项目、全局或记忆)。保存位置包括项目 CLAUDE.md 的 ## Learnings、全局 ~/.claude/CLAUDE.md 的 ## Learnings,或项目 MEMORY.md 的 ## Session Learnings。
使用方式:在 Claude Code 中运行 /reflect 或 /reflect global。技能会先确定项目 slug(由 git 仓库根路径把 / 替换为 - 并加前缀 -),再查找 ~/.claude/projects/{project-slug}/*.jsonl 中当天修改的文件,跳过小于 1KB 的文件;全局模式则解析 ~/.claude/history.jsonl 中当天条目并按项目和 sessionId 分组。解析时只取 type 为 user 或 assistant 的行,跳过 isSidechain、isCompactSummary、progress 和 file-history-snapshot。随后逐条展示学习,并通过 AskUserQuestion 询问保存到项目 CLAUDE.md、全局 CLAUDE.md、自动记忆或跳过。保存时保留原有结构,必要时新增 ## Learnings 或 ## Session Learnings 段落,格式为“- 标题 — 学习内容 (captured 日期)”。
适用场景:长时间工作会话结束、调试后获得重要洞察、做出架构决策、用户表示“这个有用,保存下来”、或一天结束时汇总跨会话发现。
限制:会话过于琐碎、用户已手动记录、当天没有对话或没有新知识时不宜使用。不会自动保存,必须用户逐条批准。不编造学习内容,找不到学习时如实报告。保存前会去除 API 密钥、令牌、密码等敏感数据。MEMORY.md 接近 200 行自动加载上限时会提醒用户。大型 JSONL 文件(超过 1MB)建议只读 user 和 assistant 行,必要时聚焦最后 50 条用户消息或分块处理。若当天没有对话文件,会提示未找到当天对话。