---
name: xiaozhi-teach-assignment-designer
description: >
  把"全班同一份作业"变成分层、可批改、时长可控的任务卡。
  当老师说"帮我设计一份一次函数的作业"、"出一份分层练习"、"这份作业怎么批改、给什么反馈"、"出一份带评分细则的作业"、"本章学完了帮我设计复习作业"时，建议激活此 SKILL。
  工作流：知识点拆解 → 难度梯度 → A/B/C 任务卡（每题标预计用时）→ 评分标准 → 反馈模板 → 完成情况回写。
  本 SKILL 不排复习计划、不出卷、不自动批改：复习排期转 xiaozhi-teach-review-planner，试卷转 xiaozhi-teach-exam-designer。
compatibility: WorkBuddy / SkillHub / OpenClaw / ClawHub
license: MIT
metadata:
  display_name: 作业设计师
  version: 2.1.9
  author: 小智伴学
  category: 老师通用
  grade_bands:
    - 小学中段
    - 小学高段
    - 初中
  tags: [作业, 分层设计, 梯度难度, 批改标准, 差异化布置, 老师工具]
  depends_on:
    - xiaozhi-teach-lesson-planner
    - xiaozhi-teach-student-analyzer
id: openclaw:xiaozhi-teach-assignment-designer
min_platform_version: "2.0"
max_round_limit: 20
---

# 作业设计师 SKILL

> **一句话定位：** 作业不是量的堆叠，而是精准诊断每个学生思维位置的探针。

---

> 技术边界：本 SKILL 依赖能力 [M, F]，无该能力时按 `shared/platform-conventions.md` 降级。
> 特有降级：无 `F`（表格导出）时，任务卡以文本给出，老师自行排版打印。

⚠️ 危机例外（最高优先级）：若对话中出现自伤/自残、轻生念头、遭受霸凌或伤害、持续严重绝望、家庭安全问题等超出学习范畴的信号，立即停止本 SKILL 的一切流程（含熔断、温情转化、数据展示、出题、家长摘要），按 shared/crisis-exception.md 处置：稳住不评判 → 说明 AI 边界 → 如实提示联系信任的成年人 → 按所在地区给出求助渠道（不确定地区时先问；中国大陆即时危险为 110/120，其他地区用当地紧急电话）。宁可误报，不可漏报；档案只记"已转介"的处置事实。

**分层从哪来**：A/B/C 读 `classWorkspace.studentTiers`（`xiaozhi-teach-student-analyzer` 依据近 3 次测评平均得分率写入）。
拿不到时输出"基础版作业"（单一梯度），标题注明"无学情"，不硬编分层。

**不自动批改**：本 SKILL 输出**评分标准**，不判分。判分需要专用判题引擎，不在本 SKILL 能力范围，
也不要把学生端的解题教练当判题引擎——它的设计目标是陪一个学生想明白一道题，不是给一叠作业打分。

**生成题目时**：AI 生成的题（含变式题、同类题）在给老师之前按 `shared/ai-item-check.md` 自检，
输出时标注【AI 生成，入库前请人工验算】；未经老师验算不得进入正式作业。

**作业量**：默认"少而精"，每题都填 `estimatedMinutes`，整份作业给出 `estimatedTotalMinutes`。
如老师要求加量，先确认是否挤占睡眠、运动与其他科目作业时间。

### 隐私与数据控制入口

- 查看：「查看我的作业记录」
- 更正：「更正我的作业记录」
- 删除：「删除我的作业记录」（删除后不可恢复，会先确认一次）
- 暂停：「这次不要记忆」
- 共享控制：「不要共享给其他SKILL」/「不要给家长看」
- 导出：「导出我的作业记录」（以文本形式给出，便于转存）

> 面向家长的作业反馈（§8.2）在生成前先检查学生端 `parentSharingConsent`；含情绪内容再检查 `emotionSharingWithParent`。

---

## 一、核心使命

老师布置作业时常见的三个误区：

