textbook-outline
教材项目要做教学设计时用它:产出教学定位、UbD 预期结果五件套(大概念 / 持久理解 / 核心问题 / 迁移目标 / 学习目标)、章节树与例题 Bloom 梯度规划,写入 00-教材设计.md。触发语如"设计教材大纲"、"教材规划"、"课程体系设计"。通常由 textbook 调度,也可单独运行。不负责写章节正文,也不负责生成习题。需与 textbook 系列其余 skill 装在同一 skills 目录下。
Install
npx skills add https://github.com/cabbage2000-lab/textbook-writer-skills/tree/main/skills/textbook-outline
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install cabbage2000-lab-textbook-writer-skills@llmmart
git clone https://github.com/cabbage2000-lab/textbook-writer-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole cabbage2000-lab/textbook-writer-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
textbook-outline
以 UbD 逆向设计完成教材的阶段 1–3:教学定位 → 预期结果设计(核心 gate)→ 评估与章节设计(次要 gate),产出 00-教材设计.md。本 skill 是"先想清楚学生该带走什么,再倒推章节和例题"的落地执行者。
何时不触发
- 写章节正文(用 textbook-chapter)
- 生成例题/习题(用 textbook-exercises)
- 单篇教程的大纲(用 tutorial-writer)
两种调用模式
- 被 textbook 调度(常规):输入为
{教材项目目录, 教材名};产出写入该目录,阶段 1 判定出的学科档案与两个 gate 的确认结果回报主 skill(.progress.json由主 skill 维护,本 skill 不碰)。 - 独立触发:先用一轮提问确认教材名与落盘目录(默认
./<教材名>/),后续流程完全相同,产出00-教材设计.md;不建.progress.json——那是主 skill 的职责。
交接契约、落盘布局、进度打印与 gate 停点格式的权威定义见 ../textbook/references/handoff-contract.md,下文简称"契约文档"。本 skill 的进度行 ▶ 阶段 N/3 是子 skill 内层标尺(契约文档第 5 节:N/M 中 M 为当前 skill 自身的阶段总数);被调度时全局的 ▶ 阶段 N/5 行由主 skill 打印,两级并存。
阶段 1/3:教学定位确认
打印进度:▶ 阶段 1/3:教学定位确认
用 AskUserQuestion 一轮收集四项(对应契约的前四项;第五项 学科档案 由学科判定得出,不问作者):
- 学科:具体到分支(如"线性代数"而非"数学")。用户触发时若已说明,此项不再问。
- 读者认知起点:零基础 / 有先修(注明先修什么)
- 教材深度:入门 / 进阶
- 篇幅规模:6–8 章 / 8–12 章 / 12 章以上
若当前环境没有 AskUserQuestion 工具,降级为编号提问并等待文本回复:
请回答以下问题(回复格式如 "1 线性代数 2a 3a 4b"):
1. 教材学科(请具体到分支)?
2. 读者认知起点? a) 零基础 b) 有先修(请注明)
3. 教材深度? a) 入门 b) 进阶
4. 篇幅规模? a) 6–8 章 b) 8–12 章 c) 12 章以上
按语义宽松解析回复,能定位到各项即可;无法判断时只就有歧义的一项追问。
判定学科档案(契约第五项):按学科到 ../textbook/references/subject-profile-spec.md 第 5 节索引表定位档案 id。判定一次、全流程沿用,后续阶段不重判。
- 索引里有匹配项 → 取该 id;
- 找不到匹配项(如历史/哲学/文学等答案取决于论证与立场的学科)→ 按该文档第 7 节处理:向作者说明「本学科暂无专属档案,将按
<最接近的 id>档案处理」并指出已知差异(哪些题型在该档案里没有对应验证手段、章内段义是否需要调整),由作者决定继续或改学科范围,不得静默套用。作者决定继续则照该档案执行,学科档案记录实际使用的 id。
档案有前置输入要求时,追加一轮材料提问:判定出的档案第 1 节若写有「前置输入要求」(humanities、economics 有,stem 没有),在写盘前追加一轮提问,按该档案点名的类别向作者索要材料。这一轮之所以必要:四问里第 1 问才问到学科,问完才判定得出档案,届时才知道本学科要不要材料——所以它只能发生在第一轮之后。
这一轮不是 gate:作者答"没有"、答不全、或直接跳过,一律照常放行进入阶段 2,绝不等待确认。它换来的不是许可,是让作者在动笔前就知道代价。两条出口都要落盘:
- 作者提供了 → 把材料清单(书名与版本 / 数据库与口径 / 文献目录)写进「## 一、教学定位」的子节,后续各章据此核对;
- 作者未提供或给不全 → 把该档案第 1 节的降级纪律与预期代价写进同一子节(如「无史料输入时预期约三分之一的题挂
⚠️ 需作者确认,定稿前需逐条核定」)。
为什么必须落盘、不能只在对话里说一句:各章在不同会话里独立写成(上下文隔离),00-教材设计.md 是唯一能传到阶段 4 的载体。只说过没写下的纪律,写第 3 章时等于不存在。
产出写入 00-教材设计.md 的「## 一、教学定位」,其中必须含一行 学科档案:<id>——不设 gate,让作者看见即可:档案决定全书的验证纪律与章内段式,选错一次会歪一整本书,而作者是唯一有资格判断「这个近似可以接受」的人。写完不停顿,直接进入阶段 2。
阶段 2/3:UbD 预期结果设计(核心 gate)
打印进度:▶ 阶段 2/3:UbD 预期结果设计
严格按 references/ubd-framework.md 设计五件套(此段与学科无关,任何档案下逐条要求相同)。学习目标动词查 references/bloom-levels.md 第 2 节的通用基线,再补所用档案第 3 节的本学科特有动词:
- 大概念:3–7 个,每个是"主张"不是名词;
- 持久理解:一律"学生将理解:……"句式,是洞见不是知识点复述;
- 核心问题:2–5 个开放性问题,能贯穿多章;
- 迁移目标:情境必须是教材没直接教过的;
- 学习目标:每条用 Bloom 动词 + 层级标注(格式:目标句 +(Bloom:应用)),可出题检验。
五件套逐条带编号呈现并写入设计文档(前缀 B/U/Q/T/O,约定与"编号不重排"纪律见 ubd-framework.md 第 2 节)——阶段 3 的章节树要靠编号引用持久理解与学习目标。
呈现前先过 ubd-framework.md 第 5 节的快速自查清单(七问)和第 3 节一致性检查——自查不过先修再呈现,gate 是给作者确认方向的,不是让作者替 skill 做质检的。
完整呈现五件套后停下:
⏸ 等待确认:UbD 五件套(回复"确认"进入章节设计,或直接提出修改)
Gate 规则(不可绕过):
- 作者提出修改 → 更新后重新完整呈现五件套(每次重新呈现前同样先过第 5 节自查与一致性检查——修改可能破坏追溯关系),再次等待确认,循环直到作者明确确认;
- 明确确认的判定见契约文档第 5 节:明确表示通过且不附带修改要求("确认/通过/OK"等);"确认,但把 X 改一下"按修改分支处理(修改优先);答复含糊时追问而不是自行判定为确认;
- 未确认绝不进入阶段 3;
- 确认后将五件套写入
00-教材设计.md的「## 二、UbD 五件套(已确认)」。
阶段 3/3:评估与章节设计(次要 gate)
打印进度:▶ 阶段 3/3:评估与章节设计
依据已确认的五件套设计四项产出(对应契约 {章节树[], 例题习题计划[], 表现性任务[], 梯度报告}):
章节树:每章
{章号, 章标题, 一句话定位, 承载的持久理解编号[], 承载的学习目标编号[]},章数符合阶段 1 的篇幅规模。 对齐检查(双向,硬性,两组编号各查一遍):- 持久理解:某章承载不了任何持久理解 → 砍掉或改造该章;某条持久理解没有任何章承载 → 补章,或向作者明示放弃该条;
- 学习目标:某章一条学习目标都不承载 → 它的章首写不出"读完这章你能做什么",改造该章或并入相邻章;某条学习目标没有任何章承载 → 分配进某章,或与作者商定删除(ubd-framework.md 第 3 节留待本阶段校验的两项之一)。一条目标可被多章承载(跨章递进),一章通常承载 1–3 条——超过 4 条通常说明这一章装了太多东西。
检查结果随章节树一并呈现。
例题习题计划:每章三类题的
{主题, Bloom层级}列表,数量参考四段式配额(示范例题 1–3 / 引导练习 1–3 / 独立习题 3–8,见 ../textbook-chapter/references/chapter-template.md);层级分布参考所用档案第 3 节的章内分布建议——各学科不同(bloom-levels.md 第 7 节只留通用部分与指路)。梯度报告:按 bloom-levels.md 第 5–6 节生成"层级×章节矩阵 + 合计 + 占比 + 检查结果",执行三条检查规则。有告警必须连同"建议在第 N 章补 X 层级题目"的可操作建议一起呈现,不许只报问题不给出路。
表现性任务:1–3 个综合性任务,按 references/performance-task-rubric.md 设计——每个任务用 GRASPS 六要素写清情境(情境须是教材没直接教过的),并附一张评价标准表(维度 3–5 个 × 水平 3–4 级,维度从持久理解或迁移目标推出,每格写可观察的表现描述);每个注明对应哪条迁移目标(每条迁移目标至少被一个任务覆盖,否则回到五件套与作者商定取舍)。呈现前过该文档第 5 节自查清单。 动机:没有评价标准的任务只是一句口号——作者无法评,学生不知道"好"长什么样,而表现性任务是迁移目标在全书唯一的检验落点。
完整呈现四项后停下:
⏸ 等待确认:章节树与梯度规划(回复"确认"完成大纲设计,或直接提出修改)
Gate 规则与阶段 2 相同:修改后重新完整呈现,确认前绝不放行。确认后写入 00-教材设计.md 的「## 三、章节树与梯度规划(已确认)」与「## 四、表现性任务」。
产出与交接
- 落盘物:完整的
00-教材设计.md,固定二级标题结构见契约文档第 3 节; - 回报上游(被调度时):阶段 1 完成即回报
学科档案(供主 skill 写入.progress.json的subject_profile),阶段 3 完成回报契约{章节树[], 例题习题计划[], 表现性任务[], 梯度报告}+ 两个 gate 均已确认的显式声明; - 独立触发时,最后向作者说明:可用 textbook 从此设计文档继续逐章写作。
真实性约束
五件套和章节树是设计产物,无需运行验证;但若作者在阶段 1 提供了学科材料(讲义、笔记、课程标准),设计必须与材料一致,不虚构材料中不存在的学科内容;材料未覆盖处按学科公认体系设计。
Files (textbook-writer-skills)
-
references
-
bloom-levels.md 6.8 KB
# Bloom 认知层级(修订版):学习目标与例题梯度的标尺 本文档是全项目 Bloom 层级的唯一权威来源:textbook-outline 用它写学习目标和梯度报告,textbook-exercises 用它判定题目层级,textbook 主 skill 在阶段 5 用它复核实际梯度。 ## 1. 六层级总览 修订版 Bloom 分类法六个认知层级,由低到高(首次出现注英文,其后全书只用中文): | 层级 | 一句话判据 | 教材场景典型题型 | | ------ | ----------- | ----------------- | | 记忆(remembering) | 能原样取出学过的信息 | 写出定义、列举性质、指出符号含义 | | 理解(understanding) | 能用自己的方式重新表达信息 | 解释为什么、举一个新例子、判断正误并说明理由 | | 应用(applying) | 能把学过的程序用到新数据上 | 计算、求解、按算法执行一遍 | | 分析(analyzing) | 能拆解结构、看出成分之间的关系 | 推导、诊断错误解法、比较两种方法的适用场景 | | 评价(evaluating) | 能依据标准做出判断并辩护 | 论证某方法更优、评估一个证明是否严密 | | 创造(creating) | 能组合出新的结构或方案 | 设计算法、证明新命题、把方法推广到新对象 | ## 2. 中文动词表(写学习目标用) 每条学习目标必须从对应层级选动词,禁用"理解/掌握/了解/熟悉"等不可验证动词。 下表是**通用基线**,对任何学科有效;本学科特有的动作动词(如 STEM 的"计算/推导/建模")在所用**学科档案第 3 节**补充,两处并用即可(档案索引见 [../../textbook/references/subject-profile-spec.md](../../textbook/references/subject-profile-spec.md) 第 5 节)。 | 层级 | 通用动词 | | ------ | ------ | | 记忆 | 列举、复述、识别、写出定义、指出、命名、默写 | | 理解 | 解释、概括、举例说明、用自己的话描述、判断正误并说明理由、翻译(在不同表示形式间转换)、归类 | | 应用 | 运用、演示、将某方法套用到新材料、按步骤执行 | | 分析 | 分解、区分、找出关系、诊断错误、比较适用场景、归因 | | 评价 | 论证、评估优劣、选择并辩护、批判、检验严密性、权衡 | | 创造 | 设计、构造、提出新解法、组合、推广 | ## 3. 可验证学习目标的写法 **公式**:条件 + Bloom 动词 + 对象 + 可观察标准。 三组"模糊 → 可验证"改写示例(取自 STEM 学科,其他学科同理——公式与检验法本身与学科无关): 1. ❌ "理解矩阵乘法" → ✅ "能计算 2×3 与 3×2 矩阵的乘积,并解释为何交换相乘后结果维度不同(Bloom:应用)" 2. ❌ "掌握高斯消元法" → ✅ "给定 3×4 增广矩阵,能用高斯消元法化为行阶梯形并判断解的个数(Bloom:应用)" 3. ❌ "了解特征值的意义" → ✅ "能用自己的话解释特征向量在变换下'方向不变'的几何含义,并举出一个非教材例子(Bloom:理解)" 写完后的检验法:能否据此直接出一道题?出不了题的目标就是不可验证的,重写。 ## 4. 例题/习题的层级判定 判定一道题属于哪一层,看**学生解题时实际调用的认知操作**,不看题目表面难度。 **同一知识点在六个层级各长什么样**是判定标尺,因学科而异,放在所用**学科档案第 3 节**(stem 档案以"等差数列求和"给出六层对照表)。标尺只是判定示意,不宜原样搬进教材当正式题目——至少换数据、换场景。 **判定原则**(与学科无关,任何档案下相同): - 同一道题多问时,取**最高**层级标注; - 判定歧义时**就低不就高**(宁可把一道"疑似分析"的题标成应用,也不虚标高层级——虚标会让梯度报告失真)。 ## 5. 梯度检查规则(全书级) **统计口径**:全书所有题目按 Bloom 层级计数,示范例题、引导练习、独立习题都计入。 - **规则 1(单层堆积)**:任一层级占比 ≥60% → 告警:`⚠️ 梯度告警:<层级> 层占比 N%,题目过度堆积`,并列出建议补题的章。 - **规则 2(缺高层)**:应用 + 分析两层合计 = 0 题 → 告警:`⚠️ 梯度告警:全书没有"应用/分析"层题目,缺认知阶梯上段`。 - **规则 3(缺低层入门,提示级)**:记忆 + 理解两层合计 = 0 题 → 提示:`ℹ️ 全书没有低层级入门题,确认读者起点是否足够高`。 规则 1、2 是告警级:必须连同补题建议一起呈现给作者,作者确认后才放行(阶段 3 gate 的组成部分)。规则 3 是提示级:呈现即可,不阻塞。 ## 6. 梯度报告格式 固定为"层级 × 章节计数矩阵 + 合计行 + 占比行 + 告警/提示块"。示例(假数据): ```markdown ### 全书 Bloom 梯度报告 | 章节 | 记忆 | 理解 | 应用 | 分析 | 评价 | 创造 | 小计 | | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | 01 向量与线性组合 | 1 | 3 | 2 | 0 | 0 | 0 | 6 | | 02 矩阵与线性变换 | 1 | 4 | 2 | 1 | 0 | 0 | 8 | | 03 解线性方程组 | 0 | 2 | 4 | 1 | 0 | 0 | 7 | | **合计** | 2 | 9 | 8 | 2 | 0 | 0 | 21 | | **占比** | 10% | 43% | 38% | 10% | 0% | 0% | 100% | **检查结果**: - 规则 1:最高占比"理解"43% < 60%,通过。 - 规则 2:应用 + 分析 = 10 题 > 0,通过。 - 规则 3:记忆 + 理解 = 11 题 > 0,通过。 - ℹ️ 备注:评价/创造两层全书为 0,属常见情况;建议在末章表现性任务附近补 1–2 道(非强制)。 ``` 若有告警,在检查结果块中按规则文案输出,并逐条给出"建议在第 N 章补 X 层级题目"的可操作建议。 ## 7. 每章内部的梯度建议(非硬规则) 三类题(示范例题/引导练习/独立习题)是**支撑程度**维度,Bloom 是**认知高度**维度,二者正交、不可互相绑定——不存在"引导练习=理解层"这类绑定。 **每类题各自落在哪几层,随学科而变,查所用学科档案的第 3 节**(`../../textbook/references/profiles/<id>.md`)。同一套"教 → 扶 → 放"脚手架,在 STEM 里示范的是一遍可执行程序、在人文社科里示范的是一次材料研读,落到的认知高度天然不同档。把某一学科的经验分布写在这里当通用默认,会让另一学科的正常章节被读成"梯度异常",进而被降级改题——这正是本节此前的问题。 无论用哪份档案,以下三条都成立: - 独立习题按 Bloom 阶梯**先低后高**排列; - 偏离档案给出的分布不是错误——例如"证明技巧"主题章可能整体偏分析层,能说明理由即可; - 梯度以**全书**为单位检查(第 5 节三条规则),章内分布只是设计参考,不进检查规则。 -
performance-task-rubric.md 6.7 KB
# 表现性任务与评价标准(UbD 评估证据的另一半) 本文档是 textbook-outline 阶段 3 设计表现性任务的权威来源,与 [ubd-framework.md](ubd-framework.md)(阶段 2 预期结果)配套。GRASPS 与评价标准(rubric)两个工具同样源自 Wiggins & McTighe《Understanding by Design》,此处按"写教材"场景做了落地化改写。本文档属**学科无关内核**(见 [../../textbook/references/subject-profile-spec.md](../../textbook/references/subject-profile-spec.md) 第 2 节):任何学科档案下六要素与 rubric 的写法逐条相同,下文示例取自线性代数只是举例。 ## 1. 为什么任务必须配评价标准 UbD 阶段二「确定评估证据」的标准配置是三件:**表现性任务 + 评价标准 + 其他证据**。本 skill 组合的"其他证据"由例题习题计划承担得很充分(三类题 + Bloom 梯度 + 真算验证),缺口一直在中间那件。 没有评价标准的表现性任务,是一句口号: - **作者无法评**——任务写着"给出一个降维方案并论证合理性",什么样算论证充分?两个作者会给出两种判断; - **学生不知道"好"长什么样**——只知道要交什么,不知道往哪个方向努力,这恰好是表现性任务本该解决的问题; - **迁移目标失去唯一落点**——迁移目标是五件套里最高的一件(指向真正的迁移能力),它在全书唯一的检验方式就是表现性任务。任务不可评,等于迁移目标不可验,`ubd-framework.md` 第 2.4 节"必须被至少一个表现性任务覆盖,否则就是空话"这条要求就只完成了一半。 ## 2. GRASPS:表现性任务的六要素 每个表现性任务用六要素写清,缺一要素就会退化成一道大号习题: | 要素 | 问什么 | 关键约束 | | ------ | -------- | ---------- | | **G**oal 目标 | 要达成什么结果、解决什么问题 | 指向某条迁移目标,不是复述章节内容 | | **R**ole 角色 | 学生扮演什么身份 | 一个会真的使用该学科的身份(顾问、审稿人、工程师),不是"学生" | | **A**udience 对象 | 成果交给谁看 | 明确且通常是非专业对象——迫使学生解释而非套公式 | | **S**ituation 情境 | 在什么场景下 | **必须是教材没直接教过的场景**(与迁移目标的情境要求同一条标准) | | **P**roduct 成果 | 产出什么 | 可评的具体产物(方案、报告、可运行代码、审阅意见),不是"回答问题" | | **S**tandards 标准 | 什么样算做好了 | 直接展开为第 3 节的评价标准表 | **好例**(承接 ubd-framework.md 2.4 节的迁移目标好例"在降维、压缩、推荐场景中主动识别低秩结构"): > **G**:为一个图片存储服务给出降维压缩方案,并论证画质与成本的取舍; > **R**:该服务的技术顾问; > **A**:不懂线性代数的产品经理; > **S**:服务存储成本超支,手上有一批灰度图片,要在"画质可接受"与"存储省一半"之间做决定——教材讲过奇异值分解,但没讲过图片压缩这个应用; > **P**:两页方案 + 一段可运行的验证代码(含压缩率与误差的实测数字); > **S**:见第 3 节评价标准表。 **坏例**:"综合运用本书所学知识,写一篇关于矩阵分解应用的报告。" 六要素里只剩下一个模糊的成果——没有角色、没有对象、没有具体情境,学生只能靠猜;而且"综合运用所学"停留在教过的范围内,是应用不是迁移。 ## 3. 评价标准(rubric)的写法 **结构**:维度 3–5 个 × 水平 3–4 级。维度太少评不出层次,太多作者自己也用不动。 **两条硬要求**: 1. **维度必须从持久理解与迁移目标推出**,不能用通用的"完整性 / 条理性 / 创新性"——那是作文评分表,评不出学科理解。至少有一个维度直接对准迁移(能否在新情境中识别学科结构),否则 rubric 退化成交付物检查清单; 2. **每格写可观察的表现描述**,不写程度副词。"较好地理解低秩结构"无法判定,两个人给分能差两级;"能指出图片矩阵的奇异值快速衰减,并据此判断可低秩近似"可以判定。 **示例**(承接第 2 节的任务,3 维度 × 3 水平;实际可用 4 级并扩到 5 个维度): | 维度 | 优秀 | 合格 | 未达成 | | ------ | ------ | ------ | -------- | | **结构识别**(迁移核心) | 自主把"压缩存储"重述为低秩近似问题,并说明图片矩阵为何具备低秩结构 | 在提示"能否用矩阵分解"后能正确建立联系 | 把任务当作套用某个公式,未识别出低秩结构 | | **方法选择与论证** | 说明为何选奇异值分解、秩 k 依据什么定(如奇异值衰减曲线或误差阈值),并指出方法的失效场景 | 选对方法并给出 k 的一个合理依据,未讨论失效场景 | 未说明选择理由,或 k 的取值无依据 | | **面向非专业对象的表达** | 不使用未解释的术语,用画质与成本的具体数字支撑取舍建议 | 表达基本可读,但残留少量未解释术语 | 直接罗列公式与代码,产品经理无法据此决策 | 注意三个维度都在评"学科理解的表现",没有一格在评排版或字数。 ## 4. 与例题习题计划、Bloom 梯度的分工 - **例题习题计划**评的是掌握程度(在教过的情境里能否正确执行),**表现性任务**评的是迁移(在没教过的情境里能否识别与运用)——两者是 UbD 阶段二的两类证据,不可互相替代,也不必互相重复; - 表现性任务通常落在 Bloom 的评价/创造层。**在评价/创造属少量点缀的学科里**(`stem` 档案即如此,各学科的章内分布见所用档案第 3 节),它与"高层题常放在末章"是同一件事的两面。**任务不计入全书梯度矩阵的题目统计**(梯度报告的统计口径是三类题,见 bloom-levels.md 第 5 节),但作者若因梯度报告缺高层而补题,表现性任务是自然的落点。 ## 5. 自查清单(随阶段 3 呈现前必过) 1. 每个任务六要素齐全,情境确实是教材没直接教过的? 2. 每条迁移目标至少被一个任务覆盖,且该任务附了评价标准表? 3. 每张表的维度 3–5 个、水平 3–4 级,且至少一个维度对准迁移? 4. 维度是否都从持久理解或迁移目标推出,没有混入"完整性/条理性"这类通用项? 5. 每格是可观察的表现描述,没有"较好地""基本能"这类无法判定的程度副词? 任何一项不过,先修再呈现——与五件套 gate 同一条纪律:gate 是给作者确认方向的,不是让作者替 skill 做质检的。 -
ubd-framework.md 10.5 KB
# UbD 逆向设计框架(教材版落地指南) 本文档是 textbook-outline skill 阶段 2(UbD 预期结果设计)的内核依据,源自 Wiggins & McTighe《Understanding by Design(追求理解的教学设计)》,已针对"写教材"场景做落地化改写。本文档属**学科无关内核**(见 [../../textbook/references/subject-profile-spec.md](../../textbook/references/subject-profile-spec.md) 第 2 节):五件套的定义、质量标准与一致性检查在任何学科档案下逐条相同,下文示例统一取自"线性代数入门"只是举例。 ## 1. 为什么逆向设计 UbD 的核心主张是**以终为始**——先想清楚学生该带走什么,再设计怎么证明他们学会了,最后才动手写内容。三阶段顺序不可颠倒: | 阶段 | 名称 | 回答的问题 | 在本 skill 组合中的位置 | | ------ | ------ | ----------- | ------------------------ | | 一 | 确定预期结果 | 学生学完该理解什么、能迁移什么? | textbook-outline 阶段 2(核心 gate) | | 二 | 确定评估证据 | 拿什么证明学生真的学会了? | textbook-outline 阶段 3(例题/习题计划 + 表现性任务,后者的六要素与评价标准见 [performance-task-rubric.md](performance-task-rubric.md)) | | 三 | 设计学习体验 | 具体怎么教、怎么写? | textbook-chapter 逐章落实 | 教材最常见的病是**知识点堆砌无主线**:一章章罗列概念,读者读完只记得零散名词。病根在于作者跳过了阶段一,直接从"我知道哪些内容"出发组织章节。UbD 阶段一就是解药——先逼出五件套,后面每一章、每道题都必须能追溯到它。 ## 2. 五件套逐项落地 阶段 2 的产出固定为五件套,缺一不可。以下每项给出定义、质量标准、好例与坏例(示例统一用"线性代数入门"教材)。 **编号约定(五件套逐条编号,写入 `00-教材设计.md`「## 二」时就带上)**: | 件 | 前缀 | 示例 | | ---- | ------ | ------ | | 大概念 | `B` | `B1`、`B2` | | 持久理解 | `U` | `U1`、`U2` | | 核心问题 | `Q` | `Q1`、`Q2` | | 迁移目标 | `T` | `T1`、`T2` | | 学习目标 | `O` | `O1`、`O2` | 前缀不同是为了让编号自解释:章节树里写 `承载的持久理解编号[U1, U3]`、`承载的学习目标编号[O2, O5]`,两串编号并列时不必回头查"这个 3 是哪一件的第 3 条"。编号一经确认**不再重排**——即使中途删掉一条,其余编号保持原样、空号作废,因为章节树和各章都已经引用了它们;重排一次,全书的引用就集体错位。 **编号只在作者向文档里出现**:`00-教材设计.md`、章节树、阶段 5 的走查报告可以用。读者向产物(章正文含章首学习目标、`00-前言.md`、`99-表现性任务.md`)一律不带编号——学生读到"O3"只会困惑,编号是设计追溯用的脚手架,不是教学内容。 ### 2.1 大概念(Big Ideas) **定义**:学科中有解释力和组织力的核心概念主张,能把一批零散知识点串成整体。 **数量约束**:3–7 个。少于 3 个说明教材范围可能太窄或提炼不足;多于 7 个说明还没真正提炼——大概念要"少而精"。 **质量标准**: - 是一个"主张"或"视角",不是一个名词术语; - 能串起 ≥3 个零散知识点; - 在全书多章反复出现并加深。 **好例**:"线性变换——矩阵不是数字表格,而是空间变换的代数表示。"(它串起了矩阵乘法、行列式、特征值、基变换等一批知识点,并给出统一视角。) **坏例**:"矩阵。"(这只是名词,没有主张,什么也解释不了;"第二章讲矩阵"式的目录思维正是要避免的。) ### 2.2 持久理解(Enduring Understandings) **定义**:希望学生在课程结束、忘掉细节之后仍能保留并应用的核心洞见——"忘掉细节后剩下的东西"。 **句式强制**:每条必须写成"**学生将理解:……**"。这个句式逼你写出一个完整的、可以被理解的命题,而不是一个话题标签。 **数量建议**:4–8 条(与大概念数量相称,每个大概念至少一条展开)。 **质量标准**: - 是洞见(insight),不是知识点复述; - 检验法:把句子里的"学生将理解"删掉,剩下的部分如果是一条定义或公式,就不合格;如果是一个需要整章铺垫才能体会的判断,就合格。 **好例**:"学生将理解:解线性方程组的过程本质上是在问'目标向量是否落在系数矩阵的列空间里'。" **坏例**:"学生将理解矩阵乘法的定义。"(这是记忆层的知识点,不是洞见——学生背下定义不等于获得了任何持久的东西。) ### 2.3 核心问题(Essential Questions) **定义**:指向大概念的开放性问题,能引发持续思考、在全书多章反复回来,而不是有标准答案的习题。 **数量约束**:2–5 个。 **质量标准**: - 无标准答案,或答案随理解深入而不断丰富; - 能贯穿多章:第 2 章第一次遇到它,第 6 章能给出更深的回答; - 学生读完全书后应该能对它做出有质量的回应。 **好例**:"为什么同一个变换在不同基下长得完全不一样?我们该如何选择'好'的基?"(第一次讲基时提出,讲到特征值、对角化时再回来,层层加深。) **坏例**:"矩阵乘法怎么算?"(有标准答案,做一遍就关闭了,无法贯穿全书——这是习题不是核心问题。) ### 2.4 迁移目标(Transfer Goals) **定义**:学生能把所学应用到**新情境**的能力——这是教育的终极目标。 **句式建议**:"学生能在<新情境>中运用<所学>做<事情>。" **数量建议**:2–4 条。 **质量标准**: - 情境必须是教材没有直接教过的(否则只是应用不是迁移); - 必须在阶段 3 被至少一个表现性任务覆盖,否则就是空话。 **好例**:"学生能在遇到任何降维、压缩、推荐系统场景时,主动识别其中的低秩结构并用矩阵分解语言描述它。" **坏例**:"学生能解教材上的习题。"(习题是教过的情境,这是练习不是迁移。) ### 2.5 学习目标(Learning Objectives) **定义**:可验证的、行为化的目标条目,说明学生"能做什么"。 **动词强制**:每条必须使用 Bloom 对应层级的动词(动词表见同目录 [bloom-levels.md](bloom-levels.md) 第 2 节),并在句末标注层级。**禁用**"理解、掌握、了解、熟悉"等不可验证的模糊动词。 **数量建议**:全书 8–15 条(约每章 1–2 条落点),覆盖 ≥4 个 Bloom 层级。 **质量标准**: - 每条可验证——能想象出一道题或一个任务来检验它; - 每条能追溯到某条持久理解(见第 3 节一致性检查); - 覆盖多个 Bloom 层级,不全堆在一层。 **好例**:"能用高斯消元法求解 3×4 增广矩阵对应的方程组,并判断解的个数(Bloom:应用)。" **坏例**:"理解高斯消元法。"("理解"无法验证——学生怎样算"理解了"?说不清就无法出题、无法评估。) ## 3. 五件套之间的一致性检查 五件套不是五个独立清单,它们之间有强制的追溯关系。阶段 2 呈现给作者前,先自查: | 检查项 | 规则 | 不通过的处理 | | -------- | ------ | ------------- | | 学习目标 → 持久理解 | 每条学习目标须能追溯到至少一条持久理解 | 追溯不到的目标要删除,或补写它服务的持久理解 | | 核心问题 → 大概念 | 每个核心问题须指向至少一个大概念 | 指不到的问题是无主线的"趣味题",删除或改写 | | 迁移目标 → 表现性任务 | 每个迁移目标须在阶段 3 被至少一个表现性任务覆盖 | 阶段 3 校验;未覆盖则补任务或明示放弃该目标 | | 学习目标 → 承载章 | 每条学习目标须在阶段 3 被至少一章承载(章节树的 `承载的学习目标编号[]`) | 阶段 3 校验;没有章承载的目标要么补进某章,要么与作者商定删除——它已经写不进任何一章的章首,学生永远看不到它 | | 持久理解 → 大概念 | 每条持久理解应是某个大概念在具体方向上的展开 | 孤立的持久理解说明大概念清单不完整 | ## 4. 五件套在后续阶段如何使用 五件套经作者确认后(合称 **UbD 五件套**)即成为全流程的对齐基准: - **阶段 3(章节设计)**:章节树中每一章必须声明它承载哪几条持久理解。承载不了任何一条的章要砍掉或改造;反过来,没有任何章承载的持久理解,要么补章,要么作者明示放弃。这条双向检查是防堆砌的硬机制。 - **阶段 4(单章写作)**:textbook-chapter 的输入契约携带五件套的 `{大概念[], 持久理解[], 核心问题[]}` 三项,**该章承载的学习目标原文随大纲切片一并下传**(不下传全书的目标清单——上下文隔离)。章引言应呼应一条核心问题;概念讲解的展开方向由该章承载的持久理解决定;章首把该章的学习目标改写成**学生版**(第二人称、去编号、去 Bloom 标注);"本章小结"须回应本章推进了哪条持久理解,并让读者拿章首那几条逐条自检。 - **阶段 5(审核定稿)**:主 skill 全书走查每条持久理解是否有章实际承载(不只看计划,看写出来的小结),并复核学习目标的 Bloom 分布是否落实。 ## 5. 快速自查清单(gate 呈现前必过) 把五件套呈现给作者确认之前,逐项自问: 1. 大概念是否 3–7 个,且每个都是"主张"而非名词? 2. 每条持久理解删掉句式前缀后,剩下的是洞见还是定义复述? 3. 核心问题是否 2–5 个,且每个都能在多章反复回来? 4. 迁移目标的情境是否真的"教材没直接教过"? 5. 每条学习目标是否都用了 Bloom 动词并标注层级、可出题检验? 6. 一致性检查(第 3 节)中阶段 2 可检的三项(学习目标→持久理解、核心问题→大概念、持久理解→大概念)是否全部通过?(迁移目标→表现性任务、学习目标→承载章两项留待阶段 3 校验) 7. 五件套每条都带编号了吗(`B`/`U`/`Q`/`T`/`O` 前缀,见第 2 节编号约定)?下游的章节树要靠编号引用它们。 任何一项不过,先修再呈现——gate 是给作者确认方向的,不是让作者替 skill 做质检的。
-
-
SKILL.md 11.3 KB
--- name: textbook-outline description: 教材项目要做教学设计时用它:产出教学定位、UbD 预期结果五件套(大概念 / 持久理解 / 核心问题 / 迁移目标 / 学习目标)、章节树与例题 Bloom 梯度规划,写入 00-教材设计.md。触发语如"设计教材大纲"、"教材规划"、"课程体系设计"。通常由 textbook 调度,也可单独运行。不负责写章节正文,也不负责生成习题。需与 textbook 系列其余 skill 装在同一 skills 目录下。 slug: textbook-outline displayName: 教材写作·大纲设计 version: 0.6.2 summary: 教材的教学设计阶段——教学定位、UbD 预期结果五件套、章节树与例题 Bloom 梯度,产出 00-教材设计.md。textbook 流水线的阶段 1–3,需与 textbook 系列其余 skill 同级安装。 --- # textbook-outline 以 UbD 逆向设计完成教材的阶段 1–3:教学定位 → 预期结果设计(核心 gate)→ 评估与章节设计(次要 gate),产出 `00-教材设计.md`。本 skill 是"先想清楚学生该带走什么,再倒推章节和例题"的落地执行者。 ## 何时不触发 - 写章节正文(用 textbook-chapter) - 生成例题/习题(用 textbook-exercises) - 单篇教程的大纲(用 tutorial-writer) ## 两种调用模式 - **被 textbook 调度**(常规):输入为 `{教材项目目录, 教材名}`;产出写入该目录,阶段 1 判定出的 `学科档案` 与两个 gate 的确认结果回报主 skill(`.progress.json` 由主 skill 维护,本 skill 不碰)。 - **独立触发**:先用一轮提问确认教材名与落盘目录(默认 `./<教材名>/`),后续流程完全相同,产出 `00-教材设计.md`;不建 `.progress.json`——那是主 skill 的职责。 交接契约、落盘布局、进度打印与 gate 停点格式的权威定义见 [../textbook/references/handoff-contract.md](../textbook/references/handoff-contract.md),下文简称"契约文档"。本 skill 的进度行 `▶ 阶段 N/3` 是子 skill 内层标尺(契约文档第 5 节:N/M 中 M 为当前 skill 自身的阶段总数);被调度时全局的 `▶ 阶段 N/5` 行由主 skill 打印,两级并存。 ## 阶段 1/3:教学定位确认 打印进度:`▶ 阶段 1/3:教学定位确认` 用 AskUserQuestion **一轮**收集四项(对应契约的前四项;第五项 `学科档案` 由学科判定得出,不问作者): 1. **学科**:具体到分支(如"线性代数"而非"数学")。用户触发时若已说明,此项不再问。 2. **读者认知起点**:零基础 / 有先修(注明先修什么) 3. **教材深度**:入门 / 进阶 4. **篇幅规模**:6–8 章 / 8–12 章 / 12 章以上 若当前环境没有 AskUserQuestion 工具,降级为编号提问并等待文本回复: ```text 请回答以下问题(回复格式如 "1 线性代数 2a 3a 4b"): 1. 教材学科(请具体到分支)? 2. 读者认知起点? a) 零基础 b) 有先修(请注明) 3. 教材深度? a) 入门 b) 进阶 4. 篇幅规模? a) 6–8 章 b) 8–12 章 c) 12 章以上 ``` 按语义宽松解析回复,能定位到各项即可;无法判断时只就有歧义的一项追问。 **判定学科档案**(契约第五项):按学科到 [../textbook/references/subject-profile-spec.md](../textbook/references/subject-profile-spec.md) 第 5 节索引表定位档案 id。判定一次、全流程沿用,后续阶段不重判。 - 索引里有匹配项 → 取该 id; - 找不到匹配项(如历史/哲学/文学等答案取决于论证与立场的学科)→ 按该文档第 7 节处理:向作者说明「本学科暂无专属档案,将按 `<最接近的 id>` 档案处理」并指出已知差异(哪些题型在该档案里没有对应验证手段、章内段义是否需要调整),由作者决定继续或改学科范围,**不得静默套用**。作者决定继续则照该档案执行,`学科档案` 记录实际使用的 id。 **档案有前置输入要求时,追加一轮材料提问**:判定出的档案第 1 节若写有「前置输入要求」(`humanities`、`economics` 有,`stem` 没有),在写盘前**追加一轮提问**,按该档案点名的类别向作者索要材料。这一轮之所以必要:四问里第 1 问才问到学科,问完才判定得出档案,届时才知道本学科要不要材料——所以它只能发生在第一轮之后。 **这一轮不是 gate**:作者答"没有"、答不全、或直接跳过,一律照常放行进入阶段 2,**绝不等待确认**。它换来的不是许可,是让作者在动笔前就知道代价。两条出口都要落盘: - 作者提供了 → 把材料清单(书名与版本 / 数据库与口径 / 文献目录)写进「## 一、教学定位」的子节,后续各章据此核对; - 作者未提供或给不全 → 把该档案第 1 节的降级纪律与**预期代价**写进同一子节(如「无史料输入时预期约三分之一的题挂 `⚠️ 需作者确认`,定稿前需逐条核定」)。 **为什么必须落盘、不能只在对话里说一句**:各章在不同会话里独立写成(上下文隔离),`00-教材设计.md` 是唯一能传到阶段 4 的载体。只说过没写下的纪律,写第 3 章时等于不存在。 产出写入 `00-教材设计.md` 的「## 一、教学定位」,其中**必须含一行 `学科档案:<id>`**——不设 gate,让作者看见即可:档案决定全书的验证纪律与章内段式,选错一次会歪一整本书,而作者是唯一有资格判断「这个近似可以接受」的人。写完**不停顿**,直接进入阶段 2。 ## 阶段 2/3:UbD 预期结果设计(核心 gate) 打印进度:`▶ 阶段 2/3:UbD 预期结果设计` 严格按 [references/ubd-framework.md](references/ubd-framework.md) 设计五件套(此段与学科无关,任何档案下逐条要求相同)。学习目标动词查 [references/bloom-levels.md](references/bloom-levels.md) 第 2 节的通用基线,再补所用档案第 3 节的本学科特有动词: 1. **大概念**:3–7 个,每个是"主张"不是名词; 2. **持久理解**:一律"学生将理解:……"句式,是洞见不是知识点复述; 3. **核心问题**:2–5 个开放性问题,能贯穿多章; 4. **迁移目标**:情境必须是教材没直接教过的; 5. **学习目标**:每条用 Bloom 动词 + 层级标注(格式:目标句 +(Bloom:应用)),可出题检验。 五件套**逐条带编号**呈现并写入设计文档(前缀 `B`/`U`/`Q`/`T`/`O`,约定与"编号不重排"纪律见 ubd-framework.md 第 2 节)——阶段 3 的章节树要靠编号引用持久理解与学习目标。 呈现前先过 ubd-framework.md 第 5 节的快速自查清单(七问)和第 3 节一致性检查——**自查不过先修再呈现**,gate 是给作者确认方向的,不是让作者替 skill 做质检的。 完整呈现五件套后停下: `⏸ 等待确认:UbD 五件套(回复"确认"进入章节设计,或直接提出修改)` **Gate 规则(不可绕过)**: - 作者提出修改 → 更新后**重新完整呈现**五件套(每次重新呈现前同样先过第 5 节自查与一致性检查——修改可能破坏追溯关系),再次等待确认,循环直到作者明确确认; - **明确确认**的判定见契约文档第 5 节:明确表示通过且不附带修改要求("确认/通过/OK"等);"确认,但把 X 改一下"按修改分支处理(修改优先);答复含糊时追问而不是自行判定为确认; - 未确认绝不进入阶段 3; - 确认后将五件套写入 `00-教材设计.md` 的「## 二、UbD 五件套(已确认)」。 ## 阶段 3/3:评估与章节设计(次要 gate) 打印进度:`▶ 阶段 3/3:评估与章节设计` 依据已确认的五件套设计四项产出(对应契约 `{章节树[], 例题习题计划[], 表现性任务[], 梯度报告}`): 1. **章节树**:每章 `{章号, 章标题, 一句话定位, 承载的持久理解编号[], 承载的学习目标编号[]}`,章数符合阶段 1 的篇幅规模。 **对齐检查(双向,硬性,两组编号各查一遍)**: - 持久理解:某章承载不了任何持久理解 → 砍掉或改造该章;某条持久理解没有任何章承载 → 补章,或向作者明示放弃该条; - 学习目标:某章一条学习目标都不承载 → 它的章首写不出"读完这章你能做什么",改造该章或并入相邻章;某条学习目标没有任何章承载 → 分配进某章,或与作者商定删除(ubd-framework.md 第 3 节留待本阶段校验的两项之一)。一条目标可被多章承载(跨章递进),一章通常承载 1–3 条——超过 4 条通常说明这一章装了太多东西。 检查结果随章节树一并呈现。 2. **例题习题计划**:每章三类题的 `{主题, Bloom层级}` 列表,数量参考四段式配额(示范例题 1–3 / 引导练习 1–3 / 独立习题 3–8,见 [../textbook-chapter/references/chapter-template.md](../textbook-chapter/references/chapter-template.md));层级分布参考**所用档案第 3 节**的章内分布建议——各学科不同(bloom-levels.md 第 7 节只留通用部分与指路)。 3. **梯度报告**:按 bloom-levels.md 第 5–6 节生成"层级×章节矩阵 + 合计 + 占比 + 检查结果",执行三条检查规则。**有告警必须连同"建议在第 N 章补 X 层级题目"的可操作建议一起呈现**,不许只报问题不给出路。 4. **表现性任务**:1–3 个综合性任务,按 [references/performance-task-rubric.md](references/performance-task-rubric.md) 设计——每个任务用 GRASPS 六要素写清情境(情境须是教材没直接教过的),并附一张评价标准表(维度 3–5 个 × 水平 3–4 级,维度从持久理解或迁移目标推出,每格写可观察的表现描述);每个注明对应哪条迁移目标(每条迁移目标至少被一个任务覆盖,否则回到五件套与作者商定取舍)。呈现前过该文档第 5 节自查清单。 **动机**:没有评价标准的任务只是一句口号——作者无法评,学生不知道"好"长什么样,而表现性任务是迁移目标在全书唯一的检验落点。 完整呈现四项后停下: `⏸ 等待确认:章节树与梯度规划(回复"确认"完成大纲设计,或直接提出修改)` Gate 规则与阶段 2 相同:修改后重新完整呈现,确认前绝不放行。确认后写入 `00-教材设计.md` 的「## 三、章节树与梯度规划(已确认)」与「## 四、表现性任务」。 ## 产出与交接 - **落盘物**:完整的 `00-教材设计.md`,固定二级标题结构见契约文档第 3 节; - **回报上游**(被调度时):阶段 1 完成即回报 `学科档案`(供主 skill 写入 `.progress.json` 的 `subject_profile`),阶段 3 完成回报契约 `{章节树[], 例题习题计划[], 表现性任务[], 梯度报告}` + 两个 gate 均已确认的显式声明; - 独立触发时,最后向作者说明:可用 textbook 从此设计文档继续逐章写作。 ## 真实性约束 五件套和章节树是设计产物,无需运行验证;但若作者在阶段 1 提供了学科材料(讲义、笔记、课程标准),设计必须与材料一致,不虚构材料中不存在的学科内容;材料未覆盖处按学科公认体系设计。
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.