xiaozhi-teach-math-error-analyzer · v2.1.9 · 2026-09-06 · sha256 ab6e81954e757ca4

xiaozhi-teach-math-error-analyzer v2.1.9A

Immutable. This exact content is served forever at /api/v1/blob/ab6e81954e757ca4.

---
name: xiaozhi-teach-math-error-analyzer
description: >
  数学教师的班级错因分析:把作业与试卷的错题变成"下节数学课讲什么"。
  当老师说"这道数学题错得很多""班级共性错因""哪个数学知识点没掌握""下次数学课讲什么""数学知识点热力图""这个学生数学总错同一类"时,建议激活此SKILL。
  核心工作流:错题收集 → 阈值触发(错误率>30%的题)+ 抽样 → 错因分类(教师端七类,写入时映射通用四维)→ 知识图谱定位 → 班级/个体画像 → 教学干预建议。
  不处理:出试卷与双向细目表(转 xiaozhi-teach-math-exam-designer)、教案与概念建构(转 xiaozhi-teach-math-lesson-planner)、作业布置与批改台账(转 xiaozhi-teach-homework-tracker)。
compatibility: WorkBuddy / SkillHub / OpenClaw / ClawHub
license: MIT
metadata:
  display_name: 班级错因分析
  version: 2.1.9
  author: 小智伴学
  category: 老师数学
  grade_bands:
    - 初中
  tags: [错因分析, 知识图谱, 班级画像, 学情, 数学老师]
  depends_on:
    - xiaozhi-teach-student-analyzer
    - xiaozhi-teach-lesson-planner
    - xiaozhi-teach-homework-tracker
id: openclaw:xiaozhi-teach-math-error-analyzer
min_platform_version: "2.0"
max_round_limit: 25
---

# 班级错因分析 SKILL

> **一句话定位:** 错题不是学员的"耻辱",是教学的"指南针"——错因分析是从"题目表面"到"教学深层"的桥梁。

---

> 技术边界:本 SKILL 依赖能力 [M, X, F],无该能力时按 shared/platform-conventions.md 降级。
> 无跨会话统计(X)时:不输出"这个学生这学期错了 N 次",只统计老师本次提供的数据,并注明样本范围。
> 本 SKILL 输出**错因分析框架**与**教学干预建议**,不代替老师阅卷、不给学员打分排名、不替老师做教学决策。
> 错因分析一律基于化名/编号,不公开学员真实姓名 + 错题。
> 干预方案里的针对性练习题若由 AI 现出,生成前按 `shared/ai-item-check.md` 自检,
> 并标注 `【AI 生成,入库前请人工验算】`;未经老师验算不得进入作业或试卷。

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

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

```text
- 查看:「查看我的班级错因档案」
- 更正:「更正我的档案」
- 删除:「删除我的档案」(删除后不可恢复,会先确认一次)
- 暂停:「这次不要记忆」
- 共享控制:「不要共享给其他SKILL」/「不要给家长看」
- 导出:「导出我的档案」(以文本形式给出,便于转存)
```

---

## 〇、错因录入的工作量控制:阈值触发 + 抽样

逐题、逐生做七类错因标注在真实课堂上做不完(一个班 45 人 × 25 题 = 1125 次判定)。
本 SKILL 默认按下面的规则决定"哪些题值得做七类分析":

```text
第 1 步(全量,机器可算):
  由 classWorkspace.itemScores[] 算出每题的错误率与 itemStats[].pValue
  → 全部题目只记通用四维(概念模糊/计算失误/读题失误/方法用错),四选一,快

第 2 步(阈值触发):
  **错误率 > 30% 的题**才进入七类精细分析
  → 这些是真正影响下节课的题;一份卷子通常 3-6 道

第 3 步(抽样):
  对触发的每道题,抽 5-8 份学生答卷做七类判定(覆盖高中低三档)
  → 抽样比例与实际份数写进报告,不用抽样结果冒充全班计数

第 4 步(个体):
  只对老师点名关注的学生(一般 3-5 人)做个体错因画像
  → 其余学生只保留通用四维标签

⚠️ 报告里凡是来自抽样的比例,必须写"抽样 N 份";
   凡是来自全量的,写"全班 N 人"。两者不混用。
   样本 < 10 份时,只给方向不给百分比(置信度 🔴 样本不足,不写入长期档案)。
```

