Back to skills
SKILL.md
Admin Reporting
ASecurity高校教师行政填报与迎检材料全流程辅助:教学工作量统计、专业认证与审核评估材料、课程目标达成度计算、教学检查归档、课程思政材料、实验室安全自查、年度统计报表、教学工作总结与计划。当教师说「统计教学工作量」「专业认证材料怎么整」「教学检查要归档什么」「算课程目标达成度」「评估材料缺什么」「实验室安全自查表」「写教学工作总结」时使用。核心是把我变成一台材料体检加批量生成的机器:先把缺件和口径问题查清楚,再一次性收集信息,最后走 office-layer 批量产出表格与报告,全部数字有出处、无出处一律占位。Triggers: 统计教学工作量、专业认证材料怎么整、审核评估材料清单、教学检查要归档什么、算课程目标达成度、大纲达成度怎么写、试卷分析报告、支撑材料索引、课程思政材料、实验室安全自查、教学工作总结、年度统计报表、缺件追踪表、迎检材料。
- 11 stars
- 0 votes
- 0 copies
- 0 views
- Added October 20, 2026
Security analysis
100/100npx -y skills add EtherealMingo/university-teacher-skills --skill admin-reporting --agent claude-codeAre you the author of Admin Reporting?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/etherealmingo-admin-reporting)---
name: admin-reporting
description: "高校教师行政填报与迎检材料全流程辅助:教学工作量统计、专业认证与审核评估材料、课程目标达成度计算、教学检查归档、课程思政材料、实验室安全自查、年度统计报表、教学工作总结与计划。当教师说「统计教学工作量」「专业认证材料怎么整」「教学检查要归档什么」「算课程目标达成度」「评估材料缺什么」「实验室安全自查表」「写教学工作总结」时使用。核心是把我变成一台材料体检加批量生成的机器:先把缺件和口径问题查清楚,再一次性收集信息,最后走 office-layer 批量产出表格与报告,全部数字有出处、无出处一律占位。Triggers: 统计教学工作量、专业认证材料怎么整、审核评估材料清单、教学检查要归档什么、算课程目标达成度、大纲达成度怎么写、试卷分析报告、支撑材料索引、课程思政材料、实验室安全自查、教学工作总结、年度统计报表、缺件追踪表、迎检材料。"
---
# 行政填报与迎检材料
> **Goal**:把「一堆表格 + 一堆迎检材料」从手搓变成流水线。先做**材料体检**
> (缺什么、口径差在哪、哪些数字对不上),把问题一次性问完,再**批量生成**
> 缺件追踪表、工作量统计表、达成度计算表、支撑材料索引与各类总结报告。
>
> **所有数字必须有原始出处**(课表 / 成绩单 / 教学任务书 / 学校模板),
> 无出处一律写 `【待补:数据来源】`。**产出是初稿,不是终稿。**
## 何时使用
- 「统计一下我这学期的教学工作量 / 课时怎么算」
- 「专业认证(工程教育认证 / 师范认证)材料怎么整」「审核评估要交什么」
- 「教学检查要归档什么材料」「期中教学检查材料清单」
- 「算一下课程目标达成度」「达成度怎么算才不被退回」
- 「评估材料还缺什么」「帮我做个缺件追踪表」
- 「课程思政元素怎么挖」「思政融入点写不出来」
- 「实验室安全自查表 / 隐患台账 / 整改记录」
- 「学生数、成绩分布、教改项目、论文成果统计一下」
- 「写学期教学工作总结」「下阶段教学工作计划」
**不适用**:试卷命题与审核(走 `exam-pipeline`)、教案设计(走 `lesson-plan`)、
职称述职(走 `annual-review`)。本技能只处理**填报、归档、佐证、汇总**这一类行政产出。
**特别注意**:本技能给出的是**通用方法**。各校、各学院、各认证专业的工作量折算系数、
达成度达标值、材料清单目录、命名规范**都不同**,落笔前必须让教师提供本校文件,
一切以**本校最新文件**为准。
## 底座(禁止重写)
| 路径 | 用途 |
|---|---|
| `skills/office-layer/scripts/xlsx_kit.py` | **统计表主力**:`build` 出任意结构表格 + 原生图表;`analyze` 出成绩分析(得分率/区分度/分数段);`inspect` 自检 |
| `skills/office-layer/scripts/docx_kit.py` | 报告产出:`md` 出 Word;**`comment` 写 Word 原生批注**(大纲/材料审校意见直接批在文件上);`spec` 出带人工确认位的排版稿;`inspect` 自检 |
| `skills/awesome-benzi/references/QUALITY_GATES.md` | **问题三级分级 blocked / needs-review / advisory,直接复用为缺件追踪的分级标准**;`QG-ISSUE-003` 存在 blocked 不得进入下一状态 |
| `skills/awesome-benzi/references/INPUT_MODEL.md` | `question-batch` 一次性问题机制(`IN-QUESTION-001..005`),用于一次性收集缺件 |
| `skills/awesome-benzi/references/EVIDENCE_MODEL.md` | 事实分级(`EV-FACT-001`)与冲突处理(`EV-CONFLICT-001`),防止编造数据、防止同一数字多版本 |
| `skills/awesome-benzi/references/LANGUAGE_MODEL.md` | 压掉总结/计划里的公文空话(`WR-STYLE-010..012`、`WR-STYLE-024`) |
| `skills/office-layer/` | **文件产出唯一通道** |
| `THIRD_PARTY_NOTICES.md` | 底座溯源与许可证合规说明 |
**环境自检**(每次开始前跑一次):
```bash
cd <技能包根目录> # 全部底座路径(skills/...)都是相对包根写的
python3 verify.py # 依赖与包完整性
PY="skills/office-layer/.venv/bin/python" # 后续所有命令都用这个解释器
```
## 前置信息收集(intake,一次性问完)
按 `INPUT_MODEL.md` 的 `question-batch`(`IN-QUESTION-002`:同批合并路线、模板、格式与
改变任务成立条件的事实缺口;`IN-QUESTION-004`:用户回复后**不连环追问**),
把下面这些**合并成一次提问**。不要边做边问,那是教师最烦的体验。
**第 1 组 · 路径与模板(必需)**
1. 学校 / 学院 / 专业名称,本次是哪一类:`工作量统计` / `专业认证` / `审核评估` /
`教学检查归档` / `课程思政` / `实验室安全` / `统计报表` / `总结计划`?
2. 截止时间与提交对象(学院教务办 / 评估办 / 认证工作组 / 上级部门)?
3. **学校模板文件在哪**?(有则给路径,无则按通用结构出,并标注「结构为通用模板」)
4. 现有材料放在哪个目录?(本技能只读,不修改原始材料)
**第 2 组 · 口径(最容易出错的一组)**
5. 本校 / 本专业的工作量折算系数文件(理论课、实验课、实习、毕设指导各算多少?)
6. 是否有人数系数(如合班 >60 人如何折算)、重复课是否计、新课 / 双语课系数?
7. 达成度达标值是多少(常见 0.65 / 0.70,各校各专业不同)?课程目标权重以哪份大纲为准?
8. 材料命名规范与目录结构有什么硬性要求?
**第 3 组 · 数据源(决定能不能做)**
9. 课表、教学任务书、成绩单、选课名单分别在哪?(工作量与人数核对的**唯一依据**)
10. 课程大纲 / 教学大纲(含课程目标与支撑矩阵)在哪里?
11. 有无往年同类材料可作体例参照?
**缺什么也不能缺模板与口径文件** —— 这两样没有就先用通用结构推进,
并在交付物首页标注「**结构为通用模板,折算系数/达标值待教师按本校文件核对**」,
而不是停下干等(`CONVENTIONS.md` 第 4 节:信息不全时用安全默认值继续,并标注何处用了默认值)。
## 工作流
### 阶段零 · 建材料台账(所有场景的第一步)
- **输入**:intake 回答 + 学校模板 + 现有材料目录
- **动作**:扫描现有材料目录,按 `INPUT_MODEL.md` 的 `IN-SOURCE-001` 为每个文件登记
`文件名 / 格式 / 类型 / 归属场景 / 是否可用 / 备注`(**只登记,不修改**)。
模板文件用 `IN-TEMPLATE-001..006` 提取栏目结构与固定说明,区分
「固定文字 / 占位区 / 可编辑正文」。
- **输出**:`材料台账.xlsx`(单表,一文件一行)
- **退出条件**:台账里每个文件都有明确归类,且模板结构已提取完
```bash
cat > 材料台账.json <<'EOF'
{"sheets": [
{"name": "材料台账",
"header": ["序号","文件名","格式","材料类型","对应场景","归属指标点","是否可用","来源目录","备注"],
"rows": [["1","【待补:文件名】","docx","课程大纲","专业认证","【待补:指标点】","待核","【待补:路径】",""]],
"widths": [6,34,8,14,12,14,10,30,24]}
]}
EOF
$PY skills/office-layer/scripts/xlsx_kit.py build --spec 材料台账.json --out 材料台账.xlsx
$PY skills/office-layer/scripts/xlsx_kit.py inspect --in 材料台账.xlsx
```
### 阶段一 · 缺件追踪表(本技能的核心工具)
**这是整份材料工作的驾驶舱。** 一眼看出卡在哪、卡在谁身上、什么时候必须解决。
- **输入**:阶段零的台账 + 学校要求的材料清单(模板或通知)
- **动作**:按学校清单逐条比对现有材料,**每一条**给出三级分级
(完整复用 `QUALITY_GATES.md` 的 `QG-ISSUE-002`);
存在 `blocked` 时不得进入交付状态(`QG-ISSUE-003`):
| 级别 | 含义 | 处理 |
|---|---|---|
| `blocked` | **必需材料缺失**,或数字无原始出处、口径未定 | 立即列入一次性问题,向教师 / 责任人要 |
| `needs-review` | 材料已有但**待核实**:数字对不上、版本存疑、口径与本校文件不符 | 标注差异点,交教师确认 |
| `advisory` | 建议补充的完善项(如缺少过程性记录、佐证不够充分) | 记入建议,不阻断 |
- **输出**:`缺件追踪表.xlsx`
表格结构(关键列,缺一不可):
| 序号 | 材料名称 | 对应指标点 | 分级 | 状态 | 责任人 | 截止时间 | 存放路径 | 阻塞原因 / 待确认事项 |
|---|---|---|---|---|---|---|---|---|
| 1 | 课程教学大纲 | 1.1 / 2.3 | blocked | 缺失 | 【待补:责任人】 | 【待补:日期】 | — | 需 2024 版,现行版本为 2022 版 |
| 2 | 试卷分析报告 | 3.2 | needs-review | 待核 | 本人 | 【待补:日期】 | `…/试卷分析` | 平均分与成绩单不一致(差 2.3 分) |
```bash
cat > 缺件追踪表.json <<'EOF'
{"sheets": [
{"name": "缺件追踪表",
"header": ["序号","材料名称","对应指标点","分级","状态","责任人","截止时间","存放路径","阻塞原因/待确认事项"],
"rows": [["1","【待补:材料名称】","【待补:指标点】","blocked","缺失","【待补:责任人】","【待补:日期】","—","【待补:缺什么】"]],
"widths": [6,28,12,14,10,12,12,30,34]},
{"name": "分级汇总",
"header": ["分级","条数","占比"],
"rows": [["blocked","",""],["needs-review","",""],["advisory","",""]],
"widths": [16,10,10],
"chart": {"type":"bar","title":"缺件分级分布","value_col":2,"anchor":"E2"}}
]}
EOF
$PY skills/office-layer/scripts/xlsx_kit.py build --spec 缺件追踪表.json --out 缺件追踪表.xlsx
```
- **退出条件**:`blocked` 条数已明确并向教师列出「一次性问题清单」;
每条都有责任人与截止时间(无责任人则写 `【待补:责任人】`,不得留空蒙混)
### 阶段二 · 教学工作量统计
高校教师最常填、最容易被打回的表。**真正的难点不是加法,是口径。**
- **输入**:课表、教学任务书、成绩单 / 选课名单、**本校折算系数文件**
- **动作**:
1. **三门数据源交叉核对**(这一步不能省):
- `课表` → 每门课的学时、周数、上课班级
- `教学任务书` → 认定的计划学时、课程性质(理论 / 实验 / 实习 / 毕设)
- `成绩单 / 选课名单` → **实际班级人数**(不是教务系统里的名义人数)
2. 按课程性质套**本校**折算系数(AI 不自拟,见红线 1)
3. 汇总:总课时、班级人数、课程门数、折算后工作量
4. 列出**差异清单**:哪门课的学时数在三个来源里不一致
**常见口径差异**(务必逐条向教师确认,这是被打回的头号原因):
| 口径点 | 常见分歧 | 核对方法 |
|---|---|---|
| 计划学时 vs 实际授课学时 | 调课、停课后按哪个算 | 用教学任务书的认定学时,并附调课审批记录 |
| 合班课人数系数 | 60 人以上是否加系数、按哪个档 | 查本校工作量办法;无文件则不套系数并在备注写明 |
| 重复课(同一课程多轮次) | 是否计、计几次 | 查本校文件;一般首次全额、重复按比例 |
| 实验课折算 | 按学时还是按批次(分组数) | 看实验分组数与实验指导记录,按本校口径取一 |
| 实习 / 实践 | 按周、按天还是按学时 | 用实习计划书 + 考勤记录 |
| 毕设指导 | 按生计(每生折多少学时) | 成绩单上的实际指导学生数;注意有无上限(如超过 8 人不再累加) |
| 新课 / 双语课系数 | 是否有上浮、上浮多少 | 查本校文件,并备新课认定材料 |
| 课程门数统计 | 同一课程不同班级算 1 门还是多门 | 学校口径不同,按填报口径填并写备注 |
- **输出**:`教学工作量统计表.xlsx`(含图表)
- **退出条件**:每个数字都能指回**具体来源文件与位置**;差异项已列明并有处理结论
```bash
cat > 教学工作量统计表.json <<'EOF'
{"sheets": [
{"name": "工作量明细",
"header": ["序号","课程代码","课程名称","课程性质","班级","人数","计划学时","周数","折算系数","折算工作量","数据来源","备注"],
"rows": [["1","【待补:课程代码】","【待补:课程名称】","理论课","【待补:班级】","","","","【待补:按本校文件】","","课表/任务书/成绩单",""]],
"widths": [6,14,22,12,16,8,10,8,12,12,20,24]},
{"name": "课程类别汇总",
"header": ["课程性质","课程门数","合计人数","合计学时","折算工作量"],
"rows": [["理论课","","","",""],["实验课","","","",""],["实习/实践","","","",""],["毕设指导","","","",""],["合计","","","",""]],
"widths": [16,10,12,12,14],
"chart": {"type":"bar","title":"各课程性质折算工作量","value_col":5,"anchor":"G2"}},
{"name": "口径差异待核",
"header": ["课程名称","差异点","课表值","任务书值","成绩单/名单值","拟采用","依据文件","确认状态"],
"rows": [["【待补:课程名称】","学时不一致","","","","","【待补:本校文件】","【待教师确认】"]],
"widths": [22,18,10,12,16,12,24,16]}
]}
EOF
$PY skills/office-layer/scripts/xlsx_kit.py build --spec 教学工作量统计表.json --out 教学工作量统计表.xlsx
$PY skills/office-layer/scripts/xlsx_kit.py inspect --in 教学工作量统计表.xlsx
```
### 阶段三 · 专业认证 / 审核评估材料(最大的一摊)
这是本技能的主战场,按四个子步骤推进。
#### 3a · 材料清单管理与缺件追踪
直接复用**阶段一**的缺件追踪表,但清单换成认证 / 评估的**指标点分解表**,
每条材料必须绑定到具体指标点(否则后面做支撑索引时会重来)。
#### 3b · 大纲审校(课程大纲 / 教学大纲)
- **输入**:课程大纲 docx、教学大纲 docx、本校大纲模板
- **动作**:逐节比对模板要求的结构项,检查:课程目标是否**可测量**(能对应考核方式)、
目标与毕业要求指标点的支撑关系是否写明、考核方式与成绩构成是否与大纲一致、
学时分配与课表是否一致
- **输出**:用 `docx_kit` 的 **`comment` 命令把审校意见写成 Word 原生批注** ——
教师打开大纲就看到批注气球,改完即用,不必对着另一份清单来回找
- **退出条件**:`failed` 为空且退出码为 0(**锚点未命中会以退出码 2 结束,不可忽略**)
```bash
cat > 大纲审校意见.json <<'EOF'
[
{"anchor": "课程目标2:掌握数据结构的基本算法设计方法",
"text": "目标表述不可测量。建议改为「能针对给定问题选择合适的数据结构并完成算法实现,正确率不低于 80%」——需先确认该目标对应的考核环节与达标值。"},
{"anchor": "课程目标与毕业要求指标点的对应关系",
"text": "此处未写明支撑强度(H/M/L)。请按本校模板补充,并确认与专业毕业要求支撑矩阵一致。"}
]
EOF
$PY skills/office-layer/scripts/docx_kit.py comment \
--in 课程大纲.docx --out 课程大纲_审校意见.docx \
--comments 大纲审校意见.json --author "教学副院长"
$PY skills/office-layer/scripts/docx_kit.py inspect --in 课程大纲_审校意见.docx # 确认批注数 > 0
```
> 锚点 `anchor` 必须是**原文逐字片段(含标点)**,正文与表格单元格内均可锚定。
> 不要凭记忆写锚点,先从原文复制。
#### 3c · 课程目标达成度计算(认证最容易出错的一环)
**算法说明(通用方法,权重与达标值必须取自本校 / 本专业文件)**
设课程有 `n` 个课程目标(CO1…COn),有 `m` 个考核环节(平时作业、实验、期中、期末、课程设计…)。
1. **建权重矩阵**:确定每个考核环节对各课程目标的**贡献权重** `w_ij`
(课程目标 *i* 由考核环节 *j* 支撑的权重),同一目标下 `Σ_j w_ij = 1`。
权重来自大纲的「课程目标—考核方式支撑矩阵」,**AI 不得自拟**。
2. **算环节得分率**:对目标 *i*、环节 *j*,取该环节中**考查该目标的那部分**的
学生平均得分与对应满分:
```
得分率 R_ij = (该环节中考查目标 i 的题目/评分点 平均得分) / (该部分满分)
```
若该环节整体只考一个目标,则 `R_ij = 环节平均分 / 环节满分`。
3. **算单目标达成度**(加权):
```
达成度 CO_i = Σ_j ( w_ij × R_ij )
```
4. **算课程总体达成度**:
```
课程达成度 = Σ_i ( W_i × CO_i ),其中 W_i 为课程目标 i 的权重,Σ W_i = 1
```
5. **判达标**:与本校规定的**达标值**(如 0.65 / 0.70)比较,逐目标判定。
6. **可选 · 逐生达成度**:把每个学生按同一算法算一遍,用于识别个体差异
(**学号必须脱敏**,见红线 3)。
> **红线提醒**:达成度不是「算出来」的,是「教出来」的。
> 不得为了凑达标而**调整数据、改权重、删掉低分学生、挑有利的考核环节**。
> 未达标就如实写未达标,并在「持续改进」一节写明分析原因与改进措施 ——
> 这才是认证专家真正想看的东西。见红线 2。
**表格结构**(三张表,`xlsx_kit build` 一次生成)
表 A · 课程目标—考核环节权重矩阵:
| 课程目标 | 描述 | 平时作业 | 实验 | 期中 | 期末 | 权重合计 | 目标权重 W_i | 达标值 |
|---|---|---|---|---|---|---|---|---|
| CO1 | 【待补:取自大纲】 | 0.4 | 0.3 | 0 | 0.3 | 1.00 | 0.30 | 【待补:本校值】 |
表 B · 达成度计算表(核心):
| 课程目标 | 考核环节 | 该部分满分 | 平均得分 | 得分率 R_ij | 环节权重 w_ij | 加权值 | **目标达成度 CO_i** | 达标值 | 是否达标 |
|---|---|---|---|---|---|---|---|---|---|
| CO1 | 平时作业 | 【待补】 | 【待补】 | 0.82 | 0.4 | 0.328 | | | |
| CO1 | 期末 | 【待补】 | 【待补】 | 0.71 | 0.3 | 0.213 | **0.76** | 【待补】 | 【待教师确认】 |
表 C · 学生成绩—目标得分明细(**学号脱敏**):一行一学生,列为各考核环节在
各目标上的得分。此表用于上面两张表的取数,是**唯一原始数据入口**。
```bash
cat > 达成度计算表.json <<'EOF'
{"sheets": [
{"name": "表A_目标-环节权重矩阵",
"header": ["课程目标","描述","平时作业","实验","期中","期末","权重合计","目标权重Wi","达标值"],
"rows": [["CO1","【待补:取自大纲】","","","","","","","【待补:本校文件值】"],
["CO2","【待补:取自大纲】","","","","","","","【待补:本校文件值】"]],
"widths": [12,34,10,10,10,10,12,12,14]},
{"name": "表B_达成度计算",
"header": ["课程目标","考核环节","该部分满分","平均得分","得分率Rij","环节权重wij","加权值","目标达成度COi","达标值","是否达标"],
"rows": [["CO1","平时作业","","","","","","","【待补】","【待教师确认】"],
["CO1","期末","","","","","","","【待补】","【待教师确认】"]],
"widths": [12,14,12,12,12,12,10,16,12,14]},
{"name": "表C_学生得分明细(脱敏)",
"header": ["学生编号","平时作业得分","实验得分","期中得分","期末得分","备注"],
"rows": [["S001","","","","","学号已脱敏;原始表见【待补:路径】"]],
"widths": [14,14,12,12,12,34]}
]}
EOF
$PY skills/office-layer/scripts/xlsx_kit.py build --spec 达成度计算表.json --out 课程目标达成度计算表.xlsx
$PY skills/office-layer/scripts/xlsx_kit.py inspect --in 课程目标达成度计算表.xlsx
```
**配套材料**:
- **试卷分析**:直接用 `xlsx_kit analyze`(得分率 / 区分度 / 分数段 / 偏度峰度 + 原生图表),
这是达成度计算里「期末」环节得分的来源与佐证:
```bash
$PY skills/office-layer/scripts/xlsx_kit.py analyze \
--in 成绩单.xlsx --out 试卷分析.xlsx \
--first-q-col 3 --full-marks '[10,10,15,15,10,20,10,10]'
```
> 区分度 D 的判读口径:D≥0.4 优良|0.3–0.39 良好|0.2–0.29 尚可需修改|<0.2 应淘汰。
> D<0.2 的题会被高亮 —— 认证专家常问「这道题考的是哪个课程目标」,
> 区分度异常的题要能解释清楚。
- **达成度分析报告**(docx):把表 B 的结论写成叙述,含
「达成情况 / 未达标原因分析 / 持续改进措施」三节。
未达标原因必须基于**实际数据**(哪个目标、哪个环节、得分率多少),不得写空话。
#### 3d · 支撑材料索引(哪份材料证明哪个指标点)
认证专家现场最常做的事:**抽一个指标点,让你 5 分钟内拿出全部佐证**。
这份索引就是为这个场景准备的。
- **输入**:指标点分解表 + 材料台账
- **动作**:建立**指标点 ↔ 材料**双向映射,每条写明材料里的**具体位置**(页码 / 章节 / 表格名),
而不是只写文件名
- **输出**:`支撑材料索引.xlsx`(可按指标点、按材料类型两种排序)
- **退出条件**:每个指标点至少有一条 `blocked` 级以外的支撑材料;
无支撑的指标点必须在缺件追踪表里回到 `blocked`
| 指标点 | 指标点描述 | 支撑材料名称 | 材料类型 | **具体位置**(页码/章节/表名) | 支撑强度 | 分级 | 存放路径 |
|---|---|---|---|---|---|---|---|
| 1.1 | 【待补:取自分解表】 | 课程教学大纲 | 大纲 | 第 3 节「课程目标与毕业要求对应关系」 | 强 | 完整 | 【待补:路径】 |
| 3.2 | 【待补】 | 试卷分析报告 | 分析报告 | 表 2「课程目标达成度」 | 中 | needs-review | 【待补:路径】 |
### 阶段四 · 教学检查归档
期中 / 期末教学检查、教学档案专项检查的归档清单与命名规范。
- **输入**:检查通知 / 归档要求 + 现有材料目录
- **动作**:
1. 按检查项逐条比对现有材料,出**归档清单**(用阶段一的三级分级)
2. 统一**命名规范**,生成改名对照表(**只出对照表,让教师自己改;
本技能不批量重命名用户原始文件**,避免误伤)
3. 点名**平时分依据**:平时分必须有可追溯的过程记录(考勤表、作业批改记录、
课堂表现记录、小测成绩),只有分数没有依据是检查的常见扣分点
- **输出**:`教学检查归档清单.xlsx`、`文件命名对照表.xlsx`
- **退出条件**:清单每条有分级与存放路径;命名对照表覆盖所有待归档文件
**命名规范建议模板**(必须换成本校 / 本学院要求):
```
课程代码_课程名_材料类型_学年学期_版本.扩展名
示例:0821001_数据结构_试卷分析报告_2025-2026-1_v1.docx
```
归档目录建议层级:
```
2025-2026-1/
└── 数据结构(0821001)/
├── 01_课程大纲/
├── 02_教学大纲与教学日历/
├── 03_教案/
├── 04_课件/
├── 05_试卷与参考答案/
├── 06_成绩单/
├── 07_试卷分析报告/
├── 08_平时分依据/ ← 考勤、作业、小测、课堂表现记录
└── 09_课程目标达成度分析/
```
归档清单表格结构:
| 序号 | 检查项 | 材料名称 | 责任人 | 是否含学生个人信息 | 页数/行数 | 分级 | 存放路径 | 备注 |
|---|---|---|---|---|---|---|---|---|
| 1 | 教学文件 | 课程教学大纲 | 本人 | 否 | 【待补】 | 完整 | `01_课程大纲/` | |
| 2 | 过程记录 | 平时分依据(考勤+作业) | 本人 | **是** | 【待补】 | needs-review | `08_平时分依据/` | 需补作业批改记录 |
### 阶段五 · 课程思政材料
- **输入**:课程大纲 / 教案、专业背景、本校课程思政建设要求
- **动作**:三步走 —— **挖元素 → 设计融入点 → 准备成效佐证**
1. **挖元素**:从课程知识点自然关联的思政元素(家国情怀、科学精神、
工程伦理、工匠精神、法治意识、职业规范、文化自信…)。
**从知识点长出来,不是贴上去。** 牵强的思政点评审一眼看穿,反而扣分。
2. **设计融入点**:每条写清「哪个章节 / 哪个知识点 / 用什么方式(案例、讨论、
实验、作业)/ 载体材料是什么 / 预计时长」。
3. **成效佐证**:学生反馈、作业中的体现、课堂讨论记录、调查问卷。
-**红线**:**成效佐证必须来自真实材料**。没有就写 `【待补:成效佐证材料】`,
绝不编造学生反馈、问卷数据或教学效果。
- **输出**:`课程思政融入设计表.xlsx` + `课程思政实施小结.docx`
- **退出条件**:每个融入点都有载体材料或明确占位;成效部分无编造内容
| 章节 | 知识点 | 思政元素 | 融入方式 | 载体材料 | 预计时长 | 成效佐证 | 备注 |
|---|---|---|---|---|---|---|---|
| 第 3 章 | 【待补:知识点】 | 工程伦理 | 案例研讨 | 【待补:案例来源】 | 10 min | 【待补:成效佐证材料】 | 案例需教师确认适宜性 |
### 阶段六 · 实验室安全自查
- **输入**:本校实验室安全检查表 / 上级检查要点、实验室房间清单
- **动作**:出**三件套** —— 检查表、隐患台账、整改记录
1. **检查表**:按房间 × 检查项逐条判定(符合 / 不符合 / 不适用),
不适用必须写原因
2. **隐患台账**:发现的问题分级(一般 / 重大)、责任人、整改期限、
整改前状态
3. **整改记录**:整改措施、完成时间、验证方式,附**整改前后照片**,
验收结论留**人工签字确认位**
- **输出**:`实验室安全自查表.xlsx`、`隐患台账.xlsx`、`整改记录.docx`
- **退出条件**:每条隐患都有责任人与期限;验收结论为人工确认位而非 AI 判定
| 房间号 | 检查项目 | 检查要点 | 判定 | 隐患描述 | 隐患等级 | 责任人 | 整改期限 | 整改状态 |
|---|---|---|---|---|---|---|---|---|
| 【待补】 | 危化品存放 | 分类分区、专柜双锁 | 不符合 | 酸碱未分区 | 重大 | 【待补】 | 【待补:日期】 | 整改中 |
> 安全检查的判定涉及**安全责任**,AI 只做表格与台账的结构化,
> 「是否符合」必须由教师 / 实验室负责人现场判定并签字。
### 阶段七 · 各类统计报表
- **输入**:成绩单、学生名单、教改项目立项文件、论文成果清单
- **动作**:出年度 / 学期统计报表,**每张表带图表**(`xlsx_kit build` 的 `chart` 字段)
- **输出**:`年度统计报表.xlsx`,含多工作表:
- 学生数统计(按专业 / 年级 / 班级)
- 成绩分布(用 `xlsx_kit analyze` 出分数段,或直接汇总)
- 教改项目(项目名称、级别、经费、起止时间、本人排名)
- 论文成果(题目、期刊 / 会议、级别、时间、作者排序、DOI)
- **退出条件**:每个数字有出处;论文 / 项目等个人事实无材料一律占位
> **个人成果类数据必须来自教师提供的材料**:项目编号、论文题目、期刊名、
> DOI、作者排序一律不得由模型补全(`EVIDENCE_MODEL.md` 的 `EV-CARD-005`)。
> 缺就写 `【待补:论文信息】`。
```bash
cat > 年度统计报表.json <<'EOF'
{"sheets": [
{"name": "学生数统计",
"header": ["年级","专业","班级数","学生数","数据来源"],
"rows": [["【待补:年级】","【待补:专业】","","","选课名单/成绩单"]],
"widths": [12,24,10,10,22],
"chart": {"type":"bar","title":"各年级学生数","value_col":4,"anchor":"G2"}},
{"name": "教改项目",
"header": ["序号","项目名称","级别","项目编号","经费(万元)","起止时间","本人排名","数据来源"],
"rows": [["1","【待补:项目名称】","【待补:级别】","【待补:项目编号】","","","","立项文件"]],
"widths": [6,34,12,18,12,20,10,20]},
{"name": "论文成果",
"header": ["序号","论文题目","期刊/会议","级别","发表时间","作者排序","DOI","数据来源"],
"rows": [["1","【待补:论文题目】","【待补:期刊名】","【待补:级别】","","","【待补:DOI】","原文/检索页"]],
"widths": [6,40,24,12,14,10,26,18]}
]}
EOF
$PY skills/office-layer/scripts/xlsx_kit.py build --spec 年度统计报表.json --out 年度统计报表.xlsx
$PY skills/office-layer/scripts/xlsx_kit.py inspect --in 年度统计报表.xlsx
```
### 阶段八 · 教学工作总结与计划
- **输入**:阶段二的工时统计、阶段三的达成度、阶段七的统计报表
- **动作**:
1. 结构固定四节:**完成情况(用数据说话)→ 成效 → 存在问题(具体到事)→ 下阶段计划(可量化)**
2. 用 `LANGUAGE_MODEL.md` 压掉公文空话:
删掉「高度重视、狠抓落实、全面提升、成效显著、赋能、抓手、形成闭环」
(`WR-STYLE-011`)、「值得注意的是、综上所述」(`WR-STYLE-010`);
把「取得了良好效果」改成对象 + 机制 + 指标(`WR-STYLE-024`)
3. **存在问题**一节不得写成变相表功(「虽然……但是……」句式要删);
问题要具体到可改进的事项
4. **计划**一条一对应对前面的问题,且可量化(有时间、有指标)
- **输出**:`教学工作总结.docx`、`下阶段教学工作计划.docx`
- **退出条件**:总结里的每个数字都能回溯到前面的统计表;
问题与计划一一对应;无空话段落
```bash
$PY skills/office-layer/scripts/docx_kit.py md \
--in 教学工作总结.md --out 教学工作总结.docx --title "2025-2026学年第一学期教学工作总结"
$PY skills/office-layer/scripts/docx_kit.py inspect --in 教学工作总结.docx
```
需要固定排版(页眉页脚、评语模板、显式留空位)时用 `spec`:
```bash
cat > 总结规格.json <<'EOF'
{"title": "2025-2026学年第一学期教学工作总结",
"subtitle": "【待补:学院】 【待补:姓名】",
"sections": [
{"heading": "一、完成情况", "level": 1,
"paras": ["本学期承担【待补:课程门数】门课程,合计【待补:折算工作量】学时(见《教学工作量统计表》)。"]},
{"heading": "二、存在问题", "level": 1,
"paras": ["【待教师确认:存在问题逐条填写,不得写成变相表功】"]},
{"heading": "三、下阶段计划", "level": 1,
"paras": ["【待教师确认:每条计划对应一条问题,写明时间与指标】"]}
]}
EOF
$PY skills/office-layer/scripts/docx_kit.py spec --spec 总结规格.json --out 教学工作总结.docx
```
### 阶段九 · 数据一致性校验(交付前必做)
**同一数字在不同表里必须一致 —— 这是迎检最常被打回的原因。**
工时数在《工作量统计表》里是 320,在《工作总结》里写成 336,材料当场就被质疑。
- **输入**:本次产出的全部表格与文档
- **动作**:建**关键数字台账**,逐个数字回溯出处并检查跨表一致性
- **输出**:`数据一致性校验表.xlsx`
- **退出条件**:校验表里**无未解决的 `blocked`**(数字冲突且无结论即为 blocked,
按 `EV-CONFLICT-001` 保留全部变体并阻断,**不得挑有利的那个**)
**必须交叉校验的关键数字**:
| 数字 | 常见出现位置 | 校验方法 |
|---|---|---|
| 课时数 / 折算工作量 | 工作量统计表、年度考核表、工作总结、职称材料 | 三处必须同源同值 |
| 学生数 / 班级人数 | 工作量表、成绩单、成绩分析报告、达成度表 | 以成绩单实际人数为准 |
| 课程门数 | 工作量表、工作总结 | 明确统计口径(是否含重复课) |
| 成绩分布(平均分/及格率) | 试卷分析报告、达成度报告、工作总结 | 同一份成绩单算出的结果必须一致 |
| 课程目标达成度 | 达成度计算表、达成度分析报告、认证申请书 | 三处数值逐位一致 |
| 达标值 | 达成度表、分析报告 | 必须同为本校规定值 |
| 关键数字 | 数值 | 原始出处(文件+位置) | 出现位置 1 | 出现位置 2 | 出现位置 3 | 是否一致 | 差异原因 / 处理 |
|---|---|---|---|---|---|---|---|
| 折算工作量 | 【待补】 | 课表+任务书+本校系数文件 | 工作量统计表 | 工作总结 | — | 【待教师确认】 | — |
```bash
cat > 数据一致性校验表.json <<'EOF'
{"sheets": [
{"name": "关键数字台账",
"header": ["关键数字","数值","原始出处(文件+位置)","出现位置1","出现位置2","出现位置3","是否一致","差异原因/处理"],
"rows": [["折算工作量","【待补】","课表+任务书+本校折算系数文件","工作量统计表","工作总结","—","【待教师确认】","—"],
["学生数","【待补】","成绩单(实际人数)","工作量统计表","成绩分析报告","","【待教师确认】","—"]],
"widths": [16,12,32,20,20,20,14,30]},
{"name": "冲突清单",
"header": ["字段","变体A","来源A","变体B","来源B","处理结论"],
"rows": [["【待补:字段】","","","","","【待教师确认:采用哪一个】"]],
"widths": [16,12,22,12,22,30]}
]}
EOF
$PY skills/office-layer/scripts/xlsx_kit.py build --spec 数据一致性校验表.json --out 数据一致性校验表.xlsx
```
### 阶段十 · 交付
- 冻结内容,用 office-layer 出全部文件,逐个 `inspect` 自检
- 交付说明必须写明四件事:
1. **这是初稿**,请重点核对 `【待补:…】` 与 `【待教师确认:…】` 处
2. 哪些数字用了**通用默认值 / 通用结构**,需按本校文件替换
3. 哪些材料仍是 `blocked`,卡在谁那里
4. **含学生个人信息的文件清单**,提醒保管与用后删除中间文件
## 产出物
| 文件 | 内容 | 产出方式 |
|---|---|---|
| `材料台账.xlsx` | 现有材料清点(阶段零) | `xlsx_kit build` |
| `缺件追踪表.xlsx` | **核心驾驶舱**:清单 × 分级 × 状态 × 责任人 × 截止时间 + 分级图表 | `xlsx_kit build` |
| `教学工作量统计表.xlsx` | 课时/人数/门数/折算工作量 + 类别汇总图 + 口径差异待核表 | `xlsx_kit build` |
| `课程目标达成度计算表.xlsx` | 表A 权重矩阵 / 表B 达成度计算 / 表C 脱敏得分明细 | `xlsx_kit build` |
| `试卷分析.xlsx` | 得分率 / 区分度 / 分数段 / 分布图 | `xlsx_kit analyze` |
| `课程大纲_审校意见.docx` | **Word 原生批注**,改完即用 | `docx_kit comment` |
| `达成度分析报告.docx` | 达成情况 / 未达标原因 / 持续改进 | `docx_kit md` |
| `支撑材料索引.xlsx` | 指标点 ↔ 材料 ↔ 具体位置 双向映射 | `xlsx_kit build` |
| `教学检查归档清单.xlsx` + `文件命名对照表.xlsx` | 归档清单 + 改名对照(教师自行执行) | `xlsx_kit build` |
| `课程思政融入设计表.xlsx` + `课程思政实施小结.docx` | 元素 / 融入点 / 载体 / 成效佐证 | `xlsx_kit build` + `docx_kit md` |
| `实验室安全自查表.xlsx` / `隐患台账.xlsx` / `整改记录.docx` | 检查表 + 台账 + 整改(含人工验收位) | `xlsx_kit build` + `docx_kit md` |
| `年度统计报表.xlsx` | 学生数 / 成绩分布 / 教改项目 / 论文成果 + 图表 | `xlsx_kit build` |
| `教学工作总结.docx` / `下阶段教学工作计划.docx` | 数据说话,无空话 | `docx_kit md` 或 `spec` |
| `数据一致性校验表.xlsx` | 关键数字台账 + 冲突清单(交付前必出) | `xlsx_kit build` |
## 红线
1. **绝不编造数据**。课时、学生数、成绩、达成度、项目编号、论文信息
**全部必须有原始出处**(课表 / 教学任务书 / 成绩单 / 立项文件 / 检索页),
无出处一律写 `【待补:数据来源】`。
> **迎检材料造假的后果极严重**:一旦被查出数据不实,轻则材料打回重做、
> 全院通报,重则影响专业认证结论、评估等级,甚至涉及学术不端与纪律处理,
> 责任落在签字的教师身上。**AI 宁可交一份满是占位的初稿,也绝不填一个编造的数字。**
> 这条没有例外,不接受"先填个大概数字回头再改"。
2. **达成度不得凑达标**。不得为「凑达标值」而调整数据、修改权重、
剔除低分学生、挑选有利的考核环节或更换统计口径。
未达标就如实写未达标,把原因分析与改进措施写扎实 ——
认证专家看的正是这一节。任何权重与达标值**必须来自本校 / 本专业文件**,AI 不自拟。
3. **学生个人信息本地处理、脱敏**。成绩、学号、姓名、身份证、联系方式
只在本机处理,不上传、不外发;对外提交的明细表**学号必须脱敏**
(用 `S001`、`S002` 或后四位掩码),原始表另行保存;
交付说明里明确写出「本文件含学生个人信息,请注意保管」,
任务结束后提醒教师删除中间文件。
4. **评价性内容留人工确认位**。是否达标、是否通过、验收结论、责任认定、
材料适宜性等判断性内容,一律留 `【待教师确认:…】`,AI 只出草稿不给终稿。
安全检查的「是否符合」必须由现场负责人判定并签字。
5. **各校口径不同,以本校文件为准**。折算系数、达标值、材料清单、
命名规范、归档目录都因校而异、因专业而异。本技能给出的是**通用方法**,
所有涉及本校规定的位置都必须提示教师核对;引用政策一律只写
「按学校 / 学院相关规定」,不引具体条款号。
6. **不修改用户原始材料**。课表、成绩单、大纲、模板一律只读;
过程文件放临时目录;命名对照表只出对照方案,不代为批量重命名。
7. **不忽略非零退出码**。`docx_kit comment` 退出码 2 = 锚点未命中,
必须逐条修好锚点再交付(读返回 JSON 的 `failed` 字段)。
## 自检清单
交付前逐项过一遍:
**数据与真实性**
- [ ] 每个数字都能指回**具体来源文件与位置**(课表 / 任务书 / 成绩单 / 立项文件)
- [ ] 所有无出处的数据都写成了 `【待补:具体说明】`,没有一处被模型补全
- [ ] 项目编号、论文题目、期刊名、DOI、作者排序均来自教师材料,无编造
- [ ] 达成度计算中,权重与达标值均标注了取自哪份本校文件,无自拟
- [ ] **未为了凑达标而调整任何数据、权重或统计口径**
**一致性与口径**
- [ ] 阶段九的 `数据一致性校验表.xlsx` 已产出,且无未解决的 `blocked`
- [ ] 课时数、学生数、课程门数、成绩分布、达成度在**所有**出现位置取值一致
- [ ] 数字冲突处按 `EV-CONFLICT-001` 保留了全部变体,未擅自挑选有利值
- [ ] 已检查所有出现的位置:工作量表 / 工作总结 / 认证材料 / 考核表
- [ ] 折算系数、达标值、命名规范均在交付说明里提示了「以本校文件为准」
**缺件与流程**
- [ ] `缺件追踪表.xlsx` 已产出,每条有分级、责任人、截止时间
- [ ] `blocked` 项已明确并向教师列出清单,卡在谁那里一目了然
- [ ] 缺件信息是**一次性问完**的,没有边做边追问
- [ ] 信息不全处使用了安全默认值并已标注,没有停下干等
**文件产出**
- [ ] 所有 docx / xlsx 均由 `skills/office-layer/` 生成,无伪表格、无手搓 OOXML
- [ ] 每个文件都跑了 `inspect` 自检(段落/表格/批注数符合预期)
- [ ] `docx_kit comment` 退出码为 0,批注数 > 0,无 `failed` 锚点
- [ ] 交付物是 docx / xlsx,没有拿 `.md` 当交付物
**敏感数据与人工确认位**
- [ ] 明细表里的学号已脱敏,原始表路径另行注明
- [ ] 交付说明写明了「本文件含学生个人信息,请注意保管」
- [ ] 已提醒教师任务结束后删除中间文件
- [ ] 达标判定、验收结论、材料适宜性等判断性内容均留了 `【待教师确认:…】`
- [ ] 未替教师下「是否达标 / 是否通过」的结论
**语言质量**
- [ ] 总结 / 计划里无「高度重视、狠抓落实、全面提升、赋能、抓手、形成闭环」等空话
- [ ] 无「值得注意的是、综上所述」等 AI 套话与聊天残留
- [ ] 「存在问题」一节写的是真问题,不是变相表功
- [ ] 问题与计划一一对应,且计划可量化
**收尾**
- [ ] 交付说明写明「这是初稿,请重点核对 `【待补】` 与 `【待教师确认】` 处」
- [ ] 交付说明列出了哪些数字用了通用默认值 / 通用结构,需按本校文件替换
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.