AI编程 · 架构思考 · 技术人生

Claude Reflect:将对话反馈转化为智能配置

#冲浪推荐:AI工具与技术精选导航
智谱 GLM,支持多语言、多任务推理。从写作到代码生成,从搜索到知识问答,AI 生产力的中国解法。

Claude Reflect 工作流程

Claude Reflect 是什么

Claude Reflect 是一个 Claude Code 的自学习插件。它的核心功能很简单:自动捕获你对 Claude 的纠正和偏好,写入配置文件,让 Claude 在未来的对话中记住这些经验。

举个例子:

  • 你说”不要用 var,用 const”,它记住
  • 你说”测试文件放在 __tests__ 目录”,它记住
  • 你纠正”这个函数应该返回 Promise”,它也记住

下次 Claude 写代码时,这些偏好会自动生效。不用每次重复。


安装

两条命令:

# 1. 添加 marketplace
claude plugin marketplace add bayramannakov/claude-reflect

# 2. 安装插件
claude plugin install claude-reflect@claude-reflect-marketplace

重启 Claude Code 即可。

系统要求:Python 3.6+,支持 macOS / Linux / Windows。


使用方法

日常使用:什么都不用做

插件通过 Hooks 自动运行。你正常和 Claude 对话,当你做出纠正或表达偏好时,插件会静默捕获并放入队列。

审核队列:/reflect

当你准备好审核时,运行:

/reflect

Claude 会列出所有捕获的学习项,你逐条确认:
接受:写入 CLAUDE.md
拒绝:丢弃
修改:编辑后写入

其他命令

命令 用途
/reflect --scan-history 扫描所有历史会话,找出遗漏的学习项
/reflect --dry-run 预览变更,不实际写入
/reflect --targets 显示配置文件路径
/reflect --dedupe 语义去重,合并相似条目

工作原理

架构概览

用户输入
    ↓
┌─────────────────────────────────────┐
│  Hook: UserPromptSubmit             │
│  ├─ 正则匹配(实时捕获)               │
│  └─ 放入 learnings-queue.json       │
└─────────────────────────────────────┘
    ↓
┌─────────────────────────────────────┐
│  /reflect 命令                       │
│  ├─ 语义分析(AI 验证)                │
│  ├─ 过滤误报                          │
│  └─ 人工审核确认                       │
└─────────────────────────────────────┘
    ↓
写入 CLAUDE.md / AGENTS.md

两阶段处理

第一阶段:实时捕获(Hooks)

插件注册了三个 Hooks:

{
  "hooks": [
    {
      "event": "UserPromptSubmit",
      "command": "capture_learning.py"
    },
    {
      "event": "PreCompact",
      "command": "check_learnings.py"
    },
    {
      "event": "PostToolUse",
      "pattern": "Bash",
      "command": "post_commit_reminder.py"
    }
  ]
}
  • UserPromptSubmit:每次你发送消息时触发,检测纠正语句
  • PreCompact:上下文压缩前提醒处理队列
  • PostToolUse:Bash 命令后检查提交提醒

capture_learning.py 从标准输入读取 JSON 格式的 prompt,调用 detect_patterns() 进行正则匹配,匹配成功则写入队列。

第二阶段:语义验证(/reflect)

正则匹配快但粗糙,会产生误报。/reflect 触发 AI 语义分析:

def semantic_analyze(message):
    result = subprocess.run(
        ["claude", "-p", "--output-format", "json"],
        input=ANALYSIS_PROMPT + message,
        capture_output=True
    )
    return parse_response(result.stdout)

AI 会判断:
is_learning: 这是否是一个可学习的偏好?
confidence: 置信度分数
type: correction / positive / explicit

置信度低或类型不匹配的会被过滤。

检测模式

插件识别以下类型的表达:

类型 示例
纠正 “不要用 X,用 Y”、”应该是…”、”这样不对”
正向反馈 “对,就这样”、”完美”、”记住这个做法”
显式指令 “以后都…”、”记住:”、”总是…”

正则模式在 reflect_utils.pyCORRECTION_PATTERNS 中定义。

配置文件输出

学习项最终写入三个可能的位置:

文件 作用域
~/.claude/CLAUDE.md 全局偏好,所有项目生效
./CLAUDE.md 项目级规则,仅当前项目生效
AGENTS.md 跨工具兼容(Cursor、Aider、Zed 等)

目录结构

claude-reflect/
├── .claude-plugin/     # 插件清单,用于注册
├── hooks/
│   └── hooks.json      # Hook 事件定义
├── scripts/
│   ├── capture_learning.py      # 实时捕获脚本
│   ├── check_learnings.py       # 压缩前检查
│   ├── post_commit_reminder.py  # 提交后提醒
│   └── lib/
│       ├── semantic_detector.py # AI 语义分析
│       └── reflect_utils.py     # 队列管理、模式匹配
└── commands/
    └── reflect.md      # /reflect 命令定义

为什么需要这个工具

Claude Code 的 CLAUDE.md 是一个强大的个性化机制。问题是:手动维护太麻烦。

你每天和 Claude 对话几十次,每次纠正都是一次学习机会。但谁会记得把”不要用分号”这种小事写进配置文件?

Claude Reflect 自动化了这个过程:
1. 捕获发生在对话中的自然纠正
2. 过滤掉噪音(问题、临时指令)
3. 让你审核后一键写入

本质上,它把 Claude Code 从”每次对话重新开始”变成了”持续学习的助手”。


适用场景

  • 团队项目:统一编码规范,新人加入直接继承团队偏好
  • 个人开发:积累个人代码风格,减少重复沟通
  • 跨项目:全局偏好 + 项目特定规则分离管理

局限性

  1. 需要 Claude Code CLI:这是 Claude Code 的插件,不是 API 或 Web 版
  2. Python 依赖:Hook 脚本用 Python 写,需要 Python 3.6+
  3. 语义分析消耗 Token:每次 /reflect 会调用 Claude 进行语义验证

总结

Claude Reflect 解决了一个真实痛点:让 Claude 记住你的偏好。

技术实现不复杂:Hook 捕获 + 正则初筛 + AI 精筛 + 人工确认。但设计上很聪明——两阶段处理平衡了实时性和准确性,人工审核保证了可控性。

如果你是 Claude Code 的重度用户,值得试试。

项目地址:github.com/BayramAnnakov/claude-reflect

赞(0)
未经允许不得转载:Toy's Tech Notes » Claude Reflect:将对话反馈转化为智能配置
免费、开放、可编程的智能路由方案,让你的服务随时随地在线。

评论 抢沙发

十年稳如初 — LocVPS,用时间证明实力

10+ 年老牌云主机服务商,全球机房覆盖,性能稳定、价格厚道。

老品牌,更懂稳定的价值你的第一台云服务器,从 LocVPS 开始