---

## 一、核心使命

数学错因分析常见的三个误区:

```text
误区① 错因=粗心:把所有错都归为"粗心",
        错过就过,下次还错。

误区② 错题=个别:把错题归为"学员不认真",
        没看到教学层面的问题。

误区③ 错题=补差:错题分析完就讲一遍,
        没有系统化、没有持续追踪。
```

本 SKILL 要解决的是:
- **让错因"具体化"**:从"粗心"到七类具体错因,并映射到通用四维
- **让错题"关联化"**:单个错题连到知识图谱
- **让分析"系统化"**:班级共性 + 学员个体
- **让干预"精准化"**:根据错因给具体建议

---

## 二、触发时机

**触发前提**:手上有**具体的错题或作业/测评的作答数据**。老师泛泛说"最近错得多""下次课讲什么"而没有题、没有数据时,先问"哪次作业/测评?能把错题或逐题得分发我吗",不进入分析。

| 触发场景 | 示例语句 |
|---------|---------|
| 错题分析 | "这道题错得很多" |
| 学员错在哪 | "学员错在哪里" |
| 班级共性 | "班级共性错因" |
| 知识点掌握 | "哪个知识点没掌握" |
| 下次课讲什么 | "下次课讲什么" |
| 错因分类 | "学员错的原因" |
| 知识图谱 | "学员的知识漏洞" |
| 错题追踪 | "学员下次还错" |

---

## 三、核心流程

```text
                ┌──────────────────────────┐
                │ ① 错题收集                │
                │  作业/试卷/课堂          │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ② 错因分类                │
                │  7 类错因                  │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ③ 知识图谱关联            │
                │  错题→知识点              │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ④ 班级共性画像            │
                │  + 学员个体画像           │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ⑤ 教学干预建议            │
                │  班级+个体                 │
                └────────────┬─────────────┘
                             ↓
                ┌──────────────────────────┐
                │ ⑥ 写回 student-analyzer   │
                │  错因 DNA                 │
                └──────────────────────────┘
```

---

## 四、错因分类(7 类)

### 4.1 错因总览

词表以 `shared/vocab.md §3` 为唯一来源。

```text
┌────────────────┬────────────────────────┬────────────┬──────────────────────┐
│ 错因(教师端七类)│ 描述                    │ 关键特征    │ 教学策略              │
├────────────────┼────────────────────────┼────────────┼──────────────────────┤
│ 知识漏洞        │ 缺前置知识              │ 前几节的内容│ 补前置                │
│ 规则错误        │ 公式/法则记错           │ 错得"有理"  │ 最小步骤拆解 + 正反例  │
│ 审题错误        │ 漏看条件/看错问题/抄错题 │ 答非所问    │ 训练审题(圈关键词)   │
│ 策略错误        │ 方法选择不当            │ 解题思路错  │ 教策略选择 + 题组训练  │
│ 表达/书写不规范  │ 会做但过程分丢了        │ 答案对、扣分│ 过程分示范 + 评分说明  │
│ 计算错误        │ 列式对、算错            │ 过程对结果错│ 计算专项 + 估算验证    │
│ 习惯性失误      │ 漏写单位/跳步/不检验     │ 固定动作缺失│ **习惯与检查流程训练**  │
└────────────────┴────────────────────────┴────────────┴──────────────────────┘

⚠️ "习惯性失误"(原"粗心大意")的干预是**习惯与检查流程训练**,不是"心理干预"。
   老师端不做心理诊断;学生出现情绪困扰时,按上面的危机例外或转学校心理老师。
⚠️ 不使用"粗心"作为原因——粗心是结果。记录时必须写清具体动作:漏写单位 / 跳步 / 未检验。
```

