$npx -y skills add virgo777/buddyme --skill continuous-learningAutomatically extract reusable patterns from Claude Code sessions and save them as learned skills for future use.
| 1 | # 持续学习技能(Continuous Learning Skill) |
| 2 | |
| 3 | 在会话结束时自动评估 Claude Code 会话,提取可保存为已学习技能(Learned Skills)的可复用模式。 |
| 4 | |
| 5 | ## 何时激活 |
| 6 | |
| 7 | - 设置从 Claude Code 会话中自动提取模式 |
| 8 | - 为会话评估配置 `Stop` 钩子(Hook) |
| 9 | - 查看或整理 `~/.claude/skills/learned/` 中的已学习技能 |
| 10 | - 调整提取阈值或模式类别 |
| 11 | - 比较 v1(当前)与 v2(基于直觉/Instinct)的方法 |
| 12 | |
| 13 | ## 工作原理 |
| 14 | |
| 15 | 此技能在每个会话结束时作为 **Stop 钩子(Hook)** 运行: |
| 16 | |
| 17 | 1. **会话评估**:检查会话是否有足够的消息(默认:10 条以上) |
| 18 | 2. **模式检测**:从会话中识别可提取的模式 |
| 19 | 3. **技能提取**:将有用的模式保存到 `~/.claude/skills/learned/` |
| 20 | |
| 21 | ## 配置 |
| 22 | |
| 23 | 编辑 `config.json` 进行自定义: |
| 24 | |
| 25 | ```json |
| 26 | { |
| 27 | "min_session_length": 10, |
| 28 | "extraction_threshold": "medium", |
| 29 | "auto_approve": false, |
| 30 | "learned_skills_path": "~/.claude/skills/learned/", |
| 31 | "patterns_to_detect": [ |
| 32 | "error_resolution", |
| 33 | "user_corrections", |
| 34 | "workarounds", |
| 35 | "debugging_techniques", |
| 36 | "project_specific" |
| 37 | ], |
| 38 | "ignore_patterns": [ |
| 39 | "simple_typos", |
| 40 | "one_time_fixes", |
| 41 | "external_api_issues" |
| 42 | ] |
| 43 | } |
| 44 | ``` |
| 45 | |
| 46 | ## 模式类型 |
| 47 | |
| 48 | | 模式 | 描述 | |
| 49 | |---------|-------------| |
| 50 | | `error_resolution` | 特定错误的解决方法 | |
| 51 | | `user_corrections` | 来自用户纠偏的模式 | |
| 52 | | `workarounds` | 针对框架/库缺陷的解决方案 | |
| 53 | | `debugging_techniques` | 有效的调试方法 | |
| 54 | | `project_specific` | 项目特定的约定 | |
| 55 | |
| 56 | ## 钩子设置(Hook Setup) |
| 57 | |
| 58 | 添加到您的 `~/.claude/settings.json`: |
| 59 | |
| 60 | ```json |
| 61 | { |
| 62 | "hooks": { |
| 63 | "Stop": [{ |
| 64 | "matcher": "*", |
| 65 | "hooks": [{ |
| 66 | "type": "command", |
| 67 | "command": "~/.claude/skills/continuous-learning/evaluate-session.sh" |
| 68 | }] |
| 69 | }] |
| 70 | } |
| 71 | } |
| 72 | ``` |
| 73 | |
| 74 | ## 为什么使用 Stop 钩子? |
| 75 | |
| 76 | - **轻量化**:仅在会话结束时运行一次 |
| 77 | - **非阻塞**:不会给每条消息增加延迟 |
| 78 | - **完整上下文**:可以访问完整的会话记录 |
| 79 | |
| 80 | ## 相关内容 |
| 81 | |
| 82 | - [长篇指南(The Longform Guide)](https://x.com/affaanmustafa/status/2014040193557471352) - 关于持续学习的章节 |
| 83 | - `/learn` 命令 - 会话中途手动提取模式 |
| 84 | |
| 85 | --- |
| 86 | |
| 87 | ## 比较笔记(调研:2025年1月) |
| 88 | |
| 89 | ### 与 Homunculus 对比 |
| 90 | |
| 91 | Homunculus v2 采用了更复杂的方法: |
| 92 | |
| 93 | | 特性 | 我们的方法 | Homunculus v2 | |
| 94 | |---------|--------------|---------------| |
| 95 | | 观察机制(Observation) | `Stop` 钩子(会话结束) | `PreToolUse`/`PostToolUse` 钩子(100% 可靠) | |
| 96 | | 分析方式(Analysis) | 主上下文(Main context) | 后台智能体(Haiku agent) | |
| 97 | | 粒度(Granularity) | 完整技能(Full skills) | 原子化“直觉”(Atomic "instincts") | |
| 98 | | 置信度(Confidence) | 无 | 0.3-0.9 权重 | |
| 99 | | 演进路径(Evolution) | 直接生成技能 | 直觉 → 聚类 → 技能/命令/智能体 | |
| 100 | | 共享方式(Sharing) | 无 | 导出/导入直觉 | |
| 101 | |
| 102 | **来自 Homunculus 的关键见解:** |
| 103 | > “v1 依赖技能(Skills)进行观察。技能是概率性的——它们的触发频率约为 50-80%。v2 使用钩子(Hooks)进行观察(100% 可靠),并将‘直觉(Instincts)’作为学习行为的原子单位。” |
| 104 | |
| 105 | ### 潜在的 v2 增强功能 |
| 106 | |
| 107 | 1. **基于直觉的学习** - 带有置信度评分的更小、原子化的行为 |
| 108 | 2. **后台观察者** - 并行分析的 Haiku 智能体 |
| 109 | 3. **置信度衰减** - 如果发生冲突,直觉的置信度会降低 |
| 110 | 4. **领域标签** - 代码风格、测试、Git、调试等 |
| 111 | 5. **演进路径** - 将相关的直觉聚类为技能/命令 |
| 112 | |
| 113 | 参见:`/Users/affoon/Documents/tasks/12-continuous-learning-v2.md` 获取完整规范。 |