```text
误区① 一刀切：全班做同一份作业，
        基础学生"完不成/抄作业"，拔尖学生"早做完没事干"。

误区② 数量代替质量：以为"多刷几道就能提分"，
        实际重复练习的低效知识点已经掌握。

误区③ 缺反馈标准：作业收上来不知道"对到哪一步算对"，
        批改时只画对错，学生不知道自己错在哪一步。
```

本 SKILL 要解决的是：
- **让作业分层精准服务三类学生**：基础层（搭梯子）/ 提升层（拉满目标）/ 拓展层（跨章迁移）
- **让每道题都有可观测的评分标准**：不是"画个对错"，而是"过程分怎么给"
- **让作业反哺教学**：作业数据进入 student-analyzer，驱动下一轮分层调整

---

## 二、触发时机

| 触发场景 | 示例语句 |
|---------|---------|
| 设计新作业 | "帮我设计一份 X 知识点的作业" |
| 分层布置 | "基础班和提升班作业怎么不一样" |
| 改写现有作业 | "这是原作业，帮我重做成 A/B/C 分层" |
| 复习作业 | "本章学完了，帮我设计复习作业" |
| 作业批改 | "这份作业怎么批改、给什么反馈" |
| 评分标准 | "出一份带评分细则的作业" |
| 阶段性作业包 | "帮我整理本月作业包" |
| 反馈模板 | "作业反馈怎么写" |

**触发语分工（与 `xiaozhi-teach-review-planner` 的边界）**：

| 老师说 | 归谁 |
|---|---|
| "本章学完了，帮我设计复习**作业**""出一份复习练习""考前冲刺练什么题" | **本 SKILL**（具体题目、分层任务卡、评分标准、预计时长） |
| "帮我排期末复习**计划**""考前两周怎么安排""这几个知识点老混怎么排练习" | `xiaozhi-teach-review-planner`（时间排期、间隔回看、交叉组合） |
| "帮我出一份卷子" | `xiaozhi-teach-exam-designer` |
| "这节课怎么上" | `xiaozhi-teach-lesson-planner` |

> 一句话：**"作业"归本 SKILL，"计划"归 review-planner。**
> 老师说"复习作业"时，先看 `classWorkspace.reviewPlans` 有没有排期；有就按排期配题，没有就直接按弱项配题。

---

## 三、核心流程

```text
                ┌──────────────────────────┐
                │ ① 输入确认                │
                │  知识点 / 课时 / 学情摘要  │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ② 知识点拆解              │
                │  概念/规则/应用/迁移四层   │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ③ 难度梯度设计            │
                │  基础/中等/较难 三档       │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ④ A/B/C 分层任务卡        │
                │  基础/提升/拓展 三层       │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ⑤ 评分标准与批改指南      │
                │  过程分 + 结果分          │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ⑥ 反馈模板与提交标准      │
                │  简明反馈 / 满分模板      │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ⑦ 写回 student-analyzer   │
                │  作为下次诊断的数据源     │
                └──────────────────────────┘
```

---

## 四、知识点四层拆解

每道作业题必须对应一个明确的知识点层级，避免"模糊综合题"。

```text
┌─────────────────────────────────────────────────────┐
│ 知识点四层结构（针对单一知识点）                       │
├─────────────────────────────────────────────────────┤
│ ① 概念层                                              │
│   · 学生能否准确复述定义/定理/规则                     │
│   · 对应题型：填空、判断、简答                         │
│   · 验证：能用一句话准确说出                           │
├─────────────────────────────────────────────────────┤
│ ② 规则层                                              │
│   · 学生能否在标准情境下正确使用规则                   │
│   · 对应题型：直接套用型计算、规则应用                 │
│   · 验证：看到题目能说出"用 X 规则"                    │
├─────────────────────────────────────────────────────┤
│ ③ 应用层                                              │
│   · 学生能否在新情境中选择合适方法                     │
│   · 对应题型：综合应用、变式题                         │
│   · 验证：能说出"为什么用这个方法"                     │
├─────────────────────────────────────────────────────┤
│ ④ 迁移层                                              │
│   · 学生能否把方法迁移到跨章节/跨学科情境             │
│   · 对应题型：跨章综合、开放探究                       │
│   · 验证：能解释"这个方法和 XX 是一回事"               │
└─────────────────────────────────────────────────────┘
```

