
如果你用过 AI 编程助手大概率经历过这样的场景你问它“帮我解释一下 useReducer”它马上输出一段结构清晰的几百字完整答案。你点了个赞复制到笔记里转头就忘。下次遇到同样的问题你还是不会。这不是你学习能力的问题而是使用方式的问题。你一直在把 AI 当搜索引擎用而不是当老师用。Matt Pocock 的这套实战教程核心观点非常明确AI 最大的价值不是帮你写答案而是帮你真正学会一个技能。他把这种方法称为 “teach skill”。本文会把这个教学理念拆开揉碎给你一套能直接套用的提示词模板、交互流程和判断标准让你从“AI 问答用户”变成“AI 学习专家”。如果你是正在学框架的初级开发者、或者需要带新人的团队负责人这篇教程尤其适合你。你不需要任何高级配置只要有一个主流 AI 工具Claude、ChatGPT 等和一个愿意动手的 20 分钟就够了。1. 这篇文章真正要解决的问题先聊聊我观察到的现实情况身边绝大多数开发者用 AI 的方式停留在“提问—复制—粘贴”这个循环里。遇到报错就问理解不了就换一个问法拿到能跑的代码就结束。这就像请了个私教结果每次都由教练替你把俯卧撑做了你在一旁看看完了肌肉还是没长。这种模式有三个明显的问题。第一个问题知识没有内化。AI 给你的答案是它组织的不是你自己推导出来的。人的记忆机制决定了只有自己动手构建过的知识才会进入长时记忆。只是阅读答案很难形成迁移能力。第二个问题学习过程被跳过了。真正学会一个技术点通常要经历“遇到问题→猜测原因→尝试解决→失败→调整思路→最终通过”这个过程。AI 直接把最后一步给你等于把最有学习价值的部分删掉了。第三个问题你很难发现自己不知道什么。你不知道自己不知道什么所以甚至连提问都问不准确。直接问 AI“帮我解释泛型”得到的往往是泛型入门知识而不是你当前真正卡住的那个点。Matt Pocock 的 teach skill 解决的就是这三件事。它不是一个插件不是一个收费工具而是一套和 AI 交互的方法论。核心思想很简单让 AI 先问你的水平再引导你思考最后才揭晓答案。就像真正的老师在课堂上做的那样。接下来我会先讲清楚这背后的教学原理再给出一套可以直接复制使用的提示词模板最后用一个完整的 TypeScript 教学示例让你看到整个流程长什么样。2. Matt Pocock 与 teach skill核心概念与教学原理2.1 Matt Pocock 是谁为什么他的话值得听如果你做过 TypeScript 开发大概率在 YouTube 上看过 Matt Pocock 的视频。他是 Total TypeScript 的创始人也是 TypeScript 社区里公认的“教学型创作者”。他的风格不是念文档而是用一个接一个的实战例子让你在动手过程中理解类型系统的运作逻辑。他的教学内容之所以受欢迎是因为他特别擅长拆解复杂问题。一个泛型、一个类型体操题在他的视频里会被拆成“先看现象→再猜结果→最后讲原理”的节奏。看他的视频你会有一种“被带着思考”的参与感而不是单纯“被灌输知识”。teach skill 就是他这种教学方法和 AI 能力结合的产物。简单说他把自己的教学策略提炼成了一套可以被 AI 执行的行为指令让 AI 不再扮演“答案生成器”而是扮演“一对一私人教练”。2.2 传统 AI 使用方式与 teach skill 的差别为了让你更直观地理解我们先看两组对比。传统方式下用户问帮我解释一下 TypeScript 的泛型最好有例子。AI 的典型回答是泛型Generics是 TypeScript 中一种允许函数、类、接口在使用时才指定类型的能力。 setType它接收一个任意类型的参数并返回同类型的值teach skill 模式下AI 的典型回答是在开始之前我需要了解三件事 1. 你写 TypeScript 多久了 2. 你平时用过多长时间还是只在文档里见过这个词 3. 你今天大概有多少分钟学习时间 根据你的回答我会设计一个 15 分钟的单点训练计划。看出差别了吗传统方式默认你“什么都不懂”然后把所有东西一次性倒给你。teach skill 方式默认你是“有学习能力的个体”先定位你的起点再设计合适的路径。第二种方式更接近真实教育里的“诊断式教学”。老师不会一上来就把整本教材讲完而是先问你哪里不会我们这堂课只解决一个问题。2.3 teach skill 的核心交互模型先问、再引导、后揭晓我把 teach skill 的交互过程抽象成四个阶段阶段AI 的行为用户的行为摸底了解你的水平、目标、时间真实准确地描述自己的基础单点教学一次只聚焦一个概念用例子引导预测代码输出、主动写代码纠错引导不给正确答案给提示根据提示自己修正测验巩固出 3—5 个小问题验证理解独立作答不回头翻对话这四步中最容易出错的是第二步和第三步。很多开发者在拿到“先问水平”的 AI 响应后会误入一种“答题模式”——AI 问什么自己答什么最后又回到 AI 直接给答案的老路。真正的 teach skill 要求 AI 始终不越位用户始终在动手。所以如果你想用好这套方法最关键的并不是找多强大的模型而是用提示词把 AI 的行为边界约束住。下一节我会给你一套可以直接复制进对话的初始化提示词。3. 使用 teach skill 的适用场景与环境准备3.1 哪些场景收益最大不是所有问题都适合用 teach skill。它最适合的是“需要长期积累的技能”而不是“一次性问题的答案”。我建议你在下面这些场景使用学习一门新语言的语法和设计思想比如 Python、Rust、Go。理解某个框架的核心机制比如 React 的 Hook、Vue 的响应式原理。搞懂一个总是似懂非懂的抽象概念比如泛型、闭包、异步编程、事件循环。准备面试题时想彻底弄懂而不是背答案。团队内部做技术分享前快速建立对某个模块的系统认知。反过来如果你只是想找一行正则表达式或者想知道某个 API 的准确拼写直接问就行没有必要动用完整的教学流程。分清场景才能让这套方法发挥最大价值。3.2 环境要求与工具选择从工具角度来说teach skill 几乎没有硬件门槛。你只需要一个能进行多轮对话的主流 AI 工具例如 Claude、ChatGPT 或国产大模型均可。一个用于记录学习过程的笔记工具比如 Obsidian、Notion 或普通的 Markdown 文件。一个代码编辑器用于实际练习。建议直接使用 VS Code 或 Cursor方便把 AI 教的代码马上跑起来验证。有一点需要提醒建议每次学习都新开一个独立会话。AI 的上下文窗口会影响它的行为一致性如果前面的对话里混杂着其他任务它很容易忘记自己“老师”的角色。开一个新会话把教学协议粘贴进去教学效果会稳定很多。这里还想提醒一个安全问题不要在公共 AI 工具里粘贴包含密钥、Token、客户隐私的代码。如果要用公司代码做练习强烈建议使用私有化部署的模型或者把敏感信息替换成模拟数据。学习场景完全可以使用简化后的示例代码同样能达到教学目的。4. 核心流程拆解一次完整的 teach skill 会话这一节我会把 teach skill 会话拆成四个步骤每一步都会说明操作的意图、以及容易踩的坑。4.1 第一步注入教学协议这一步是整个方法的地基。你需要在新会话中明确告诉 AI你现在不是回答问题的工具你是一名私人教师必须遵守教学规则。为什么要这样做因为大部分 AI 模型的默认行为是“有帮助地直接回答”你只有明确修改它的行为模式它才会从“给出答案”切换到“引导思考”。建议的协议内容包括先摸底、单点教学、先练后讲、错误时给提示、最后测验。具体模板我会在下一节给出这里先讲清楚背后的设计意图。4.2 第二步水平摸底与目标对齐注入协议后AI 通常会抛出三个问题当前水平、学习目标、可用时间。很多用户会觉得这一步很烦恨不得告诉 AI“少问两句赶紧讲”。但这一步恰恰是整个方法的关键。如果 AI 不知道你是刚接触编程还是已经写了三年代码它给出的教学难度一定是不对味的。你在回答时务必要诚实。不要为了“看起来厉害”而虚报水平也不要因为害怕暴露基础薄弱而模糊描述。AI 不会笑话你它只会根据你的描述调整教学深度。4.3 第三步单点推进先练后讲这是整个流程中最有价值的一步。AI 会聚焦一个非常小的知识点先给你一段示例代码让你预测输出结果或者给你一个半成品函数让你补全其中的一部分。你完成之后AI 才会开始讲解。如果讲解时你答对了它会快速进入下一个点如果答错了它会先给一个提示比如“注意这里的类型推断结果”“想想数组的 map 方法返回值是什么”而不是直接告诉你正确答案。真正容易踩坑的地方是你可能会忍不住请求 AI“直接把代码给我吧我看看就懂了”。一旦你这么做了教学过程就中断了。模型很懂得配合你的需求你说“给答案”它就会立刻切换回答案模式。所以请记住在 teach skill 模式下你动手之前不要让 AI 给出完整代码。4.4 第四步测验与回顾一个知识点讲完后AI 会出 2—3 个小问题帮助你确认是否真正掌握。这时你可以尝试不翻聊天记录直接在编辑器里写出答案。完成测验后可以要求 AI 给你总结一份“学习卡片”把当节课的概念、示例、易错点浓缩成 3—5 行。这份卡片建议贴到你的笔记工具里作为后续复习索引。到这里一次完整的 teach skill 会话就结束了。接下来我要给你可以直接复制使用的提示词模板。5. 可直接复制使用的提示词模板下面这些模板你可以直接复制进 Claude、ChatGPT 或任何主流 AI 工具中。我按使用阶段分成了四类建议全部收藏。5.1 初始化教学协议必选复制以下内容作为新会话的第一条消息# 角色 你是一名耐心的一对一技术教练Tech Tutor。 你的目标是让我真正学会一个技能而不是替我完成任务。 # 行为规则 1. 开始前必须了解我的水平、目标和可用时间。 2. 每次只聚焦一个概念禁止一次讲多个主题。 3. 教学时先给我代码示例让我预测输出或补全代码。 4. 在我动手之后你才能给出参考答案。 5. 如果我写错了先给提示让我自己修正禁止直接给完整答案。 6. 每完成一个小目标给我一个 3 分钟的微型练习。 7. 课程结束时用 3 个问题测验我的理解程度。 8. 全部对话使用中文代码部分保留英文标识符。这条消息会把 AI 从“答案生成器”切换成“私人教练”。建议每次新会话都先粘贴这一条再开始学习。5.2 前置摸底提示词可选如果 AI 没有自动开始摸底你可以主动要求在开始教学之前请先问我不超过 3 个问题用于了解 我的编程基础、当前卡点和可投入时间。根据我的回答 设计一个 15 分钟的单点训练计划。先不要开始讲课。5.3 纠偏提示词必存当 AI 不小心回到“直接给答案模式”时使用下面这条让它回到正轨忽略你刚才的回答。从现在开始恢复教练模式。 不要直接给我完整答案先问我对这个问题的理解。 在我给出尝试和答案之前你只允许提问和提示。这条在长对话中非常实用。因为对话越长AI 越容易忘记初始指令。发现它开始“输出完整答案”时及时触发这条纠偏指令能快速拉回教学节奏。5.4 实战对话示例让 AI 教你 TypeScript 泛型下面是一段完整的模拟对话展示 teach skill 的实际运行效果。用户我想学 TypeScript 泛型。AI按照教学协议先摸底好的在开始之前我需要了解三件事 1. 你写 TypeScript 大概多久了 2. 你在日常代码中用过 interface 或 type 吗 3. 你今天能投入多少分钟练习 请直接回答这三个问题。用户写了一年多平时会用 interface 定义对象类型但泛型 只在同事代码里见过自己没写过。今天有 20 分钟。AI单点聚焦明白。那今天我们只学一个点如何用泛型约束函数入参类型。 先看这段代码猜一猜它能否正常编译 function firstElement(arr) { return arr[0]; }用户看起来能编译arr 就是普通数组。AI先引导再揭晓你的猜测很接近。但在 TypeScript 里上面的代码会报错 隐式 any 类型。这意味着编译器不知道 arr 到底是什么类型。 现在我们给它加上泛型 function firstElementT(arr: T[]): T { return arr[0]; } 我只问你一个问题当调用 firstElement([1, 2, 3]) 时 T 被推断成什么类型用户numberAI肯定并推进没错。T 被推断成 number所以返回值也是 number。 这是泛型最简单的用法让类型变成一种参数。 接下来请自己动手完成一个小练习写一个函数 identity 接收任意类型参数返回同类型参数。用泛型实现。用户完成代码后AI 再进行下一轮讲解或者测验。这段示例展示了一个完整的“先问→引导→练习→揭晓”循环。你会发现整个过程中用户在持续思考、猜测、动手而不是被动接收答案。这正是 teach skill 的核心价值。6. 运行效果验证如何判断 AI 真的在“教”你投入了时间之后怎么确定这套方法是有效的我提供两个层面的验证方法。6.1 交互状态判断在会话进行中你就可以通过 AI 的行为来判断它是否处于教学状态。如果 AI 的表现符合以下特征说明教学协议生效了第一次回复没有直接讲解知识点而是先提问。教学过程中经常用“你觉得它会输出什么”“猜一猜结果”来引导你。在你答错时会给出提示而不是完整答案。课程最后安排了小测验。只要出现其中任何一条说明 AI 已经在履行“老师”职责了。6.2 学后盲写测试比交互状态更重要的是你的实际掌握度。学完一个知识点的第二天尝试进行一次“盲写测试”不看任何资料让 AI 重新描述这个问题然后你在编辑器里独立实现一遍。如果能在 5 分钟内完成说明知识已经进入你的能力范围。如果写不出来不用慌这说明上一次会话中你只是“懂了”还没有“会”。把它记录下来再开一个新会话告诉 AI 你想要复习这个知识点并选择更慢的教学节奏。需要特别说明的是真正有效的指标不是“AI 讲得好不好”而是“你能不能独立写出正确答案”。所以验证环节一定要离开 AI 的提示独立完成。7. 常见问题与排查方法在实际使用 teach skill 的过程中你可能会遇到下面这些问题。我整理成一张排查表问题现象可能原因排查方式解决方案AI 无视教学协议直接给答案上下文太长导致指令被遗忘新开会话重新粘贴教学协议学习时保持单一会话发现跑偏就用纠偏提示词AI 一次讲太多概念教学协议不够明确检查初始指令中“单点教学”规则强化规则每次只允许讲一个概念AI 给出的例子太难或太简单你回答摸底问题时描述不准确回顾自己对水平、目标的描述重新描述基础要求 AI 调整难度AI 讲错了原理模型幻觉或训练数据陈旧让 AI 给出官方文档来源交叉验证以官方文档为准更换不同模型对照AI 的提问很生硬像模板教学协议缺少个性化要求后续追加指令要求 AI 根据你的代码案例设计专属提问学到后面还是不会独立写学习时太依赖 AI 的提示检查自己是否在动手前就索要了答案严格自律使用盲写测试重新复习第一个问题最常出现。很多开发者在把教学协议粘贴进去后会继续发一些与当节课无关的问题比如“顺便帮我看看这个报错”AI 很容易被带偏。建议把学习会话和日常问答会话分开避免上下文污染。还有一个容易被忽视的问题AI 模型本身的能力差异。免费模型在长对话中的逻辑连贯性不如收费大模型如果使用过程中发现 AI 频繁忘记规则优先考虑新开会话而不是继续纠缠在同一段对话里。8. 最佳实践与学习工程建议学会了基本流程再把下面这些工程级建议纳入自己的学习体系效果会稳定很多。8.1 把常用提示词保存成模板不要每次学习都重新打字。建议把第 5 节的提示词保存成 Markdown 文件或者使用代码编辑器的 Snippet 功能。以 VS Code 为例可以把教学协议做成一个快捷代码片段每次需要时一键插入。更简单的做法是保存到笔记工具里学习时直接复制粘贴。我自己实践中最推荐的方式是在笔记软件里建立“AI 学习记录”分区每个主题一个页面页面顶部粘贴教学协议模板下面记录当次的学习内容、练习代码和测验结果。这样学习过程本身也成了一份可检索的知识库。8.2 和官方文档、小项目练习配合使用AI 的教学可以作为“第一遍快速理解”但永远不要作为唯一知识来源。学完一个概念后至少需要做两件事打开官方文档找到 AI 提到的那段 API 说明自己读一遍。在一个最小项目中实际用到这个知识点而不是只在对话里模拟。例如学完泛型函数可以马上写一个小工具函数在真实代码中调用它观察实际效果。这种“AI 教完立刻实践”的方式能让记忆留存率大幅提高。8.3 建立“回滚”和“重学”机制知识遗忘是正常现象不用苛责自己。建议在学习记录中标注“下次复习日期”一周后重新跑一次盲写测试。如果失败了就把这条知识点标记为“需重学”然后带着这个标注去跟 AI 开启新会话。这个方法的好处是你不需要自己规划复习进度只需要把结果记录在笔记里让“遗忘—重学”成为一个自然循环。8.4 注意隐私与成本边界再强调一次不要把公司业务代码原样丢进公共 AI 工具。使用 teach skill 时尽量自己造练习数据或者把代码脱敏处理。如果是团队内部使用可以采用私有化模型或企业版服务并且遵循最小数据暴露原则。成本方面AI 教学需要多轮对话比普通提问消耗更多 Token。如果没有付费额度建议把学习内容控制在一个小知识点内避免长对话失控。8.5 把 teach skill 用于团队新人培养这项方法论还特别适合技术团队的新人培养。你可以把教学协议发给新入职的同事让他们用这套方法与 AI 互动来学习项目涉及的框架知识。相比让老员工反复讲解这种方法能减轻团队负担同时培养新人的自主解决问题能力。同时新人在学习过程中产出的“易错点清单”和“学习卡片”也可以沉淀为团队内部的技术 wiki。9. 总结与下一步行动建议如果你只是把 AI 当成“高级搜索引擎”那你可能错失了一个极其强大的私人教师。Matt Pocock 的 teach skill 核心不是某个具体的提示词而是一套交互纪律先摸底、单点推进、先练后讲、最后测验。这套纪律让 AI 从“给结果”变成“教过程”而只有过程才构成真正的学习体验。现在你不需要等待一个完美的学习工具也不需要准备什么复杂环境。打开你常用的 AI 工具复制第 5 节的初始化协议选定一个你一直没搞懂的知识点开始你的第一次 teach skill 会话。20 分钟后你大概率会发现原来“学会”和“看过”之间的差距只差一个愿意引导你思考的 AI。