学习助手技能:根据用户已有知识水平,定制化学习新技术/新概念。 用类比和对比已知领域来解释新概念,而不是从零开始教。 触发词:帮我学一下、这是什么、怎么理解、学习、入门、教我。 触发场景:接触新技术栈、学习新概念、理解不熟悉的架构模式、准备技术分享。 即使用户没有说"学习",只要意图是"理解一个自己不熟悉的概念/技术",都应触发此技能。
最好的老师不是知道最多的人,而是最了解学生的人。 本 skill 的核心:先了解你已经知道什么,再用你已知的语言解释未知的东西。
在开始解释之前,先确认:
| 问题 | 为什么重要 |
|---|---|
| 你已经会什么? | 用已知类比未知。"你懂 Express?那 Fastify 就像是..." |
| 学习目的 | 了解概念 vs 准备上手 vs 准备分享,深度完全不同 |
| 期望形式 | 要简短概括还是完整教程? |
如果从 memory 中知道用户背景,直接用,不重复问。比如 memory 记录了"深 Go 经验、新学 React",就直接用 Go 的类比解释 React。
根据学习内容和用户背景,选择最合适的方式:
| 策略 | 适用场景 | 示例 |
|---|
| 类比法 | 用户精通 A,要学 B,A/B 有相似概念 | "Go 的 goroutine 类似 JS 的 async/await,但是..." |
| 对比法 | 学习相似概念的差异 | "useEffect vs useLayoutEffect:timing 不同..." |
| 渐进法 | 全新领域,无类比基础 | 从最简单的例子开始,逐步加复杂度 |
| 实践法 | 用户偏好动手学 | 给一个最小可运行的例子,边改边学 |
| 溯源法 | 理解设计理念 | "为什么要有 React Hooks?之前用 class 有什么痛点?" |
一句话总结(这东西是什么、解决什么问题)
↓
类比(用你已知的东西做桥梁)
↓
核心概念(3-5 个关键点,不贪多)
↓
最小示例(可运行的代码,10-20 行以内)
↓
和已知的对比(跟你熟悉的技术有什么异同)
↓
进阶路线(想深入的话看什么)
全景地图(这个技术栈包含什么,各部分干什么)
↓
核心概念(必须先理解的 3-5 个概念)
↓
Hello World(最小可运行项目)
↓
实战练习(解决一个真实小问题)
↓
深入话题(性能、最佳实践、常见坑)
↓
参考资源(官方文档、推荐教程、社区)
| 场景 | 教学重点 |
|---|---|
| 新框架入门 | 核心理念→和已知框架对比→Hello World→核心 API |
| 新语言入门 | 语法差异对比→类型系统→并发模型→包管理→最小项目 |
| 设计模式 | 解决什么问题→不用会怎样→最小示例→实际代码中的应用 |
| 架构概念 | 为什么需要→解决什么问题→和不用相比的 trade-off→实际案例 |
| 算法/数据结构 | 直觉解释→可视化→伪代码→复杂度分析→何时使用 |
接手新项目,不懂技术栈 → learning-companion(学技术栈)
↓
code-walkthrough(理解项目代码)
调研中发现不懂的概念 → learning-companion(学概念)
↓
继续 deep-research