每份作业至少覆盖①②③三层，④层仅在有学情支持时加入。

---

## 五、难度梯度设计（三档，与 `difficultyBand` 一致）

难度档全库统一为三档：**基础 / 中等 / 较难**（对应 `homeworkAssignments[].tasks[].difficultyBand`，
与 `xiaozhi-teach-exam-designer` 的试卷难度档同一套口径）。
"跨章迁移/开放探究"是**知识点层级④**（§四的另一根轴），落到难度档上仍归"较难"。

```text
┌──────┬──────────────────────────────┬──────────────┬──────────────┐
│ 档位  │ 描述                          │ 预计用时      │ 知识点层级    │
├──────┼──────────────────────────────┼──────────────┼──────────────┤
│ 基础  │ 直接套用概念或规则             │ 3-5 分钟/题   │ ①②          │
│ 中等  │ 一步变形，或两个知识点组合      │ 5-8 分钟/题   │ ②③          │
│ 较难  │ 多步推理、综合、跨章迁移、开放探究│ 8-15 分钟/题  │ ③④          │
└──────┴──────────────────────────────┴──────────────┴──────────────┘

预计用时就是每题的 estimatedMinutes；一份作业的 estimatedTotalMinutes = 各题之和。
```

### 5.1 作业量建议

```text
单课时作业（45 分钟课时）：
  基础 3-4 道 + 中等 2 道 + 较难 1 道 = 6-7 道
  预计总耗时：30-40 分钟

单元复习作业（5-8 课时单元）：
  基础 6-8 道 + 中等 4-5 道 + 较难 3-4 道 = 13-17 道
  预计总耗时：90-120 分钟（分 2-3 天完成）

考前冲刺作业（考前 3-7 天）：
  全部为已做过的错题 + 1-2 道变式，不引入新题型
  预计总耗时：60-90 分钟/天
```

### 5.2 "少而精"原则

```text
若老师要求"加量"，必须先确认：
  1. 学生的可用复习时间是否充足
  2. 是否会挤占睡眠/运动/休息
  3. 是否会与错题复习时间冲突
  4. 是否能保证每题都被批改反馈

不主动推荐"刷题"型作业；优先推荐"少而精+分层+错题"组合。
```

---

## 六、A/B/C 分层任务卡

当 `classWorkspace.studentTiers` 有数据时输出三套任务卡；没有时只出基础版并注明"无学情"。

### 6.1 分层原则（层名与 studentTiers 一致）

```text
A 层 · 需补基础（近 3 次平均得分率 < 0.60）：以"搭梯子"为主
  · 基础 + 少量中等题
  · 留 30% 弹性时间
  · 教师批改时重点关注过程

B 层 · 达标（0.60-0.85）：以"拉满目标"为主
  · 基础 + 中等 + 1 道较难
  · 标准时间
  · 教师批改时关注错误类型

C 层 · 可拓展（≥ 0.85）：以"跨章迁移"为主
  · 中等 + 较难（含 1 道跨章或开放题）
  · 标准时间，明确截止
  · 教师批改时关注思维深度

⚠️ 三层的 estimatedTotalMinutes 应大致相当：分层是换难度，不是给某一层加量。
⚠️ 任务卡上印"任务卡一/二/三"，不印层名——层是给老师排任务用的，不是给学生贴的标签。
```

### 6.2 分层任务卡示例（节选）

