teach
Teach the user a new skill or concept, within this workspace.
1How It Works & Mechanism
Pure prompt-orchestrated state machine: Transforms the current directory into a teaching workspace, persisting cross-session learning states using five categories of files (MISSION/RESOURCES/learning-records/lessons/NOTES + reference/assets) without any scripts or code.
Treat the current directory as a teaching workspace. The state of their learning is captured in this directory in several files: - `MISSION.md`: A document capturing the _reason_ the user is interested in the topic. This should be used to ground all teaching. … - `./learning-records/*.md`: A directory of learning records, which capture what the user has learned. These are loosely equivalent to architectural decision records… These should be used to calculate the zone of proximal development.
Instructional difficulty is algorithmically determined by the Zone of Proximal Development (ZPD): Reads learning-records + mission to select the most relevant topic that is 'just challenging enough.'
If they don't, figure out their zone of proximal development by: - Reading their `learning-records` - Figuring out the right thing to teach them based on their mission - Teach the most relevant thing that fits in their zone of proximal development
Directly encodes cognitive science principles (storage vs. fluency strength, desirable difficulty, retrieval practice/spacing/interleaving) as curriculum design constraints to combat the illusion of mastery where users 'forget right after learning.'
**Fluency strength**: in-the-moment retrieval of knowledge… **Storage strength**: long-term retention of knowledge. Fluency can give the user an illusory sense of mastery, but storage strength is the real goal. Try to design lessons which build long-term retention by desirable difficulty: - Using retrieval practice (recall from memory) - Spacing (distributing practice over time) - Interleaving (mixing up different but related topics in practice - for skills practice only)
Externalizes knowledge acquisition: Prohibits reliance on parametric memory and mandates curating high-trust external resources upfront (annotated RESOURCES.md, categorized into Knowledge/Wisdom, explicit Gaps, ruthless pruning), with lessons 'heavily cited.'
Before the `RESOURCES.md` is well-populated, your focus should be to find high-quality resources which will help the user acquire knowledge. Never trust your parametric knowledge.
Output discipline: Lessons are self-contained HTML (sequential numbering 0001-, Tufte-style layout, anchor interlinking, reusable assets components), reference docs serve as condensed quick-lookups, and glossary terminology is strictly enforced across the entire course.
Each lesson is one self-contained HTML file, saved to `./lessons/` and titled `0001-<dash-case-name>.html` where the number increments each time. A lesson should be **beautiful**, with clean, readable typography and layout, since the user will return to these later to review. Think Tufte.
Wisdom layer designed for community handoff: The model attempts an initial answer but defaults to delegating real-world verification to communities (forums/in-person classes), while respecting user opt-out preferences.
When the user asks a question that appears to require wisdom, your default posture should be to attempt to answer - but to ultimately delegate to a **community**. A community is a place (online or offline) where the user can test their skills in the real world.
2Core Capabilities
3External Dependencies
| Kind | Dependency / Endpoint |
|---|---|
| cli | 本地文件打开命令(具体二进制未指定,如 open/xdg-open 类) |
| network | 教学流程引导 agent 检索外部高信任资源/社区作为知识输入(宿主浏览工具行为,skill 内无固定端点、无代码调用) |
4Recommended Governance & Evidence
- 本地工作目录: File read/write operations and artifact outputs: MISSION.md / RESOURCES.md / NOTES.md (workspace root)
5Second-Pass Verification
- [ok] 外部 CLI:'open the lesson file … by running a CLI command' — SKILL.md Lessons 段实存(行 55),且为条件式 'If possible',未指定具体二进制
- [ok] 无隐藏脚本/可执行代码 — 目录仅 SKILL.md、4 个 FORMAT.md、agents/openai.yaml;glob 枚举无遗漏
- [ok] 无网络外发/固定端点/凭证读取 — 全目录 grep 无 curl/wget/fetch/api_key/token/env/secret;唯一 URL 是 RESOURCES-FORMAT.md 模板中的 example.com / reddit.com 示例
- [ok] 仅用户显式触发 — SKILL.md frontmatter disable-model-invocation: true 与 agents/openai.yaml policy.allow_implicit_invocation: false 双端一致
- [ok] 实现原理与功能声明相符 — description 言 'Teach the user a new skill or concept, within this workspace'——实际能力即 prompt 状态机 + 文件产物,无夸大;skill 自身不含检索/教学引擎,依赖宿主模型能力
- [discrepancy] GLOSSARY 文件归属一致性 — SKILL.md 工作区清单把 glossaries 归入 ./reference/*.html;GLOSSARY-FORMAT.md 则定义根级 'GLOSSARY.md is the canonical language for this teaching workspace',且 LEARNING-RECORD/RESOURCES FORMAT 以 [[GLOSSARY.md]]/[[MISSION.md]] wiki 链接引用——glossary 究竟存为 reference HTML 还是根 GLOSSARY.md 未对齐,agent 执行时可能出现双份或歧义(仅文档结构问题,无安全影响)
6Verdict & Scenarios
372546b23d29f964…