你的 AI 一直在表扬你,所以你什么都没学会——一个不让你蒙混过关的 Claude Code 插件
一个 Claude Code 插件,叫 stubborn-coach。它做的事很简单:不让你蒙混过关。

一个 Claude Code 插件,叫 stubborn-coach。它做的事很简单:不让你蒙混过关。
项目地址:https://github.com/jingranburangyongzhongwen/stubborn-coach
文章目录
一个你不愿意承认的事实
你打开 ChatGPT,扔进去一篇 30 页的论文:
“帮我讲讲这个。”
它用流畅得不像话的中文,给你一份结构清晰的总结。你一边滑动鼠标一边点头:嗯,是这样。嗯,有道理。嗯,明白了。
读完,关闭。
第二天朋友问你那篇 paper 讲了什么,你卡了三秒,给出一个比 AI 总结模糊十倍的复述。
恭喜,你刚刚和 AI 一起完成了一次学习行为艺术:动作完整,结果归零。
——这未必是你记性差。这更像是因为,你根本就没学。你只是观看了一场关于"学习"的演出,主演是 AI,你是观众。
学习的本质,是被问问题
回想一下你小时候真正学会一件事的瞬间——
不是老师讲完那一刻,而是老师讲完之后,叫你上去做一道题那一刻。
你站起来,粉笔在手里发烫,盯着黑板,感觉到大脑里某个原本糊在一起的东西,第一次必须说清楚——它要么对,要么错;要么你会,要么你不会;没有"嗯,是这样"可以躲。
那种被审视的、不舒服的、你不能装懂的状态,是学习真正发生的地方。
而今天大多数对话式 AI 学习工具,都在帮你绕开这个时刻。
你和 AI 的对话往往像这样:
AI:……所以注意力的本质是加权平均。
你:嗯,懂了,继续。
AI:好的,下面讲多头注意力。
你:嗯,懂了,继续。
AI:很好。下面讲位置编码。
你:……
整个过程没有任何一道题。整个过程也没有任何一刻 AI 怀疑过你。整个过程你产生了一种正在学习的幻觉,并因此感觉良好。
但你要是合上屏幕,去厨房倒一杯水回来,可能已经记不得多头到底为什么是多头了。
这不全是你的问题,也是反馈循环的问题。舒服的反馈循环不产生学习。
stubborn-coach 是什么
它是一个 Claude Code 插件。一条 slash command:
/stubborn-coach:study <主题 / URL / 论文 / 粘贴文本>
这一条 slash 覆盖六件事:学习、复习、测验、查询、状态、导出。没有第二条命令,没有第二个入口,没有"切换到对话窗口配置选项"——纯终端,从头到尾。
但它真正不一样的地方,是名字里那两个字:stubborn,是把那个你以为已经消失了的、小时候站在黑板前的瞬间——搬回到你的终端里。
它教完一段,会停下来说:
这个节点先讲到这里。你可以继续追问;如果觉得差不多了,说"检查一下",我会用一个短问答确认能不能进入下一节点。
你说"检查一下",它出题。你答完,它不会自动说"很好"。它会打开一个你看不到的账本,给你的回答打分:
- 广度:这个节点的几个 key_points,你的回答覆盖了几个?
- 深度:你说对了,但说清了吗?能举例吗?能和近邻概念辨析吗?
你想速通?它的预算是节点 6 题、topic 8 题。账本没闭合,它会一直问。
你说"我懂了"?
它的源码里有一行写得很硬:
"懂了 / 我会了 / 继续"不构成证据。
它的固执不是 bug,是产品
这个工具的名字是 stubborn——固执的——这个词在中文里几乎是一个负面评价。但你想想看:
一个真正想让你学会的教练,应该有什么固执?
应该有不接受敷衍答案的固执。
应该有看见你跳过了某个维度就再来一题的固执。
应该有**你说"差不多了"它说"还差一道"**的固执。
很多 AI 学习工具会对你说"很好,继续"。
stubborn-coach 会对你说:“刚才那道题你只答到了 accurate,没展开 applied,再来一题。”
很多 AI 学习工具会对你说"这是个很棒的问题"。
stubborn-coach 会对你说:“你这道题答到第二点的时候开始模糊了,能再讲一次吗?”
很多 AI 学习工具会对你说"今天到这里,明天继续"。
stubborn-coach 会对你说:“SM-2 算出三天后再来复习,到时候我会直接出题。”
它不温柔。但它会让你学会。
关于"长源不进主对话"
技术上有一件事值得单独讲——
很多对话式 AI 学习工具的工作方式是:你扔一篇 PDF,它把全文读进对话,然后接下来你的每一次追问,原文都在上下文里反复占位。学着学着模型开始漂移、复读、从某段原文开始重复你已经听过的话。
stubborn-coach 派一个独立的 subagent 进隔壁屋啃完整篇 PDF,只把消化过的结构化摘要带回来。原文一个字都不进你的主对话。
这意味着你可以连续几周追问、考核、复习同一篇论文,而你的对话历史不会变成一坨被原文反复污染的稀粥。
它不是为了"看起来精巧"才这么做的。它是因为你要学得久才这么做的。学习是连续的事,不是一次性的事。
关于双文件分离
learning-wiki/study.md —— 你的,可读的,可 git 化的。learning-wiki/.study-state.yml —— 机器的,结构化的,你不用看。
为什么要分开?
因为用户笔记和机器状态混在一起,一定会漂移。一个版本写得长篇大论,下一版觉得太啰嗦砍掉,再下一版发现前后矛盾,最后你只能放弃这个工具。
把进度、SM-2 间隔、探查账本、引用元数据全部放到 YAML 里之后,study.md 就永远干净——它只追加稳定教案,主题、节点讲义、错题。半年之后你打开它,还是一篇可以读的教材,不是一坨被状态信息污染的废墟。
这个工具适合谁
- 你真的想学会一些东西,而不是读完一份总结就走
- 你受够了"AI 帮你读论文然后你三天后忘光"的循环
- 你愿意被一个不会拍马屁的工具问到答不出来的程度
- 你喜欢命令行,不想再切窗、切应用、切 UI
这个工具不适合谁
- 你想要快速"完成"学习任务,拿一份摘要就交差
- 你需要 AI 给你情感支持
- 你打开终端会感到不适
一个观察
做这个插件的过程里我逐渐意识到一件事:
绝大多数对话式 AI 学习产品——ChatGPT Study Mode、Claude Learning Mode、Kimi 学习模式等——默认的反馈姿态都是鼓励式的。它们会肯定你、给你结构化笔记、告诉你"理解得很到位"。这种姿态对降低使用门槛、提升用户留存有用,从产品角度完全可以理解。
但让你愿意每天回来和让你真的学会,是两件不同的事。
一个学习工具如果只优化前者,结果是你可以连续打开它一个月,体验流畅愉悦,然后发现自己说不出三个具体收获。
stubborn-coach 是一种反向的赌注:也许有一些人,真的想被问到答不出来。也许这些人愿意被告知"刚才那个不行,再来一题"。
如果你是这种人,欢迎试试。如果不是,你会很快关掉它,那也没关系——这世上让你感觉良好的产品已经太多了。
安装
cd ~/your-learning-dir
claude plugins install <repo-url>
/stubborn-coach:study <你想学的东西>
仓库 + 文档:https://github.com/jingranburangyongzhongwen/stubborn-coach
开源协议:Apache 2.0
关于"stubborn"这个名字——
它不是说工具难用、机器固执。
是说一个真正想让你学会的教练,应该有不接受敷衍答案的固执。很多 AI 学习工具会对你说"很好,继续"。
stubborn-coach 会说"刚才那道题你跳过了 applied,再来一题。"学习的进步从来不来自舒服的反馈循环。
它来自一个愿意让你不舒服的工具。
更多推荐



所有评论(0)