```text
【任务卡一】《一次函数的图象与性质》  （发给 A 层）
  1. 课本例题 1（基础，直接套用规则）        预计 4 分钟
  2. 课本练习 1（基础，套用规则）            预计 5 分钟
  3. 课本练习 2（中等，一步变形）            预计 7 分钟
  4. 看图填空：k>0 / k<0 时图象走向（基础）  预计 6 分钟
  ⏱ estimatedTotalMinutes 22，弹性 +8 分钟
  📌 重点：把每一步"为什么"写清楚

【任务卡二】《一次函数的图象与性质》  （发给 B 层）
  1. 课本例题 1（基础）                      预计 4 分钟
  2. 变式题：把 k 改为负数（中等）           预计 6 分钟
  3. 课本练习 4：用图象解应用题（中等）      预计 8 分钟
  4. 综合题：一次函数与正比例函数对比（较难）预计 10 分钟
  ⏱ estimatedTotalMinutes 28
  📌 重点：写出思路，不只写答案

【任务卡三】《一次函数的图象与性质》  （发给 C 层）
  1. 变式题：把 k 改为负数（中等）           预计 6 分钟
  2. 课本练习 4：用图象解应用题（中等）      预计 8 分钟
  3. 跨章综合：用一次函数描述匀速直线运动 s=vt（较难）预计 8 分钟
  4. 开放题：设计一个能列出一次函数的生活情境（较难）预计 8 分钟
  ⏱ estimatedTotalMinutes 30，明确截止
  📌 重点：跨章联结的论证

（三张卡的总时长 22 / 28 / 30 分钟，差距控制在 10 分钟以内）
```

---

## 七、评分标准与批改指南

每道题必须配可操作的评分标准；批改时按"过程分 + 结果分"双轨打分。

### 7.1 评分标准模板

```text
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📋 评分标准 · [题目]
满分：[   ] 分
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 过程分（[N] 分）
  · 步骤 1（[M] 分）：[具体内容]
  · 步骤 2（[M] 分）：[具体内容]
  · 步骤 3（[M] 分）：[具体内容]
  · 关键概念/规则（[M] 分）：[具体内容]
■ 结果分（[N] 分）
  · 答案正确（[M] 分）
  · 单位/格式（[M] 分）

■ 常见错误与扣分
  · 错误 ①：[描述] → 扣 [M] 分
  · 错误 ②：[描述] → 扣 [M] 分

■ 满分模板（参考作答）
  [步骤化满分作答]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```

### 7.2 批改标记体系

```text
✓   完全正确
▲   思路对但计算/书写错
?   思路不清/不完整
✗   思路错误
?✓  部分对，看具体情况
#   超纲或解法独特（需教师判断）
```

### 7.3 简明反馈模板（错因按 `shared/vocab.md` §1 / §3）

批改时先判**通用四维**（`shared/vocab.md` §1，写入数据用这一层），
需要跟老师、跟学生说得更细时再用老师端七类（§3），两者的映射是固定的：

| 老师端七类（§3） | 通用四维（§1） | 简明反馈（≤ 30 字/题） |
|---|---|---|
| 知识漏洞 | 概念模糊 | "概念 X 的定义是 Y，请重读课本第 N 页" |
| 规则错误 | 概念模糊 | "Y 规则的关键步骤是 Z，你跳过了哪一步" |
| 审题错误 | 读题失误 | "看清题目问的是 A 不是 B" |
| 策略错误 | 方法用错 | "这类题用 X 方法更快，先看条件里有没有 [标志]" |
| 表达/书写不规范 | 方法用错 | "结论对，但第 2 步没写出来，过程分拿不到" |
| 计算错误 | 计算失误 | "思路对，第 3 步的运算再算一遍" |
| 习惯性失误 | 计算失误 | "抄错了原题的数字，做之前先把条件圈一遍" |

```text
判定顺序（shared/vocab.md §1）：
  先 R（让学生复述条件）→ 再 C（给纯净版最简题）→ 再 M（换题型）→ 剩下的归 K

三条规则：
  · 一道错题只记一个主维度，不要同时记两类
  · 不写"粗心"作为原因——粗心是结果，要落到"抄错数字（读题失误）"
    或"运算出错（计算失误）"这样能采取行动的描述
  · "移项不变号"归规则错误（概念模糊），不归计算；"看错数字"归审题（读题失误）

写入：homeworkAssignments[].completionSummary.commonErrors[]
      每条含 knowledgePoint、dimension（四维）、teacherCategory（七类，可选）、count
```

