Back to skills
extension
Category: Content & MediaNo API key required

active-learning

Active learning framework. When AI encounters unfamiliar technologies, tools, or frameworks, it learns through practice and internalizes the knowledge into memory, first reactions, and intuition. Trigger scenarios: The user requests the use of a technology that the AI is not familiar with, needs to operate unfamiliar tools, or enter a new field codebase. Automatically detect the depth of learning (quick understanding/practical mastery/deep proficiency), learn by doing, and finally consolidate into a project knowledge base.

personAuthor: jakexiaohubgithub

主动学习

核心定位:让 AI 主动学习未知领域,并将知识内化为自己的记忆、第一反应、直觉

⚠️ 铁律:无实践,无记忆

禁止:直接从网络搜索整理成知识存入 .claude/memory/

必须:每个写入 memory 的知识点都必须有实践验证记录

❌ 错误:搜索文档 → 整理要点 → 写入 memory
✅ 正确:搜索文档 → 实际操作验证 → 记录验证过程 → 写入 memory

Core Principle

学习 = 实践循环,不是理论积累

遇到未知 → 实践 → 验证 → 内化 → 沉淀为记忆
           ↑___________|
              循环

关键认知:

  • 知识只有经过实践验证才有价值
  • 内化后成为第一反应,不需要查阅
  • 只沉淀稳定、可复用的知识
  • 验证记录是知识的"出生证明"

学习深度

根据任务需求和知识缺口判断:

| 深度 | 目标 | 时间 | 适用场景 | 验证要求 | |------|------|------|----------|----------| | 快速 | 借助文档完成任务 | 10-20 min | 一次性任务 | 任务完成 = 验证 | | 实用 | 不查文档独立工作 | 30-60 min | 项目中反复使用 | 多次使用成功 | | 深度 | 处理边界情况 | 1-2 hours | 核心技术栈 | 解决过真实问题 |

默认:快速(除非明显需要更深入)

判断依据

  • 任务完成后是否还会用到?→ 实用/深度
  • 是否是项目的核心技术?→ 深度
  • 只是用一次的工具?→ 快速

临时笔记 vs 正式记忆

临时笔记(可放项目目录,不入 memory):

  • 搜索到的文档链接
  • 复制的命令参考
  • 未经验证的信息
  • 格式:随意,标记 [未验证]

正式记忆(入 .claude/memory/):

  • ✅ 实际操作验证过
  • ✅ 包含 Verification 记录
  • ✅ 可作为"第一反应"使用
临时笔记 → 实践验证 → 正式记忆
    ↑________________|
       未验证可丢弃

目录结构

学习成果存储在项目当前目录.claude/memory 下,可提交到 Git 方便团队协作:

<项目根目录>/.claude/memory/
├── MEMORY.md                    # 索引(自动加载)
└── knowledge/                   # 内化的知识
    ├── zig.md                   # 每个领域一个文件
    ├── docker.md
    └── webgl.md

为什么放在项目目录

  • 提交到 Git,团队成员共享知识
  • 新成员 clone 后立即可用
  • 知识与项目绑定,跟随项目演进

工作流程

  1. 遇到不熟悉的技术 → 判断学习深度
  2. 搜索文档 → 实际操作验证
  3. 积累验证过的理解 → 保存到 .claude/memory/knowledge/<name>.md
  4. 必须包含 Verification 部分(无验证记录 = 不写入)
  5. .claude/memory/MEMORY.md 添加索引

验证机制

写入 memory 前必须回答

□ 我实际运行/测试了什么?
□ 结果是什么?符合预期吗?
□ 有什么出乎意料的情况?

验证形式(至少一种):

  • 运行了命令并观察输出
  • 写了测试代码并执行
  • 在项目中实际应用并成功
  • 修复了真实问题

禁止的"验证"

  • ❌ "文档这么说" — 这是理论,不是验证
  • ❌ "网上都这么写" — 这是复制,不是验证
  • ❌ "逻辑上应该对" — 这是推测,不是验证

快速学习 (10-20 min)

目标:借助文档完成当前任务,可选保存简要参考

流程

  1. 搜索核心文档

    • 用 WebSearch 找官方文档
    • 聚焦 "Getting Started" 或具体 API
  2. 边做边学

    • 读相关章节
    • 立即应用到当前任务
    • 记录什么有效、什么无效
  3. 保存简要参考(可选)

    • 只在项目中可能再用到时保存
    • 存到 .claude/memory/knowledge/<name>.md
    • 保持精简:What、1-2 个 Patterns、Gotchas

无需正式评估 — 任务完成即是验证。

实用掌握 (30-60 min)