### 4.1.1 互斥判定规则(一道题只归一类)

```text
按顺序问,问到第一个"是"就定类,不再往下:
  ① 前置知识都不会?        → 知识漏洞
  ② 法则/公式记错?          → 规则错误(**不归计算错误**)
  ③ 条件看错、抄错题?       → 审题错误(**不归习惯性失误**)
  ④ 方法选错?              → 策略错误
  ⑤ 方法对、过程写不全被扣分?→ 表达/书写不规范
  ⑥ 列式对、只是算错?       → 计算错误
  ⑦ 漏单位/跳步/不检验?     → 习惯性失误

高频争议:
  "移项不变号"     → 规则错误,不是计算错误
  "看错数字"       → 审题错误,不是习惯性失误
  "不等式乘负数没变号" → 规则错误
```

### 4.1.2 与通用四维的映射(写回学生端时必用)

> 教师端七类用于精细化教学诊断;写回学生端或经 `handover-protocol` 交接时,
> `basicDimension` 只接受通用四维(概念模糊/计算失误/读题失误/方法用错),
> 写入 `classWorkspace.homeworkAssignments[].completionSummary.commonErrors[].dimension` 同理。
> 未映射会被 schema 的 enum 校验拒绝。

```text
教师端七类                        →  通用四维(basicDimension)
──────────────────────────────────────────────────────
知识漏洞 / 规则错误               →  概念模糊
计算错误 / 习惯性失误             →  计算失误
审题错误                          →  读题失误
策略错误 / 表达·书写不规范         →  方法用错
```

> `classWorkspace.errorTally` 同时保留 `teacherCategory`(七类原值)与 `dimension`(映射后的四维),
> 前者供教师本地报告使用,后者是跨端交接的公共码。

### 4.2 错因识别

```text
■ 概念模糊
  · 学员错得"很没把握"
  · 同一概念反复错
  · 学员自己说"我没懂"

■ 规则错误
  · 学员说"我记了公式但用错"
  · 错得"有理有据"(学员觉得自己对)
  · 概念清晰但规则错

■ 审题错误
  · 答非所问
  · 漏看条件
  · 看错问题(求面积看成周长)

■ 策略错误
  · 解题方向错
  · 学员不知道"用哪个方法"
  · 复杂题不会拆

■ 表达/书写不规范
  · 答案对但过程分被扣
  · 证明题只写结论不写依据
  · 跳步,改卷老师接不上

■ 计算错误
  · 列式对,结果错
  · 学员自己一看就能"指出来错了"
  · 化简、通分、开方一类的运算出错

■ 习惯性失误
  · 誊抄自己的中间结果时写错
  · 漏写单位、漏写答句
  · 做完不检验(方程不代回、几何不复核图)
  · 注意:**抄错题目、看错数字归审题错误**,不归这一类

■ 知识漏洞
  · 缺前置知识
  · 学员听不懂讲解
  · 不是本节内容,是前几节内容
```

### 4.3 错因溯源

```text
■ 第一层:表面错因
  · 学员做错了

■ 第二层:错因分类
  · 7 类之一

■ 第三层:根因
  · 概念模糊 → 是哪个概念?
  · 规则错误 → 是哪个规则?
  · 知识漏洞 → 是哪个前置?

■ 第四层:教学原因
  · 教法问题?
  · 学员基础问题?
  · 复习问题?
```

---

## 五、知识图谱关联

### 5.1 知识点体系

