self-correction-loop 属于 codewithmukesh/dotnet-claude-kit 技能集,用于把用户的每次纠正转化为可复用的长期规则。
用途:在 Claude 输出被用户纠正后,不只修正当前结果,还捕获背后的通用经验,写入项目记忆文件 MEMORY.md,使后续会话自动遵循。
主要能力与流程:
- 检测纠正:如“应该用 X 而不是 Y”“这里不这么做”“以后总是/从不做 X”等信号。
- 确认理解:复述纠正内容。
- 归纳泛化:把具体纠正升级为类级别规则,例如把“CreateOrder 处理器里别用 DateTime.Now”泛化为“所有生产代码使用 TimeProvider 而非 DateTime.Now/UtcNow”。
- 查重:扫描 MEMORY.md,有相关规则则更新,无则新增。
- 存储:按分类写入 MEMORY.md。
- 确认:告知用户已捕获的规则。
组织格式:MEMORY.md 按分类组织,分类包括 Code Style、Architecture、Naming、Data Access、API Design、Testing、Configuration、Performance;每条规则一行,可执行,破折号后附理由。
维护机制:会话开始时先读取 MEMORY.md 并主动应用规则;每 5-10 次会话或规则超过 50 条时审计,去重、合并、删除过时或矛盾规则、必要时拆分分类。
反模式:只修不记、规则过窄、从不复查记忆、把会话临时上下文当永久规则。
决策要点:用户明确纠正或说“记住/总是/从不”时捕获;同一纠正出现两次说明优先级高;只捕获可复用模式,一次性任务不存;规则冲突保留最新;用户要求遗忘立即删除;仅观察到但未确认的模式改用 instinct-system 技能(置信度 0.3),达到 0.9 后提升为 MEMORY.md 规则。
限制:资料未提供安装命令、平台支持、收费情况与具体运行环境,这些暂未提供。