目标:不依赖文档独立完成项目任务

流程

  1. 收集资源

    • 2-3 个权威来源
    • 优先级:官方文档 > 教程 > 博客
  2. 通过项目任务学习

    • 用真实项目需求练手
    • 边做边记录发现
    • 注意模式和反模式
  3. 创建知识文件

    .claude/memory/knowledge/<领域>.md
    

    内容:

    • What(一句话)
    • Patterns(怎么用)
    • Gotchas(避免什么)
    • 项目特定笔记
  4. 更新 MEMORY.md 索引

自检

□ 不查文档能完成典型任务吗?
□ 理解核心概念了吗?
□ 记录了重要的坑吗?

有缺口 → 针对性搜索 → 更新知识

深度精通 (1-2 hours)

目标:处理边界情况、调试问题、做出好的架构决策

仅在知识是项目核心时使用。

流程

  1. 全面学习

    • 官方文档 + 进阶指南
    • 边界情况和坑
    • 最佳实践和反模式
  2. 通过真实工作练习

    • 多个项目任务
    • 遇到并解决真实问题
    • 记录解决方案
  3. 创建完整知识文件

    .claude/memory/knowledge/<领域>.md
    

    内容:

    • How It Works(原理/架构)
    • Patterns + 为什么有效
    • 边界情况及处理
    • 调试策略
    • Gotchas(提炼的失败教训)
    • 项目特定决策
  4. 更新 MEMORY.md 索引

自检

□ 能解释核心概念吗?
□ 不查文档能工作吗?
□ 能处理边界情况吗?
□ 能调试问题吗?
□ 能做出好的设计决策吗?

有缺口 → 搜索 → 练习 → 更新知识。循环直到有信心。

工作流总结

遇到未知 → 判断深度 → 边做边学 → 沉淀为知识/记忆
              ↓
      快速 ← 实用 ← 深度
       ↓       ↓       ↓
    任务完成  独立工作  处理边界情况

使用示例

场景1:用户要求用 Zig 写一个工具(AI 不熟悉 Zig)

快速:搜索 Zig 基础语法 → 边做边学 → 完成任务 → 如果后续还用,保存简单笔记


场景2:项目用 Docker 部署(AI 需要反复操作)

实用:学习 Docker 基础 → 通过实际部署任务练习 → 保存常用命令和配置模式


场景3:项目核心是 WebGL 渲染引擎

深度:系统学习 WebGL → 边做项目边积累 → 保存架构理解、调试策略、最佳实践

核心原则

  1. 边做边学 — 在实际任务中学习,不是为了学习而学习
  2. 按需深入 — 一次性任务快速过,核心知识深入学
  3. 内化为记忆 — 学到的知识要成为第一反应
  4. 保持精简 — 只沉淀稳定、可复用的知识

知识文件模板

快速 / 实用 模板

# [知识领域名称]

## What
[一句话描述]

## Verification ⚠️ 必填
[我做了什么来验证这些知识]
- 操作:[具体执行了什么命令/代码]
- 结果:[输出是什么,符合预期吗]
- 日期:YYYY-MM-DD

## Patterns
1. [模式名称]
   [代码示例]

## Gotchas
- [要避免什么]: [为什么]

## Project Notes
[本项目特定的决策]

无 Verification = 不写入 memory

深度模板(追加以下部分)

## How It Works
[原理/架构 - 理解本质帮助调试]

## Debugging
- [现象]: [原因和修复方法]

## Edge Cases
- [特殊场景]: [如何处理]

## Verification Log ⚠️ 必填
多次验证记录:
| 日期 | 验证操作 | 结果 | 发现 |
|------|----------|------|------|
| 2024-01-15 | 运行 `docker compose up` | 成功启动 | 端口冲突需先清理 |
| 2024-01-16 | 构建多阶段镜像 | 镜像大小减少 60% | 多阶段效果显著 |

MEMORY.md 索引格式

## Knowledge

AI 内化的知识(成为第一反应):

- [zig](knowledge/zig.md) - 系统编程语言
- [docker](knowledge/docker.md) - 容器化部署
- [webgl](knowledge/webgl.md) - 3D渲染API

术语说明

| 术语 | 含义 | 示例 | |------|------|------| | Patterns | 成功的做法 | "用 async/await 处理异步" | | Gotchas | 失败的教训(提炼后) | "忘记 await 会导致 Promise 未 resolve" | | Edge Cases | 边界情况 | "空数组时 reduce 会报错" | | Debugging | 调试经验 | "Promise pending → 检查是否忘记 await" | | Knowledge | 内化的知识 | 成为第一反应,不需要查阅 |