```text
小学:
  数与代数:整数/分数/小数/百分数/比/比例
  图形与几何:平面图形/立体图形/周长/面积/体积
  统计与概率:统计表/统计图/概率

初中:
  数与式:有理数/整式/分式/二次根式
  方程与不等式:方程/不等式/方程组
  函数:一次函数/反比例函数/二次函数
  图形:三角形/四边形/圆/相似/全等
  统计:数据/概率/统计

初高衔接(⚠高中,本 SKILL 的 grade_bands 是初中,仅供衔接参考):
  函数:基本初等函数/三角函数/数列(⚠高中)
  几何:空间向量/立体几何/解析几何(⚠高中)
  代数:不等式/复数/计数原理(⚠高中)
  概率统计:随机变量与分布(⚠高中)
```

> 定位错题时只在"初中"一栏内取知识点;落在小学栏说明是前置知识漏洞,
> 落在初高衔接栏说明题目超纲,应先确认题目是否适合本班。

### 5.2 错题-知识点关联样板

> 📎 完整模板见 `references/error-knowledge-link-template.md`(错题-知识点关联填写样板:错题/关联知识点/错因定位三段)

### 5.3 知识点热力图

数据来源:`classWorkspace.itemScores[]` 逐题得分(只有总分时不能生成本图)。
"掌握度"= 该知识点相关题目的班级平均得分率。

```text
┌──────────────────────────────┐
│ 班级知识点热力图(初二·样例)  │
├──────────────────────────────┤
│ 知识点        │ 得分率        │
├──────────────────────────────┤
│ 整式运算      │ 🟢 88%        │
│ 因式分解      │ 🟡 62%        │
│ 分式化简      │ 🔴 35%        │
│ 一次函数图像  │ 🟡 66%        │
│ 全等三角形判定│ 🔴 40%        │
│ 勾股定理应用  │ 🟡 70%        │
│ 数据的集中趋势│ 🟢 80%        │
└──────────────────────────────┘
  🟢 > 70%   🟡 40-70%   🔴 < 40%

⚠️ 上表的百分数是**本班本次测评算出来的**,不是通用参考值。
   样本 < 20 人时,在图下注明"样本 N 人,仅供本次参考"。
   掌握度档位与学生端三档(会复述/会解释/真正掌握)不是一回事,
   跨端交换时按 shared/vocab.md §6 转换。
```

---

## 六、班级共性画像

### 6.1 班级共性错因报告

> 📎 完整模板见 `references/class-error-report-template.md`(班级错因分析报告:总体/错因分布/TOP 3 错因/知识图谱弱项/教学建议)

### 6.2 班级画像维度

```text
┌──────────┬────────────────────────┐
│ 维度      │ 描述                    │
├──────────┼────────────────────────┤
│ 整体水平  │ 班级平均分/中位数       │
│ 错因分布  │ 7 类错因的比例          │
│ 知识图谱  │ 班级知识点掌握热力图   │
│ 进度      │ 班级整体进度            │
│ 互动      │ 班级参与度/活跃度       │
└──────────┴────────────────────────┘
```

---

## 七、学员个体画像

### 7.1 学员错因档案

> 📎 完整模板见 `references/student-error-profile-template.md`(学员个体错因档案:错因分布/主导错因/知识图谱/错题进化趋势)

### 7.2 学员错因追踪

```text
口径按 `shared/vocab.md §5` 的**老师端**规则:由 `xiaozhi-teach-homework-tracker` 计数,
本 SKILL 不自行累加;粒度为"同一知识点 + 同一通用四维",
`classWorkspace.weaknessRank[].stubbornCount` 记的是**近 4 次测评中错误率 >30% 的次数**。

```text
■ 同一知识点+同一维度累计 3 次 → 顽固弱项
  · 启动专项干预
  · 设计针对性训练

■ 累计 5 次 → 高危
  · 与学生本人先沟通策略
  · 是否告知家长依授权位(shared/vocab.md §8):
    先查 parentSharingConsent;涉及情绪内容再查 emotionSharingWithParent
  · 不默认推送家长

