一键导入
reflect
复盘当前会话,提取可沉淀的经验。当用户要求复盘、总结经验、提取教训、回顾会话收获时使用
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
复盘当前会话,提取可沉淀的经验。当用户要求复盘、总结经验、提取教训、回顾会话收获时使用
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
归档已完成的过程文件
一键启动全自主 agent 团队,自动完成从 PRD 到验证的完整 RPIV 开发流程。brainstorm 完成后使用此命令,无需人工介入。当用户提到"自动开发"、"团队开发"、"全自主"、"biubiubiu"时触发。
通过访谈对话澄清产品需求
对指定目录/模块/skill 进行全量代码审计(不依赖 git diff)。支持逻辑、安全、性能、架构、集成与环境、可迁移性 6 个维度的审查,特别适合审计 skills 是否绑定 Claude Code、Codex、opencode 或特定机器环境。
修复手动/AI 代码审查中发现的问题的流程
在提交前运行的技术代码审查,用于质量和错误检查
| name | reflect |
| description | 复盘当前会话,提取可沉淀的经验。当用户要求复盘、总结经验、提取教训、回顾会话收获时使用 |
| version | 2.3.0 |
复盘本次会话,按以下流程执行:
回溯会话中所有失败的工具调用(Bash exit code 非 0、Edit 被拒绝、API 报错等),对每个错误填表:
| 错误 | 已有规则? | 规则遵守了? | 诊断 |
|---|---|---|---|
| [错误描述] | 是/否 | 是/否 | [见下方诊断逻辑] |
诊断逻辑(互斥):
快速修复的错误也不跳过——"一次修好"不等于"不值得反思"。
回顾会话中的任务,找出成功解决的问题和遇到的障碍。
对每条候选经验,执行以下测试:
一个不了解本项目/平台的资深开发者,会犯同样的错吗?
知识类示例:python-pptx 的 _element 不是 lxml element、某 API 必须用签名 URL、Git Bash 中 bw 命令会挂起
行为约束类示例:先查 git 历史再试错、API 失败后分析错误码、代码风格遵循 PEP 8、日志用 getLogger
用 Grep 在 CLAUDE.md 和 rules/ 目录中搜索是否已有语义相近的规则。
对每条经验标注过滤结果:
| # | 经验 | 分类 | 已有规则? | 结论 |
|---|---|---|---|---|
| 1 | [描述] | 知识/行为 | 是/否 | 写入 / 硬化:hook提案 / 硬化:台账 / 已有-跳过 |
对「行为约束类」:不写入规则。但不再止于"观察项"蒸发——若它是本次会话反复出现的错误,必须按步骤 3.5 硬化分支处理(要么 hook 提案、要么进频次台账)。仅出现一次、且明显是会话内一次性锚定的,可简要记入会话总结提醒用户关注,并在台账计 1 次(见 3.5)。
reflect 的默认输出是零新规则。成功标志不是"产出 N 条规则",而是准确识别本次会话的学习是否已在事中沉淀。
每条结论为"写入"的候选经验,在进入步骤 4 前必须通过以下两项反向测试,任一项未通过则不写规则——若其本质是行为/锚定问题(尤其反向测试 #2 判定的上下文锚定),按行为类转步骤 3.5 处理(不蒸发):
为什么需要这一步:行为约束类错误("知道但没做到")写规则无效——它不是缺知识。全局 CLAUDE.md 早有「根因优先」「事实承接」「验证手段匹配问题域」等规则,但反复违反,因为规则是被动知识,在"急于给结论"那一刻不会自动跳出来拦截,且越多越稀释。对行为类,唯一有效沉淀不是规则文字,而是硬化。本步骤替代旧版"标记观察项后无后续动作"。
进入本步骤的输入:步骤 3 测试 A 判为「行为约束类」、或反向测试判定为「上下文锚定」的反复错误。逐条执行下面三段。
与反向测试 #2 一致:若该错误的多次表现都在同一次会话内、可追溯到同一前序决策 / 同一段 context 污染(典型上下文锚定),它在没有同样污染的新会话里不会重犯。这类进台账计 1 次即可,不立即升级——一次性锚定计数低,不该触发硬化。真正要硬化的是跨会话反复出现的模式。(这正是台账与反向测试 #2 的和解点:一次性的累计低、自然不升级;反复的才累积到阈值。)
记录前,先确认该模式是否已沉淀过——这是防"reflect 没进化"的闭环关键:
grep 频次台账 ~/.claude/logs/behavioral-friction.jsonl 的 pattern 字段(按稳定 slug 匹配同一模式)grep 项目 memory/ 与全局 CLAUDE.md,看是否已有相关观察
| 能否被 harness 在不依赖 LLM 的情况下机械检测(grep 工具命令 / 响应即可命中)? | 出路 |
|---|---|
能(例:PowerShell 工具传 ssh 远程命令含 $() 被本地求值 → 命令文本含 ssh + $( 可正则命中) | 产出 hook 提案:注明 hook 类型(PreToolUse / PostToolUse / UserPromptSubmit)+ 触发信号(正则 / 关键词)+ 动作(PreToolUse 经 hookSpecificOutput.additionalContext 注入提醒不阻断 / exit 2 阻断 / 写台账)。交用户确认后落地到 ~/.claude/hooks/ 并注册 ~/.claude/settings.json。现成模板:~/.claude/hooks/ssh-subexpr-local-eval-warn.sh(本 feature 试点,PreToolUse 提醒型)、root-cause-on-retry.sh(UserPromptSubmit 关键词拦截型)、neuromem-recall-gate.sh(exit 2 阻断型) |
| 不能(例:"把非目标环境当验证""反复换根因假设"——无自动探测器) | 记入行为错误频次台账(跨会话累计),到阈值由 3.5.2 自检触发升级评估。现成模板:~/.claude/hooks/powershell-friction-{collect,remind,status}.ps1 这套台账 |
行为错误频次台账与 powershell-friction 台账有本质区别,reflect 输出时须如实说明:
powershell-friction 靠 PostToolUse 自动签名扫描采集(harness 能 grep 出信号),不依赖 LLM→ 只有"能机械检测"那一类才能做成真正的 hook 强制(不依赖 LLM)。不要把认知台账当成 airtight 强制交付,否则用户会发现它照样漏,又一轮"reflect 没进化"。
~/.claude/logs/behavioral-friction.jsonl){"ts":"YYYY-MM-DDTHH:MM:SS","pattern":"<稳定 slug,跨会话计数同一模式用>","category":"mechanical|cognitive","session_hint":"<会话主题一句话>","description":"<错误一句话描述>","upgrade_candidate":true|false}
pattern 必须是稳定 slug(如 non-target-env-as-validation、switch-rootcause-without-falsify、ssh-subexpr-local-eval),同一模式复现时复用同一 slug,否则无法正确累计。目录 / 文件不存在时先创建(仿 powershell-friction-collect.ps1 的建目录逻辑)。
行为类教训不再止于"观察项"——要么 hook 提案、要么 进台账,不许蒸发。reflect 跑完,对每条行为类反复错误的输出必须是 hook 提案 或 台账记录条目(含是否到阈值升级的判定)。
将通过过滤的知识类经验抽象为简洁规则(3-5行),判断写入位置:
| 优先级 | 写入位置 | 判断标准 |
|---|---|---|
| 1. 全局 rules 文件 | ~/.claude/rules/<topic>.md | 跨项目通用,且已有同主题 rules 文件(如 python-development.md)。先 ls ~/.claude/rules/ 检查 |
| 2. 全局 CLAUDE.md | ~/.claude/CLAUDE.md | 跨项目通用,但无匹配的 rules 文件,或属于工作流偏好/协作规范 |
| 3. 项目规则 | 项目根目录 CLAUDE.md | 仅限当前项目的架构/API 特定知识 |
| 4. Auto Memory | ~/.claude/projects/*/memory/ | 参考性经验、历史决策记录 |
决策流程:全局规则优先写入已有的同主题 rules 文件(保持 CLAUDE.md 精简),只有没有匹配的 rules 文件时才写入 CLAUDE.md。