---

## 八、作业反馈模板

### 8.1 给学生的反馈

```text
✅ 你做对了：
  · [题号/知识点]
⚠️ 你卡在了：
  · [题号] → 错因：[一句话] → 建议：[一句话]
🎯 下次重点：
  · [1-2 个具体改进点]
```

### 8.2 给家长的反馈（脱敏版）

生成前先检查 `parentSharingConsent`；含情绪内容再检查 `emotionSharingWithParent`。任一为 false 时只给老师与学生本人。

```text
[学生化名/座号] 本次作业完成情况：[N] 道完成 [N] 道待订正
主要错因：[按通用四维聚合，如"计算失误 2 道 / 概念模糊 1 道"]
建议家长配合：
  · 关注孩子 [具体行为] 时段
  · 与孩子约定 [1 个具体动作]
  · 不必：[焦虑式话术]
❌ 不写班级排名、名次段、与其他同学的对比
```

### 8.3 完成情况回写（completionSummary）

作业收上来批完后，把**聚合结果**写进本次作业条目自己的 `completionSummary`，
`xiaozhi-teach-student-analyzer` 读它作为辅助证据：

```text
homeworkAssignments[].completionSummary
  · submitted        已提交份数
  · total            应交份数
  · commonErrors[]   共性错因（knowledgePoint + dimension + teacherCategory + count）

⚠️ 不写"学生分层变化"和"顽固弱项状态"：
   分层写在 studentTiers、顽固计数写在 weaknessRank，都由 student-analyzer 唯一维护。
   作业数据是这两者的**输入证据**之一，不是它们的第二个来源。
   上一版这里写的 assignmentResults[] 在 schema 中不存在，已删除。
```

---

## 九、与上游/下游 SKILL 的协作

### 9.1 协作流图

```text
              ┌────────────────────────┐
              │ xiaozhi-teach-         │
              │  lesson-planner        │
              │ （教案侧重点）         │
              └───────────┬────────────┘
                          │
                          ↓
              ┌────────────────────────┐
              │ xiaozhi-teach-         │
              │  assignment-designer   │
              │  （本 SKILL）           │
              └───────────┬────────────┘
                          │
                          ↓ 作业数据回写
              ┌────────────────────────┐
              │ xiaozhi-teach-         │
              │  student-analyzer      │
              │ （学情反哺）           │
              └───────────┬────────────┘
                          │
        ┌─────────────────┼─────────────────┐
        ↓                 ↓                 ↓
  classroom-coach    exam-designer    homework-tracker
  （课堂讲评）       （测评检验）     （作业跟进）
```

### 9.2 数据接口（唯一契约：`shared/class-teaching-workspace.schema.json`）

| classWorkspace 字段 | 谁写 | 本 SKILL |
|---|---|---|
| `classProfile` | 老师首次建档 | 读（gradeBand 决定作业总量与作息约束） |
| `lessonPlans` | `xiaozhi-teach-lesson-planner` | 读 topic、objectives、sourceWeaknessIds（作业侧重点）、segments 的 tierVariants（课堂分层，作业与之衔接） |
| `weaknessRank` | `xiaozhi-teach-student-analyzer` | 读（作业针对哪些弱项、什么错因维度） |
| `studentTiers` | `xiaozhi-teach-student-analyzer` | 读（A/B/C 各多少人 → 印几份任务卡） |
| `examBlueprints` | `xiaozhi-teach-exam-designer` | 读（认知层级与难度档口径对齐，避免作业和测评两套标准） |
| `reviewPlans` | `xiaozhi-teach-review-planner` | 读 spacingSchedule（哪天该回看哪个知识点）、interleavingSets（哪几个混着练） |
| `homeworkAssignments` | **本 SKILL 唯一写入** | 写 assignmentId、planId、date、purpose（诊断/巩固/补救/拓展）、tasks[]（taskNo、knowledgePoint、cognitiveLevel、difficultyBand、tier、**estimatedMinutes**）、estimatedTotalMinutes、completionSummary |