■ 两次独立验证做对(间隔 ≥3 天,含 1 次换题型)→ 已攻克
  · 状态用五档:待处理/初步弱项/顽固弱项/突破中/已攻克
  · 不用"错因消失/已解决"这类说法
```

---

## 八、教学干预建议

### 8.1 班级层面

```text
┌──────────┬────────────────────────┐
│ 错因      │ 干预建议                │
├──────────┼────────────────────────┤
│ 知识漏洞  │ 补前置+回顾旧知         │
│ 规则错误  │ 最小步骤拆解+正反例对比 │
│ 审题错误  │ 训练审题+关键词勾画     │
│ 策略错误  │ 教策略选择+题组训练     │
│ 表达不规范│ 过程分示范+评分标准公开 │
│ 计算错误  │ 计算专项+估算验证       │
│ 习惯性失误│ 习惯与检查流程训练      │
└──────────┴────────────────────────┘

> 习惯性失误的干预是**把检查动作写进解题流程**(设→列→解→检验→答),
> 不是"心理干预",也不是加压。老师端不做心理诊断。
```

### 8.2 学员个体

```text
┌──────────┬────────────────────────┐
│ 错因      │ 个体干预                │
├──────────┼────────────────────────┤
│ 知识漏洞  · 补前置                 │
│ 规则错误  · 规则默写+当场复述依据   │
│ 审题错误  · 训练画关键词           │
│ 策略错误  · 教方法框架             │
│ 表达不规范· 按评分点逐条对照改写    │
│ 计算错误  · 限时计算+回代验算       │
│ 习惯性失误· 五步答题模板 + 检验清单 │
└──────────┴────────────────────────┘
```

### 8.3 干预样板

> 📎 完整模板见 `references/intervention-report-template.md`(教学干预建议样板:诊断/班级干预/个体干预/时间安排/评估)

---

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

### 9.1 协作流图

```text
              ┌────────────────────────┐
              │ xiaozhi-teach-         │
              │  homework-tracker      │
              │ (作业错题入库)        │
              └───────────┬────────────┘
                          │
                          ↓
              ┌────────────────────────┐
              │ xiaozhi-teach-         │
              │  math-error-analyzer   │
              │  (本 SKILL)           │
              └───────────┬────────────┘
                          │
        ┌─────────────────┼─────────────────┐
        ↓                 ↓                 ↓
  student-analyzer  lesson-planner   resource-library
  (错因 DNA)     (教学干预计划)  (错题案例库)
```

### 9.2 接口(唯一契约:`shared/class-teaching-workspace.schema.json`)

```text
读:
  classWorkspace.homeworkAssignments[] 的 completionSummary › commonErrors[]
      (knowledgePoint / dimension / teacherCategory / count)→ 作业错题
  classWorkspace.itemScores[](examId / studentAlias / itemNo / score / maxScore)
      → 试卷逐题得分,热力图与错误率的唯一来源
  classWorkspace.itemStats[](pValue / dValue / groupingMethod / flag)
      → 每题难度与区分度,用于判断"是学生不会还是题目有问题"
  classWorkspace.examBlueprints[].items[](knowledgePoint / cognitiveLevel / difficultyBand)
      → 题目考查什么,用于把错题挂到知识点
  classWorkspace.classProfile(gradeBand / classSize / fullScore)→ 学段与换算基准

写(生成待确认条目,老师确认后落库):
  classWorkspace.weaknessRank[]
    .weaknessId / .knowledgePoint / .errorRate
    .dimension(通用四维)/ .evidenceExamIds[] / .lastUpdated
    (不写 .stubbornCount——顽固计数由 xiaozhi-teach-student-analyzer 唯一累加;
      两处都累加会把“近 4 次错 3 次”判错)
  classWorkspace.homeworkAssignments[] 的 completionSummary › commonErrors[]
    knowledgePoint / dimension(四维)/ teacherCategory(七类)/ count
  (不写 classWorkspace.studentTiers[]——A/B/C 分层由
    xiaozhi-teach-student-analyzer 唯一维护,本 SKILL 只读不写;
    需要更新分层时把错因分布交接给它,不自行判定“谁在哪一层”)
  classWorkspace.interactionLogs[].misconceptionsObserved[] → 课上观察到的典型错误
  → 供 xiaozhi-teach-math-lesson-planner 读 weaknessRank 设计下节课
  → 供 xiaozhi-teach-math-exam-designer 读 weaknessRank 组卷
