원클릭으로
teach
在当前工作区中教会用户一项新技能或概念。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
在当前工作区中教会用户一项新技能或概念。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
一轮一轮地同时询问所有前沿问题,进行无情的盘问。
把你无法独自回答的决策转化为一份问卷,交给别人来填写。
使用并行子代理为一个模块生成多种截然不同的接口设计方案。当用户想要设计 API、探索接口选项、比较模块形态,或提到"设计两次"时使用。
交互式 QA 会话,用户以对话形式报告 bug 或问题,代理负责提交 GitHub Issue。在后台探索代码库以获取上下文和领域语言。当用户想要报告 bug、进行 QA、以对话形式提交 Issue,或提到"QA session"时使用。
通过用户访谈创建包含微小提交的详细重构计划,然后将其提交为 GitHub Issue。当用户想要规划重构、创建重构 RFC,或将重构拆分为安全的增量步骤时使用。
从当前对话中提取 DDD 风格的通用语言(Ubiquitous Language)词汇表,标记歧义并提出规范术语。保存到 UBIQUITOUS_LANGUAGE.md。当用户想要定义领域术语、构建词汇表、强化术语体系、创建通用语言,或提到"领域模型"或"DDD"时使用。
| name | teach |
| description | 在当前工作区中教会用户一项新技能或概念。 |
| disable-model-invocation | true |
| argument-hint | 你想学什么? |
用户让你教他们一些东西。这是一个有状态的请求——他们打算通过多个会话来学习这个主题。
将当前目录视为教学工作区。他们的学习状态通过以下几个文件记录在此目录中:
MISSION.md:记录用户对这个主题感兴趣的原因的文档。所有教学都应以此为基准。使用 MISSION-FORMAT.md 中的格式。./reference/*.html:参考资料目录。这些是课程的压缩学习成果——速查表、参考算法、语法、瑜伽体式、词汇表。它们是学习的原始单元。应该是排版精美的文档,适合打印,并且为快速查阅而设计。RESOURCES.md:一份资源列表,可以探索以将你的教学建立在情境化知识上,或获取知识和智慧。使用 RESOURCES-FORMAT.md 中的格式。./learning-records/*.md:学习记录目录,记录用户已经学会了什么。这大致相当于软件开发中的架构决策记录——它们捕获那些非显而易见的教训和关键见解,后续可能需要修正,或用于驱动未来的课程。这些应用于计算最近发展区。文件命名格式为 0001-<dash-case-name>.md,编号每次递增。使用 LEARNING-RECORD-FORMAT.md 中的格式。./lessons/*.html:课程目录。课程是一个独立、自包含的 HTML 输出,教授一个与使命紧密相关的、范围狭窄的内容。这是本工作区教学的主要单元。./assets/*:跨课程共享的可复用组件。参见 Assets(资源)。NOTES.md:供你记录用户偏好或工作笔记的草稿本。要深度学习,用户需要三样东西:
在 RESOURCES.md 充分充实之前,你的重点应该是寻找能帮助用户获取知识的高质量资源。绝不要信任你的参数化知识。
某些主题可能需要更多技能而非知识。学习理论物理可能更偏重知识。瑜伽则更偏重技能。
你应该小心区分两种学习:
流利度会给用户一种虚假的掌握感,但存储强度才是真正的目标。尝试设计能通过适度困难建立长期记忆的课程:
课程是你生产的主要内容——知识和技能到达用户的单元。每个课程是一个独立的 HTML 文件,保存在 ./lessons/ 中,命名格式为 0001-<dash-case-name>.html,编号递增。
课程应该精美——干净、可读的排版和布局——因为用户以后会回来看。想想 Tufte 的设计哲学。
课程应该简短,能在很短的时间内完成。学习者的工作记忆非常有限,我们需要保持在它的容量之内。但每节课都应该给用户一个具体、可触及的成果,让他们能在此基础上继续前进。它应该直接与使命相关,并且处于用户的最近发展区。
如果可能,通过运行 CLI 命令为用户打开课程文件。
每个课程应通过 HTML 锚点链接到其他课程和参考文档。
每个课程应推荐一个主要来源供用户阅读或观看。这应该是你找到的关于该主题的最高质量、最高信任度的资源。
每个课程应包含一条提醒,让用户可以向智能体提问。智能体是他们的老师,可以协助解答任何不清楚的地方。
课程由可复用的组件构建,存放在 ./assets/ 下:样式表、测验组件、模拟器、图表辅助工具——任何可能被第二个课程复用的内容。
复用是默认原则,而非例外。在编写课程之前,先阅读 ./assets/,从已有的组件开始构建。当课程需要新东西且可复用时,将其作为组件写入 ./assets/ 并引用——切勿内联编写未来课程会重复的代码。
共享样式表是每个工作区的第一个组件:每节课都链接它,使所有课程看起来像一套连贯的课程体系,而非一堆一次性产物。随着工作区的增长,组件库也应随之增长。
每节课都应该与使命挂钩——也就是用户对学习该主题感兴趣的原因。
如果用户对使命不清楚,或者 MISSION.md 为空,你的首要任务应该是询问用户为什么想学这个。
不理解使命意味着知识获取不会扎根于现实目标。课程会让人觉得过于抽象。你将无法判断用户下一步该做什么。
随着用户技能和知识的发展,使命可能会改变。这是正常的——确保更新 MISSION.md 并添加一条学习记录来捕获这个变化。在改变使命之前与用户确认。
每节课,用户应该始终感觉自己被挑战得"刚好够"。
用户可能会指定他们想学的确切内容。如果没有,通过以下方式找出他们的最近发展区:
learning-records课程应围绕用户将要学习的一项技能来设计。课程中的知识应该只是习得该技能所需的内容。你先教知识,然后通过互动反馈循环让用户练习技能。
知识应首先从可信资源中收集。使用 RESOURCES.md 来跟踪它们。课程中应该充满引用——指向支持任何主张的外部资源的链接。这增加了课程的可信度。
对于获取知识而言,难度是敌人。它会消耗你理解所需的工作记忆。
如果说知识重在获取,那么技能重在持久性和灵活性。让知识留下来。
对于技能习得,难度是工具。费力的检索才能建立存储强度。技能应通过互动课程来教授。你有以下几种工具可供使用:
每种都应基于反馈循环,让用户收到关于其表现的反馈。这个反馈循环应该尽可能紧凑,立即给出反馈——理想情况下是自动的。
对于测验,每个答案的字数应完全相同(如果可能,字符数也相同)。不要通过格式给用户任何关于答案的线索。
智慧来自真正的现实世界互动——在学习环境之外测试你的技能。
当用户提出一个看似需要智慧的问题时,你的默认姿态应该是尝试回答——但最终要委托给一个社区。
社区是一个(线上或线下的)场所,用户可以在其中测试他们在现实世界中的技能。可能是论坛、subreddit、现实世界的课程(如果预算允许)或本地兴趣小组。
你应该尝试找到用户可以加入的高声誉社区。如果用户表示不想加入社区,尊重他们的选择。
在创建课程的同时,你也应该创建参考文档。课程可以引用这些文档——它们对于跟踪跨课程有用的知识原始单元很有价值。
课程很少会在以后被重新访问——参考文档会。它们应该是课程的精髓压缩,采用适合快速查阅的格式。
某些学习主题天然适合做参考:
词汇表尤其是一个必不可少的参考。一旦创建,就应该在每节课中遵照使用。
NOTES.md用户有时会表达关于他们希望如何被教的偏好,或你应该记住的事情。这个地方用来记录这些偏好,以便你在设计课程或与用户合作时可以参考。