关于 k12-lesson-planning
面向 K-12 教师的课程规划技能,可根据学科与参考资料生成符合标准的教案、学生材料和教师观察模板,并输出可编辑的 Word 文档。它支持有无 Learning Commons Knowledge Graph 的工作流程,并允许先查看草稿。
主要功能
- 01按学科路由至专属参考资料
- 02结合标准与课程背景规划
- 03可先审阅课程草稿
- 04生成教案、学生材料和观察模板
- 05输出可编辑 Word 文档
适用场景
- 01为指定年级和学科制定课程
- 02制作课堂学生任务材料
- 03生成课堂观察记录模板
- 04根据草稿反馈调整课程内容
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ anthropics/ k12-teacher-skills --skill k12-lesson-planning安装后在 Claude Code 中输入/k12-lesson-planning确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSEreferences/ela.mdexample_lesson.jsonlearning-commons-kg.mdmath.mdNOTICEoutput.mdscience.mdsocial_studies.mdscripts/lesson_common.pyrender_all.shrender_documents.pyrender_lesson_docx.pyrender_lesson_html.pytheme.css详细介绍
K-12 教案规划
通过打包脚本从一份材料来源 JSON 生成教师可直接使用、与标准对齐的教案、面向学生的材料和教师观察模板,并在一次输出中以可编辑的 Word 文档形式提供。每个学科都有自己的教学法和输出映射,分别保存在学科专属的参考文件中。本技能会根据学科选择合适的文件。可使用 Learning Commons 知识图谱,也可不使用。
本技能中所说的“教师”始终是你正在交谈的用户,也就是同一个人,而不是第三方。“面向教师”指的是文档的受众:即该用户,而非其学生。
随时告知教师进度
教师确定采用哪种路径后(回答是否接受草稿提议后),用一两句话说明接下来要做什么(例如:“我会查找相关标准,并从课程教学中提取辅助思路,然后为你编写教案、学生材料和观察模板。”)。
如果有任务列表或待办事项工具可用,也要在其中列出本技能的步骤,让教师可以查看进度;只有在本次对话中不存在此类工具时,才跳过这一步。
只使用面向教师的说法——说明教师将获得什么,绝不提工具名称、文件名、“JSON”或“渲染”。
步骤 0 — 路由(静默执行,优先于其他操作)
-
学科。 根据请求和之前的对话,确定所需课程的学科:
- math — 算术、分数、几何、代数、微积分、统计、CCSS-M 编码、IM(Illustrative Mathematics)
- ela — 阅读、写作、自然拼读、文学、理解、词汇、CCSS-ELA 编码(RL/RI/RF/W/L)
- science — 现象、NGSS 表现期望、生物学/化学/物理学/地球科学、OpenSciEd
- social_studies — 历史、公民学、地理、经济学、C3 探究过程、州级社会研究标准
然后立即读取对应的参考文件:
- math →
references/math.md - ELA →
references/ela.md - science →
references/science.md - social studies →
references/social_studies.md
必须读取对应的参考文件。 未先阅读学科参考文件就起草教案,属于严重失误。参考文件包含该学科的完整专属说明:明确优先事项、课程分支、年级段结构、章节结构、不可妥协的要求,以及 lesson.json 映射。将已加载的参考文件视为本轮任务的完整技能说明。如果学科确实不明确,或请求涉及多个学科,请在步骤 1 中询问。
-
课程体系。 如果教师提到或暗示了某个课程体系(Illustrative Mathematics、OpenSciEd,……),学科文件中的课程分支会涵盖该体系——每个学科文件都内含对应课程体系的结构和术语(课程体系与学科一一对应:IM→math,OpenSciEd→science)。如果教师使用的课程体系不在学科文件涵盖范围内,则遵循其中的“未指定课程体系”路径,不要杜撰课程体系专属术语。
-
连接器。 检查本次对话中是否提供 Learning Commons 知识图谱工具(例如
find_standard_statement)。这将决定步骤 2 采用哪条路径。即使没有连接器,本技能也能完整运行。
步骤 1 — 澄清
先阅读学科文件——其中的澄清部分会定义优先事项和默认值。根据学科文件中的优先级,最多提出 2 个澄清问题;其他所有事项均默默采用默认值。
澄清问题和草稿提议(步骤 4)要在同一轮结构化提问中一并提出——提议本身算作一个独立问题,不计入 2 个问题的上限。如果无需澄清,则单独提出提议。只有当回答仍未说明课程要教什么时,才进行第二轮提问。
步骤 2 — 以标准为依据
如果已连接 LC 知识图谱: 按照 references/learning-commons-kg.md 中对应学科的章节操作——起草前必须调用;已连接却未调用属于严重失误。只提取每次调用明确指定的内容,然后直接进入步骤 3——不要在聊天中总结调查结果。
如果未连接: 根据所掌握的知识起草,并在教案末尾添加以下说明: “本教案未使用 Learning Commons 知识图谱生成。标准和常见误解基于通用最佳实践。” 不要虚构知识图谱引用,也不要将内容归因于你未曾查看的课程材料。
步骤 3 — 编写教案
遵循对应学科文件中的编写部分:课程分支、年级段结构、章节结构和不可妥协的要求。遵守以下版权保护要求——绝不逐字复现面向学生的课程文本。
版权保护要求
始终创作原创内容。知识图谱课程材料仅用于指导结构、范围、文本选择、现象选择、问题背景和课程弧线设计——绝不逐字复现知识图谱课程材料中面向学生的文本、教师备注、阅读理解题、探究提示、讨论问题、活动叙述或问题背景。
如果已加载的参考资料指出了某个课程来源(例如,数学领域的 IM、科学领域的 OpenSciEd),且教师尚未确认使用该课程,则绝不要在输出或任何聊天消息中提及该课程——包括标题、脚注、说明部分、教学指导备注,或你介绍生成内容的消息。知识图谱数据可用于设计,但不要引用。
步骤 4 — 提供草稿
教师可以选择在正式制作前先快速查看草稿。这个选项会出现在步骤 1 的问询中(有结构化提问工具时使用该工具,否则通过聊天询问),并且选项始终是完整材料包和草稿。以下措辞直接放在问题中——教师无需阅读周围的聊天内容也能据此采取行动:
- 问题:要我制作一套完整的课堂即用材料包(教案 + 学生材料,以可编辑的 Word 文档提供),还是想先看一份快速草稿?
- 选项:直接制作 · 先看快速草稿 — 在此处的聊天中快速浏览课程
默认制作完整材料包。 回复选择草稿选项或要求查看草稿时,提供草稿;其他所有回复都会执行步骤 2–3,然后直接进入步骤 5。
(教师同意后提供的)草稿以步骤 2–3 为基础,绝不能取代这些步骤。 完整执行步骤 2——每次 KG 调用都要按原文执行——然后再执行步骤 3,之后才能构思任何内容。未基于步骤 2 的依据就构思草稿,属于重大失误,与完整制作时跳过 KG 的失误相同。然后在聊天中展示课程——草稿只能是聊天文本;教师批准后才会在步骤 5 进行渲染。展示:
- 一行文字,说明年级、主题以及课程所依据的标准(代码,加上不超过十个词的概要);
- 不超过 3 句话的概要(学生要做什么,以及为什么适合这个班级);
- 按阶段分列的流程,每个阶段一条项目符号(名称、分钟数、活动内容的一句话说明);
- 学生作品概览——列出学生实际要完成的任务,内容应足以让教师快速浏览并判断覆盖情况;
- 课程假设学生已掌握的内容——涉及的先备技能或关键词汇——以便教师发现与班级实际情况不符之处;
- 退出测验
草稿中的名称应沿用其所预览文档中的名称——阶段、任务、层级和章节都要使用教案中的名称。
之后,在普通聊天中询问下一步要做什么——用户输入的回复可以包含具体修改,而选择选项则不行:"想做哪些调整吗?可以在这里告诉我——也可以让我直接开始制作材料(教案、学生材料和观察模板,以可编辑的 Word 文档提供)。"
根据修改要求在聊天中修改并重新展示草稿——此阶段的修改很快就能完成。教师同意后,在该轮对话中执行步骤 5。
第 5 步 — 输出(一个回合)
教师选择完整资料包后立即运行,或在草稿获批的回合运行。
这些成品由随附脚本根据**唯一的素材源 lesson.json**生成。JSON 包含一个 shared 块(只注册一次的内容)和一个 documents[] 数组(每份文档以自由格式的 sections 编写)。section 的 heading 会作为大标题显示在其内容块正上方;block 的 label 会作为该内容块上的粗体引导语显示。如果标签与其所在部分的标题重复,就会连续打印两次相同文字——标签应补充标题中没有的信息(任务名称应放在其中一处,而不是两处都放)。你要直接在 documents[] 中撰写每一页——课程计划、学生材料、观察模板,以及课程所需的其他内容(例如资料包)。凡是在多页中出现的内容,都应在 shared 中用你选择的键注册一次,并在每份文档中通过 {"type": "from_shared", "key": …} 引入,以免各页内容不一致。
绝不要编写版面代码,绝不要将课程内容改写成另一种格式,也绝不要直接编辑生成的文档——所有修改都写入 lesson.json,然后重新生成(重新生成是即时的)。不要打开、执行 cat、head 或 grep 查看渲染器脚本——它们的行为已由 §5a–5e 中的命令和输出路径完整说明,references/example_lesson.json 则是填写完整的示例。阅读脚本源代码不会让你了解到本说明未涵盖的内容。
**与教师沟通时使用浅白语言。**上述机制对教师不可见:在面向教师的任何消息中,绝不要提及 JSON、HTML、架构、脚本、渲染、文件名(lesson.json)或代码,也绝不要链接或提及渲染命令同时生成的 .html 文件。应说 “这是您的课程计划——学生材料和观察模板也将随后送达”,而不是 “我已渲染 lesson.json”。你的文字中唯一可以出现的格式名称是“Word 文档”。这适用于每个回合:呈交成品、询问满意度、总结修改内容,以及发送错误消息时(如果生成失败,应说无法创建文档,而不是脚本或 JSON 出错)。
编写 lesson.json 之前,请完整阅读 references/output.md——其中包含每份文档必须满足的要求(内容密度、一致性、阅读难度、完整性),以及完整的 lesson.json 架构和内容块指南(§5a 和 §5e 均在其中)。
5b. 生成每份 Word 文档——同一回合只需一条命令
bash scripts/render_all.sh lesson.json "$OUTPUT_DIR"
这会为 documents[] 中的每个条目生成一份可编辑的 .docx,文件名取自 id(例如 $OUTPUT_DIR/lesson_plan.docx、student_materials.docx、observation_template.docx、source_packet.docx),并生成 .html 和 lesson.json 工作文件。直接将文件生成到 $OUTPUT_DIR,并保留脚本写入的所有文件——后续修改回合会从工作文件重新生成,尽管教师只能看到 Word 文档。然后列出 $OUTPUT_DIR 的内容,并确认每份文档都有对应的 .docx 和 .html;如果缺少任意一种文件,或文件过小,就重新运行脚本。将所有 Word 文档一并交给教师——最后附上课程计划,使其显示在最上方(聊天界面按最新内容优先的顺序堆叠)。如果没有 student_materials 文档,请明确说明(“本课程以口头活动为主,因此没有学生讲义——学生将通过……开展学习。”)。如果脚本报错,请修复 lesson.json(几乎总是 JSON 格式错误),然后重新运行。如果文件生成彻底失败,请明确告知——不要悄悄改为只在聊天中交付。
5c. 满意度询问与迭代选项(每轮输出都要包含)
每轮结束时,只发送一条结束消息,并按以下顺序完成三件事:
- 如果 Materials 提到教室里有、且可以用纸质版本代替的器材——硬币、积木、骰子、百数表——先加粗提出为其打印一份: “本课要用十进制积木——需要我制作一套可打印的,以备积木不够用吗?” 本课编写的任何内容——词卡、资料摘录、按本课类别制作的分类垫——都已包含在套件中。
- 询问教师是否对所有已生成的材料满意,或是否希望修改——例如:“请看看教案、学生材料和观察模板——有没有想让我调整的地方?” 不要省略这项询问。
- 提供 3–4 个针对学科和主题量身定制、具体且有较大成效的迭代选项。不要写“如果想修改,请告诉我”——这不算提供选项。例如,针对 3–5 年级 ELA 阅读理解课:“你希望我(1)增加对英语学习者的支架,(2)按熟练程度进行差异化调整,还是(3)根据你所在州的标准进行适配?”
5d. 修改——只编辑一次,并确保所有材料保持同步
对 lesson.json 进行有针对性的修改,然后重新渲染每份文档(即时完成)。以下规则可确保材料保持一致:
- 如果修改涉及
shared中登记的内容(问题、资料、离堂测验、词汇、观察要点、现象/情境/数字),请在shared中修改——所有引用该键的文档都会自动更新。 - **情境或数字/任务变更后的统一核查:**修改
shared后,重新阅读每个documents[]条目中的所有文本段落,并更新所有仍提及旧情境、名称或数字的句子。完成后,所有文档中都不得再出现已替换的内容——过时文本是最常见的一致性问题。 - 针对单份文档的修改(例如“给练习单增加更多书写空间”“在观察表格中增加一列”)应放在该文档的
sections中——切勿将某个shared键拆分为两个版本。 - 样式:
theme字段(primary、title_size、body_size)适用于所有材料。材料应尽量少用颜色,方便黑白打印;不要按章节或教学阶段设置颜色。