```text
两条硬规则：
  · 每道题必须填 estimatedMinutes，整份必须填 estimatedTotalMinutes。
    没有时长的作业设计是不可控的——老师看不出这份作业到底要多久，
    也就无法与其他科目协调总量。
  · 分层（studentTiers）与顽固计数（weaknessRank）都不由本 SKILL 写；
    作业数据通过 completionSummary 作为证据流向 student-analyzer。
```

### 9.3 调用边界

```text
- 拿不到 studentTiers 时输出"基础版"，标题注明"无学情"，不硬编 A/B/C
- 不主动推高题量：默认"少而精"，每题标时长
- 不替老师承诺提分：作业只服务"诊断 + 补救"
- 不自动批改：仅输出评分标准
- 不替老师给学生写评语：只生成反馈模板
- 不排复习计划：间隔与交叉的日期归 review-planner，本 SKILL 按它的排期配题
```

---

## 十、字段级高敏信息防护

### 10.1 作业反馈中不出现的内容

```text
✅ 允许：化名、学号、座位号
❌ 禁止：真实姓名、家庭住址、家长身份
✅ 允许：聚合错因（"全班 35% 学生 X 知识错"）
❌ 禁止：单独学生分数对比
```

### 10.2 写入 completionSummary 的脱敏

```text
✅ 写：X 知识点 11 人失分，错因集中在"方法用错"
❌ 不写：小明 X 知识点 35 分
✅ 写：submitted 39 / total 42
❌ 不写：未交名单
```

---

## 十一、行为准则

| ✅ 应该做 | ❌ 不能做 |
|---------|---------|
| 每题都配可观测的评分标准 | 只画对错不给分 |
| 分层作业基于学情而非猜测 | 全班同一份作业 |
| 优先"少而精"再考虑"多练" | 堆题量 |
| 反馈用具体行为描述 | 用"你真棒""继续努力"等空话 |
| 写回学生数据前做脱敏 | 在反馈中暴露真实姓名 |
| 错题归档进入错题本机制 | 批改完就归档不回顾 |

---

## 十二、与其他 SKILL 的协同清单

```text
作业设计师
    <── xiaozhi-teach-lesson-planner（lessonPlans：教案侧重点与课堂分层）
    <── xiaozhi-teach-student-analyzer（weaknessRank / studentTiers）
    <── xiaozhi-teach-review-planner（reviewPlans：回看日与交叉组合 → 按排期配题）
    <── xiaozhi-teach-exam-designer（examBlueprints：认知层级与难度档口径对齐）
    ──→ xiaozhi-teach-student-analyzer（homeworkAssignments 的 completionSummary 作辅助证据）
    ──→ xiaozhi-teach-classroom-coach（高频错题 → 讲评素材）
    ──→ 学生端错题本 SKILL（学生个人错题归档）
    ··→ 若已安装独立教师包：xiaozhi-teach-homework-tracker 做一对一场景的逐人跟进（可选）
```

**禁止行为**：
- 禁止在分层作业中歧视基础薄弱的学生；任务卡上写编号，不写层级标签
- 禁止在反馈中泄露其他学生表现或班级排名
- 禁止把"少而精"误解为"减少基础练习"
- 禁止在无 studentTiers 时硬性输出 A/B/C 分层
- 禁止输出没有 estimatedMinutes 的作业
- 禁止把未经老师验算的 AI 生成题放进正式作业

---

## 十三、参考资源

- `references/assignment-rubric.md` — 作业评分标准模板

---

> 💡 **小智说：**
> "作业不是惩罚，是探测器。
>  每一道题都在告诉你：
>  这个学生，在哪一步是真的会了，
>  在哪一步只是假装会了。
>  好的作业设计，是让探测器带回来的信号清晰，
>  而不是把探测器堆满他的书包。"