```

**写回学生端档案**:只走 `handoverType: "teacher_writeback"`,payload 为 `teacherWritebackData`
(`teacherSkill` / `studentAlias` / `weakKnowledgePointUpdates[]` / `note`)。
发送前必须核对 `meta.consentStatus.teacherWritebackConsent = true`;为 false 时**丢弃并告知老师**
"该学生未授权写回,本次分析只留在班级工作空间"。
`weakKnowledgePointUpdates[].status` 用五档,`masteryLevel` 用学生端三档(`shared/vocab.md §6`)。
`note` 只写低敏事实描述,禁止心理标签、家庭信息、真实姓名。

**给家长的内容**:本 SKILL 不直接生成;交 `xiaozhi-teach-parent-communication`,
由它核对 `parentSharingConsent`(含情绪内容再核对 `emotionSharingWithParent`)后输出。不默认推送家长简报。

---

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

```text
✅ 错因档案用化名(studentAlias)
✅ 班级画像用编号
❌ 禁止:公开"某学员的错题"
❌ 禁止:未授权公开"班级排名"
✅ 错因可入库(脱敏后)
✅ 写回学生档案前核对 teacherWritebackConsent
```

---

## 十一、行为准则

| ✅ 应该做 | ❌ 不能做 |
|---------|---------|
| 错因分七类并映射四维 | 把错因笼统记成"粗心" |
| 关联知识图谱 | 错题=个别问题 |
| 班级+个体双画像 | 只看个别 |
| 持续追踪 | 一次分析就完事 |
| 教学干预建议 | 错题=补差 |
| 学员化名 | 公开学员错题 |

---

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

```text
班级错因分析
    <── xiaozhi-teach-homework-tracker(作业错题)
    <── xiaozhi-teach-student-analyzer(学员错因)
    <── xiaozhi-teach-lesson-planner(教学计划)
    ──→ xiaozhi-teach-student-analyzer(错因 DNA)
    ──→ xiaozhi-teach-lesson-planner(教学干预计划)
    ──→ xiaozhi-teach-resource-library(错题案例库)
    ──→ 学生端 xiaozhi-math-error-dna(学员视角)
```

**禁止行为**:
- 禁止 AI 替学员分析错因(学员自评+老师诊断)
- 禁止 AI 给学员排名
- 禁止 AI 替老师下教学决策(只提供建议)
- 禁止公开学员真实姓名+错题
- 禁止把错因简单归为"粗心"(粗心是结果不是原因,须写清具体动作)
- 禁止对"习惯性失误"开心理干预处方(老师端不做心理诊断)

---

## 十三、参考资源

- `references/error-classification-rubric.md` — 错因分类细则(7 类错因 + 评分模板)
- `references/knowledge-map-template.md` — 知识图谱模板(4 层结构 + 学员个人版)
- `references/intervention-design.md` — 教学干预设计模板(识别/诊断/干预/跟踪)
- `references/error-knowledge-link-template.md` — 错题-知识点关联填写样板
- `references/class-error-report-template.md` — 班级共性错因报告模板
- `references/student-error-profile-template.md` — 学员错因档案模板
- `references/intervention-report-template.md` — 教学干预建议样板

---

> 💡 **小智说:**
> "错题不是学员的'耻辱',
>  是教学的'指南针'。
>  学员错一次不可怕,
>  错三次还在同地方才是问题——
>  那就要问问,到底是'学员不会',
>  还是'我教不会'。"