Back to skills
SKILL.md
Annual Review
ASecurity高校教师年度考核与职称材料全流程辅助:把零散的论文/项目/获奖/教学工作/社会服务按评审表栏目自动归类成 xlsx、按考核文件栏目生成述职报告初稿、整理职称评审材料并列出缺什么、教学成果奖申报转交 grant-proposal 通道。当教师说「写年度述职」「整理职称评审材料」「把成果整理成表」「年度考核材料怎么准备」「教学成果奖申报」「年底考核要交什么」时使用。Triggers: 写年度述职、整理职称评审材料、把成果整理成表、年度考核材料、教学成果奖申报、年底考核、述职报告、职称材料缺什么、评审表栏目、成果清单归表。
- 11 stars
- 0 votes
- 0 copies
- 0 views
- Added October 20, 2026
Security analysis
100/100Pro scans all 3 files and shows the line behind each finding
npx -y skills add EtherealMingo/university-teacher-skills --skill annual-review --agent claude-codeAre you the author of Annual Review?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/etherealmingo-annual-review)---
name: annual-review
description: "高校教师年度考核与职称材料全流程辅助:把零散的论文/项目/获奖/教学工作/社会服务按评审表栏目自动归类成 xlsx、按考核文件栏目生成述职报告初稿、整理职称评审材料并列出缺什么、教学成果奖申报转交 grant-proposal 通道。当教师说「写年度述职」「整理职称评审材料」「把成果整理成表」「年度考核材料怎么准备」「教学成果奖申报」「年底考核要交什么」时使用。Triggers: 写年度述职、整理职称评审材料、把成果整理成表、年度考核材料、教学成果奖申报、年底考核、述职报告、职称材料缺什么、评审表栏目、成果清单归表。"
---
# 年度考核与职称材料
> **Goal**:把教师一年里散落在简历、成果登记表、科研系统导出、获奖证书里的东西,
> 变成(1)一张按评审表栏目归好类的成果 xlsx,(2)一份按考核文件栏目组织的述职报告初稿,
> (3)一份职称材料清单 + 「缺什么」检查结果,(4)需要申报教学成果奖时移交 grant-proposal。
> **产出全是初稿**:成果条目必须来自教师材料,自我评价必须教师本人定稿。
>
> **时间敏感**:需求峰值在每年 10–12 月(年度考核)与职称评审通知发布后的 2–4 周内。
> 建议 11 月前完成本 skill 的首次运行,把「待核实清单」提前发给教师去教务处/科研处补材料。
## 何时使用
- 「写年度述职」「述职报告初稿」「年底考核材料」
- 「把成果整理成表」「按评审表栏目归一下类」「做成 excel 交上去」
- 「整理职称评审材料」「评职称还缺什么」「职称材料清单」
- 「教学成果奖申报」(→ 走 `grant-proposal`,见阶段五)
- 学院催交:年度考核登记表、师德考核表、职称评审材料袋、聘期考核
**不适用**:教师个人简历投递、课题申报书正文(→ `grant-proposal`)、教案与课件(→ `lesson-plan`)、
成绩分析(→ `exam-pipeline`)。
## 底座(禁止重写)
| 路径 | 用途 |
|---|---|
| `skills/awesome-benzi/WORKFLOW.md` | **七阶段编排骨架,本 skill 的派生母体** |
| `skills/awesome-benzi/references/WRITING_MODEL.md` | 十模块写作内核(M1–M10)、段落与论证规则 |
| `skills/awesome-benzi/references/QUALITY_GATES.md` | **质量门**:字数门 `QG-LENGTH-001/002`、内容门 `QG-CONTENT-*`、错误码与退出码 |
| `skills/awesome-benzi/references/LANGUAGE_MODEL.md` | **AI 味与套话治理**(`WR-STYLE-010/011/012`)、严肃性(`WR-STYLE-015~018`) |
| `skills/awesome-benzi/references/EVIDENCE_MODEL.md` | 事实分级:教师确认事实 / 材料事实 / 未知项 |
| `skills/awesome-benzi/references/INPUT_MODEL.md` | 扫描、预算、只读边界、**一次性问题批次**(`IN-QUESTION-001~005`) |
| `skills/office-layer/SKILL.md` | **文件产出唯一通道**;`xlsx_kit.py` 归表、`docx_kit.py` 述职报告 |
| `skills/education-skills/edu-teaching-design/` | 教学成果奖的成果描述与推广材料可引用其教学设计框架 |
| `skills/education-skills/edu-learning-analytics/` | 学生评教、学习成效类数据口径参考 |
**派生关系(如实说明)**:本 skill 是 `awesome-benzi` 的 **workflow 派生**。
`awesome-benzi` 是本包唯一能改 workflow 派生的引擎,本 skill **不改动其任何代码与规则**,
只在其编排层之上新增三类栏目模板(考核表 / 职称评审表 / 述职报告)与两项归表能力(去重合并、待核实标记)。
两条必须知道的边界:
1. `awesome-benzi` 的 5 个项目工作流(社科基金 / 自然基金 / 创新创业大赛 / 大创 / 挑战杯)
**不含教学成果奖**,也不含年度考核与职称评审。因此本 skill **不套用**任一项目工作流的领域核验重点,
领域栏目由本文件的栏目模板承担,只复用其通用七阶段、质量门与语言门。
2. `awesome-benzi` 的输入模型(`IN-SOURCE-005`)只接受 DOC/DOCX/PDF/MD/TXT,
**不接受 XLSX/PPTX**。所以「已有的成果 Excel」这一路输入由 office-layer 侧的 openpyxl 读取,
**不进入 benzi 管线**;也从不让 benzi 去改用户材料(`IN-PATH-004`)。
环境准备(首次使用):
```bash
bash skills/office-layer/bootstrap.sh # 建 .venv 并装依赖
PY="skills/office-layer/.venv/bin/python"
export MPLCONFIGDIR=/tmp/mplcache && mkdir -p /tmp/mplcache
```
以下命令均以**技能包根目录**(含 `skills/` 目录的那一层)为工作目录。
## 前置信息收集(intake,一次性问完)
按 `skills/awesome-benzi/references/INPUT_MODEL.md` 的 `question-batch`(`IN-QUESTION-001~004`):
**先扫材料、再一次性提问,不要边做边问**。把下面 5 项合并成一次提问发给教师:
1. **考核年度**:本次考核的是哪一年(如 2024-01-01 ~ 2024-12-31);跨年度成果(上年 12 月见刊、本年 1 月检索)算哪一期。
2. **学校考核表模板**:年度考核登记表 / 述职报告模板文件(docx 或 xlsx)。**有模板就用模板的栏目名,不要自造栏目。**
3. **职称层级与评审要求**:本次是评什么(讲师/副教授/教授、教学为主型/科研为主型/教学科研并重型)、
学校职称评审办法与材料袋清单、代表作要求份数、继续教育学时下限。
4. **成果材料清单与存放位置**:简历、成果登记表、科研系统导出、论文首页与检索页、立项通知书、获奖证书、
课时与学生评教截图等,各自在哪个目录/网盘/系统里;能否导出。
5. **是否有字数要求**:述职报告全文下限与上限、各栏目是否有单独下限;申报书字数(若走教学成果奖)。
顺带确认(沿用总控的四问):学科门类 / 承担的课程名 / 学生层次(本科/研究生)/ 最终要交什么格式。
**缺什么也不能缺模板** —— 没有模板时先用本文件的通用栏目结构,并在交付说明里写明
「结构为通用模板,请对照贵校考核表栏目调整」。
教师答不上来的个人事实(课时数、收录号、获奖等级、项目编号)**不停下等**:
按 `IN-QUESTION-004` 转成 `【待补:具体事实】` 占位,写进「待核实清单」一并交给教师。
## 工作流
### 阶段一 · 材料清点与提取
- **输入**:教师给的成果材料,形式不限:
① 散装文件列表(论文 PDF 首页、立项通知书、获奖证书扫描件混在一个目录);
② 已有的成果 Excel(科研系统导出、往年登记表);
③ Word 简历 / 个人业绩总结(docx);
④ 教师口述或手打的一段清单(txt / 聊天记录)。
- **动作**:
1. `ls` / `glob` 清点目录,逐个记录 `文件名 → 类型 → 能提供的字段`,不要凭文件名猜内容;
2. 逐份读:docx/pdf/txt 用本包既有抽取路径;**xlsx 用 office-layer 的 openpyxl 侧读**(见上「派生关系」第 2 条);
3. 每条成果抽成统一字段结构,写入临时 `raw.json`(模板见阶段二),字段缺就留空字符串,
**不要填推断值**;每条标 `_source` = 来自哪份材料(去重与人工复核都要用);
4. 扫描件看不清的字段(如证书上的等级、专利号)记为缺口,不要 OCR 猜。
- **输出**:`raw.json` + 一份 `材料清点.md`(哪份材料提供了哪些条目)。
- **退出条件**:每条成果都有 `type`、`name`、`_source` 三个字段;无法归类或字段全空的条目
进「待核实清单」而不是被丢弃。
> 原始材料**只读**:不修改、不覆盖、不重命名(`IN-PATH-004`)。过程文件全部放临时目录。
### 阶段二 · 成果清单归表(本 skill 的核心可执行部分)
#### 2.1 归类规则表(成果类型 → 评审栏目)
按**教师材料里的原话**匹配,长词优先(「教材建设」不会被「教材」抢先命中):
| 材料里的常见说法 | 归入栏目 | 该栏关键字段 |
|---|---|---|
| 期刊论文、会议论文、论文、著作、专著、译著、教材、专利、发明专利、实用新型、软件著作权、软著、标准、科研项目、纵向项目、研究报告 | **科研成果** | 成果名称、形式、本人排名、时间、刊物/来源、编号/收录号、级别、支撑材料 |
| 教改项目、教研项目、教改论文、教学研究论文、教学成果奖、一流课程、课程建设、教材建设、教学竞赛、专业建设、实验教学 | **教学研究** | 项目/成果名称、类别、项目编号、时间、级别、本人角色 |
| 指导学生获奖、学科竞赛、大创指导、创新创业训练、班主任、学业导师、研究生指导、学位论文指导 | **人才培养** | 学生姓名、竞赛/奖项名称、获奖等级、时间、本人角色 |
| 横向课题、技术服务、技术咨询、成果转化、社会培训、学会任职、评审专家、科普讲座、社会兼职、对口支援 | **社会服务** | 事项、类型、时间、工作量/到账金额、证明材料 |
| 荣誉表彰、人才称号、优秀教师、先进个人、师德标兵 | **荣誉表彰** | 荣誉名称、授予单位、时间、级别 |
| 继续教育、进修、访学、企业实践、培训学时 | **继续教育** | 项目、形式、时间、学时/学分 |
**归不了类的不要猜**:进「待核实清单」,写清「需要教师确认属于哪一栏」。
学校考核表栏目名与上表不一致时,**以学校模板为准**,在 `dedup_merge.py` 的 `RULES` / `HEADERS` 里改名后重跑。
#### 2.2 去重与合并(同一成果在多份材料里出现只算一条)
去重键(`skills/annual-review/scripts/dedup_merge.py` 已实现,勿另写一套):
| 类别 | 去重键 | 说明 |
|---|---|---|
| 有编号的(项目、专利、软著) | 规范化后的**编号** | 项目编号/专利号最可靠,优先 |
| 人才培养类 | 学生姓名 + 竞赛名称 + 年份 | 同一年同一学生同一赛事只算一条 |
| 荣誉表彰 / 继续教育 | 名称 + 级别 + 年份 | |
| 其余(论文、著作、社会服务等) | 规范化名称 + 年份 | 规范化 = 去空白、去中英标点、全角转半角、转小写 |
**合并规则**:字段取信息更全的那一份(非空优先);两个非空值不一致时**不覆盖、不裁决**,
保留先出现的值并在「待核实清单」写 `字段冲突:本人排名:「第一作者」 vs 「1/3」`,由教师定。
脚本会把**不在考核年度内**的时间自动标注(不静默丢弃),提示教师确认是否计入本期。
#### 2.3 待核实标记(无法确认的信息标记而非猜测)
以下情况一律在行的「待核实」列打 `是`,并同时写入「待核实清单」工作表:
- 论文缺**收录号/检索号**(只有「已收录」的口头说法)→ `【待补:收录号,需检索证明】`
- 获奖缺**等级**或**授奖单位** → `【待补:获奖等级】`
- 项目缺**项目编号**或**立项/结题时间** → `【待补:项目编号】`
- 专利号不完整、只记得「申请中」 → `【待补:专利号/当前法律状态】`
- 横向课题缺**到账金额** → `【待补:到账金额,需财务或合同凭证】`
- 本人排名不明(「参与了」)→ `【待补:本人排名 n/N】`
- 时间跨年度、单位名称不规范 → 提示核对
> 每一条 `【待补】` 都要写清**需要教师提供的具体材料**(检索证明 / 证书扫描件 / 立项通知书 / 到账凭证),
> 不要只写「信息缺失」。
#### 2.4 生成归表(真实命令与 JSON 规格)
第 1 步,把阶段一抽出的条目写进临时 `raw.json`:
```json
{"items": [
{"type": "期刊论文", "name": "基于多模态学习的城市轨道交通客流预测", "role": "第一作者",
"date": "2024-06", "source": "《××学报》", "code": "", "level": "", "evidence": "论文首页+检索页",
"_source": "个人简历.docx"},
{"type": "指导学生获奖", "name": "全国大学生数学建模竞赛", "role": "指导教师(第一)",
"date": "2024-11", "level": "", "student": "张三", "evidence": "获奖证书", "_source": "个人简历.docx"}
]}
```
字段:`type`(材料原话)、`name`、`role`、`date`、`source`、`code`、`level`、`evidence`、`student`、`_source`。
缺的字段写空字符串,**不要编**。
第 2 步,去重合并 → 生成 xlsx_kit 规格(实测过,输出 `待核实清单` 与合并日志):
```bash
$PY skills/annual-review/scripts/dedup_merge.py \
--in /tmp/annual-review/raw.json \
--out /tmp/annual-review/归表.spec.json \
--year 2024
```
第 3 步,`xlsx_kit.py build` 出表(`xlsx_kit` 的规格就是 `{"sheets":[{...}]}`,
`dedup_merge.py` 直接产出这个规格,不需要手工拼):
```bash
$PY skills/office-layer/scripts/xlsx_kit.py build \
--spec /tmp/annual-review/归表.spec.json \
--out 2024年度成果归表.xlsx
$PY skills/office-layer/scripts/xlsx_kit.py inspect --in 2024年度成果归表.xlsx # 自检
```
生成的表结构(一个栏目一个工作表,均冻结首行):
| 工作表 | 列 |
|---|---|
| 科研成果 | 序号、成果名称、成果形式、本人排名、时间、刊物/项目来源、编号/收录号、级别、支撑材料、待核实 |
| 教学研究 | 序号、项目/成果名称、类别、项目编号、时间、级别、本人角色、支撑材料、待核实 |
| 人才培养 | 序号、学生姓名、获奖/竞赛名称、等级、时间、本人角色、支撑材料、待核实 |
| 社会服务 | 序号、事项、类型、时间、成效/工作量、证明材料、待核实 |
| 荣誉表彰 / 继续教育 | 按需生成 |
| 待核实清单 | 序号、所属栏目、成果/事项、缺口、需要教师提供 |
- **输入**:`raw.json`(阶段一产物)。
- **动作**:归类 → 去重合并 → 标记待核实 → 出归表 → `inspect` 自检。
- **输出**:`20XX年度成果归表.xlsx`(含「待核实清单」工作表)。
- **退出条件**:`inspect` 的表数量与栏目数一致;每条 `【待补】` 都写明了所需材料;
工作表里**没有任何模型推断出来的字段值**。
### 阶段三 · 述职报告生成
#### 3.1 栏目(以学校考核文件为准,无模板时用下列通用结构)
| 栏目 | 内容来源 |
|---|---|
| 一、思想政治表现与师德师风 | 学习活动、师德表现(**定性表述由教师本人写**) |
| 二、教学工作 | 阶段二的**教学研究**栏 + 教务系统的课时/评教数据 |
| 三、科研工作 | 阶段二的**科研成果**栏 |
| 四、人才培养 / 指导学生 | 阶段二的**人才培养**栏(学生姓名按敏感数据处理) |
| 五、社会服务 | 阶段二的**社会服务** + **荣誉表彰**栏 |
| 六、存在不足与改进方向 | 教师本人判断(AI 只列可选方向,不替教师下结论) |
| 七、下一年度工作计划 | 计划必须与本人实际在研任务对应,不得凭空许诺 |
#### 3.2 字数门(沿用 awesome-benzi 质量门思路)
口径照 `QG-LENGTH-001`:**每个汉字计 1 字,连续西文单词或数字串计 1 字,标点与空白不计**;
照 `QG-LENGTH-002`:**不达下限、或超过上限(下限的 110%)均阻断**。
本 skill 的 `word_gate.py` 按同一口径执行,并额外把 `【待补:…】` 占位**排除在字数之外**
(占位不是内容,不能拿来凑字数);不通过退出码 **2**(与 `QG-ERROR-003` 一致)。
```bash
$PY skills/annual-review/scripts/word_gate.py \
--in draft.md --min 2000 \
--sections "教学工作=500,科研工作=500,社会服务=200,存在不足=300"
```
输出 JSON:全文与各栏目字数、`issues`(blocked 项)、`result`。**有 blocked 项不得出 docx**。
低于下限时按 `WR-LENGTH-002` **先补实质内容**(工作量构成、课程建设做法、项目进展、服务事项的具体经过),
**不得用「高度重视、扎实推进」等空话凑字**;超上限 10% 时删真实重复,不删事实。
#### 3.3 用数据说话(无依据的留占位)
| 栏目 | 必须有的数据 | 来源优先序 | 无依据时 |
|---|---|---|---|
| 教学工作 | 课程名称、层次、班级数、课时数、学生人数、学生评教分数、调停课情况 | 教务系统导出 > 教师台账 > 教师口述 | `【待补:2024年总课时数,来源:教务系统】` |
| 科研工作 | 论文数/级别、项目数与经费、专利、学术会议 | 科研管理系统导出 > 立项通知书/论文原件 | `【待补:主持项目到账经费,来源:科研处】` |
| 人才培养 | 指导学生数、竞赛获奖、学位论文数、就业/升学 | 学院汇总表 > 证书 | `【待补:指导学生人数】` |
| 社会服务 | 兼职、培训、横向、讲座、评审 | 合同/通知/聘书 | `【待补:社会服务事项及工作量】` |
- **绝不用模型估计或用「约、左右、大概」含糊掉数字**。数字要么有来源,要么是 `【待补】`。
- 教师口述的数字必须标注「据教师口述,待系统核对」。
- 数据来源写在每条数据后的括号里,方便教师与学院核对。
#### 3.4 压掉 AI 套话(引 `LANGUAGE_MODEL.md`)
按 `WR-STYLE-010` 禁用无信息套话:值得注意的是、需要指出的是、综上所述、总而言之、众所周知、
不难发现、我们可以看到、由此可见、不言而喻;
按 `WR-STYLE-011` 禁用营销简报腔:赋能、抓手、闭环管理、底层逻辑、颗粒度、倒逼、深耕、助力、形成合力、全面提升;
按 `WR-STYLE-012` 禁用聊天机器人残留:下面我将、以下是为你、希望这对你有帮助、如需我继续、作为 AI、好的、当然;
按 `WR-STYLE-014` 不用「首先……其次……最后……」铺满全文,改用栏目编号与真实任务关系承接;
按 `WR-STYLE-015~018` 不用感叹号、反问句、口语和不严肃表达;
按 `WR-STYLE-021`/`WR-STYLE-024` **先写判断句再给支撑**,删掉「具有重要价值、提供有力支撑、奠定坚实基础」这类空泛判断,
换成具体对象、做法和结果。有教师往年的述职报告可作**风格样本**时,按 `WR-STYLE-005/008` 只用来校准语体,
**不搬用其中的事实、数据与结论**。
#### 3.5 出处与交付
```bash
$PY skills/office-layer/scripts/docx_kit.py md \
--in draft.md --out 2024年度述职报告初稿.docx --title "2024年度个人述职报告"
$PY skills/office-layer/scripts/docx_kit.py inspect --in 2024年度述职报告初稿.docx
```
需要按学校表格排版(含表头、表格、人工确认位)时用 `spec` 通道,`placeholder` 字段会以显式占位段落在 Word 里显示:
```json
{"title": "2024年度个人述职报告", "subtitle": "××学院 ×××",
"sections": [
{"heading": "二、教学工作",
"paras": ["承担本科课程 2 门,合计【待补:课时数】学时。"],
"table": {"header": ["课程名称", "层次", "学时", "学生评教"],
"rows": [["数据结构", "本科", "【待补】", "【待补】"]]},
"placeholder": "【待教师本人定稿:本栏目自我评价由教师本人撰写并签字确认】"}]}
```
```bash
$PY skills/office-layer/scripts/docx_kit.py spec --spec report.spec.json --out 2024年度述职报告初稿.docx
```
- **输入**:阶段二归表 + 教务/科研系统数据 + 考核表栏目与字数要求。
- **动作**:栏目映射 → 按 `WRITING_MODEL.md` 的顺序成文(十模块按依赖图执行)→ 字数门 → 语言门 → 出 docx。
- **输出**:`述职报告初稿.docx`(自我评价栏留人工确认位)。
- **退出条件**:字数门 `passed`;无 AI 套话命中;所有无依据数据为 `【待补】`;
**自我评价与「存在不足」两部分明确标注为待教师本人定稿**。
### 阶段四 · 职称评审材料整理
#### 4.1 常见栏目与材料清单模板
以学校职称评审办法与材料袋清单为准,常见栏目如下:
| 栏目 | 需要的材料 | 常见格式 | 高频缺项 |
|---|---|---|---|
| 学历资历 | 学历学位证书、现职称证书、聘任文件、工作经历证明 | 扫描件 PDF | 聘任文件年份与现职称不一致 |
| 师德师风与年度考核 | 近 n 年年度考核结果、师德考核表 | 学院盖章表 | 缺其中一年的考核结果 |
| 教学工作量 | 教务系统课时统计、任课通知、学生评教结果 | 系统导出 + 盖章 | 课时统计未盖章、评教分数无截图 |
| 教科研成果 | 论文原件与检索页、项目立项/结题证明、专利证书、著作版权页 | PDF + 原件 | 缺检索证明、缺结题证明、排名未标注 |
| 代表作 | 规定份数的代表作及同行评议材料 | 按要求份数 | 份数不符、非第一作者却未说明贡献 |
| 获奖 | 教学/科研获奖证书、教学成果奖 | 扫描件 | 缺等级页、缺授奖单位 |
| 指导学生 | 指导竞赛获奖、学位论文指导记录、大创结题 | 证书/汇总表 | 缺本人指导教师署名证明 |
| 继续教育 | 培训学时证明、进修/访学证明、企业实践 | 平台导出/证明 | 学时不足下限 |
#### 4.2 用阶段二的归表自动对照
把「材料袋清单」当模板,「成果归表.xlsx」当数据源,逐栏核对:
- 归表里**有、材料袋清单里没要求**的条目 → 提示教师确认是否作为附加材料提交(不要擅自删);
- 清单里**要求但归表为空**的栏目 → 直接进「缺什么」清单;
- 归表里标了「待核实」的条目 → 逐条列出需要的证明材料(检索证明 / 证书 / 立项通知书 / 到账凭证)。
#### 4.3 「缺什么」检查清单(逐项过,交前归零)
- [ ] 学历学位证书、现职称证书、聘任文件齐(注意聘任年份)
- [ ] 近 n 年年度考核结果齐(哪一年缺写清)
- [ ] 教务系统课时统计已导出**并盖章**;学生评教有截图或系统导出
- [ ] 论文:原件首页 + 目录页 + 检索页(收录号可查)
- [ ] 项目:立项通知书 + 结题证明;主持/参与、排名明确
- [ ] 专利/软著:证书 + 当前法律状态
- [ ] 获奖:证书含**等级页与授奖单位**
- [ ] 指导学生:证书能证明本人为**署名指导教师**
- [ ] 代表作份数与形式符合学校要求
- [ ] 继续教育学时达下限(写清差多少学时)
- [ ] 所有材料为**同一考核/评审年度**内的,跨年度已单列说明
- [ ] 所有复印件/A4 装订/签章要求按学校通知执行(**不凭记忆照抄往年要求**)
- **输入**:职称评审办法与材料袋清单 + 阶段二归表 + 教师已有的证书/证明文件目录。
- **动作**:清单 ⇄ 归表双向对照 → 出缺项清单与待补材料清单 → 生成《职称材料清单》docx/xlsx。
- **输出**:`职称评审材料清单.xlsx`(栏目 → 材料 → 有无 → 缺口)+ `缺什么.md`。
- **退出条件**:每个空缺项都指明「缺什么材料、去哪里补、谁盖章」;
清单里不含任何未经教师确认的成果条目。
### 阶段五 · 教学成果奖申报(交接 grant-proposal)
**本 skill 不写申报书正文**,只做素材准备与交接,正文与质量门全部由 `grant-proposal` 执行。
交接协议:
| 环节 | 责任方 | 内容 |
|---|---|---|
| 素材准备 | **annual-review** | 阶段二归表的「教学研究 / 人才培养」两栏;成果证明目录;教学成果奖通知与申报书模板;字数与栏目要求 |
| 通道 | `grant-proposal` | 按七阶段执行:只读扫描 → 有界恢复与模板解析 → 事实与问题批次 → 骨架与依赖图 → 成文与独立核验 → 内容门与早评 → DOCX 原子交付 |
| 复用规则 | `grant-proposal` | 质量门、语言门、十模块、`[n]` 引证、字数门(不低于下限、不超过 110%) |
| 特别说明 | 双方 | `awesome-benzi` 的 5 个项目工作流**不含教学成果奖**,因此**不套用**任一项目工作流的领域核验;领域栏目用本 skill 提供的教学成果奖栏目结构(成果简介 / 主要解决的教学问题 / 成果创新点 / 推广应用效果 / 支撑材料) |
| 退回 | `grant-proposal` → 教师 | `申报书初稿.docx` + 模拟评审意见,所有未知事实为 `【待补:…】` |
交接时明确三件事给 `grant-proposal`:申报层级与截止时间、官方模板文件、成果归表 xlsx 的路径(供其读取事实)。
**评选口径与往届获奖材料不臆造**;需要参考往届材料时,由教师提供。
### 阶段六 · 时间节点管理与倒排时间表
各类材料的**具体日期一律以学校和上级主管部门当年通知为准**(`CONVENTIONS.md` §3:不引具体条款与日期)。
本 skill 只给相对倒排模板;把下面这张表填上真实截止日期后存档,每年复用。
| 时点 | 做什么 | 产出 | 谁做 |
|---|---|---|---|
| 截止日 T-8 周 | 索要考核表/评审表模板与通知;清点材料目录 | 模板 + 材料清点.md | 教师 |
| T-7 周 | 抽取成果,生成归表与待核实清单 | 成果归表.xlsx | AI + 教师 |
| T-6 周 | 教师去教务处/科研处补收录号、项目编号、证书等级、到账凭证 | 补全后的归表 | 教师 |
| T-5 周 | 述职报告初稿 + 字数门 | 述职报告初稿.docx | AI |
| T-4 周 | **教师本人定稿**自我评价与「存在不足」;核对所有数字 | 定稿 | 教师(必须) |
| T-3 周 | 职称材料分册、盖章、缺项清单归零 | 材料袋 | 教师 |
| T-2 周 | 学院汇总/公示前交叉核对(他人复核一次) | 签字版 | 教师 + 同事 |
| T-1 周 | 提交并留底(自己存一份完整电子版) | 归档 | 教师 |
| 提交后 | 删除本轮中间文件(含学生姓名的临时表) | — | 教师 |
年度节奏(**仅作准备顺序提示,具体时间以通知为准**):
年度考核材料集中在**第四季度**;职称评审通知多在**上半年或下半年各一批**,收到通知到交材料常只有 2–4 周,
所以**职称材料的成果归表建议全年维护、每季度更新一次**,不要在通知下来之后从零整理。
教学成果奖多与教学改革项目结题周期相关,**结题当年就着手整理成果证明与推广材料**。
- **输入**:学校通知里的真实截止日期。
- **动作**:填倒排表 → 生成提醒清单(含每项的前置依赖)→ 存为 `时间节点.md` 或 xlsx。
- **输出**:`年度考核倒排表.xlsx` / `时间节点.md`。
- **退出条件**:每个截止日都有对应的负责人与前置产物;不存在「AI 或他人代签」的环节。
### 阶段七 · 交付与自检
- **动作**:`xlsx_kit inspect` / `docx_kit inspect` 读回结构自检;写交付说明。
- **输出**:交付说明(含本文件清单、`【待补】` 清单、默认值说明、敏感提示)。
- **退出条件**:交付说明里明确写出「这是初稿」「请重点核对 X/Y/Z」,且敏感文件已提示清理。
## 产出物
| 文件 | 内容 | 通道 |
|---|---|---|
| `20XX年度成果归表.xlsx` | 按评审栏目分工作表的成果清单 + 待核实清单 | `xlsx_kit.py build` |
| `述职报告初稿.docx` | 按考核栏目的述职报告,自我评价留人工确认位 | `docx_kit.py md` / `spec` |
| `职称评审材料清单.xlsx` | 栏目 → 材料 → 有无 → 缺口 | `xlsx_kit.py build` |
| `缺什么.md` | 逐项缺项清单(缺什么、去哪补、谁盖章) | 文本 |
| `年度考核倒排表.xlsx` | 时间节点、负责人、前置依赖 | `xlsx_kit.py build` |
| `材料清点.md` | 哪份材料提供了哪些条目(可追溯) | 文本 |
| 教学成果奖 → `申报书初稿.docx` | 由 `grant-proposal` 交付,本 skill 不产出 | `grant-proposal` |
## 红线
### 绝不虚构成果(本节最重要)
**论文、项目、获奖、专利、软著、课时数、评教分数、社会服务事项,必须来自教师实际提供的材料。**
没有的留 `【待补:…】`。
| 禁止 | 说明 |
|---|---|
| 补全"看起来合理"的成果 | 不得因为「第一作者发过一篇,再补两篇顺理成章」而增补任何条目 |
| 编造收录号 / 项目编号 / 专利号 | 这类编号可被第三方一秒核验,编造等于自曝 |
| 抬高等级或排名 | 校级不得写成省级;第三作者不得写成「主要完成人」 |
| 把「申请中/在投/拟申报」写成已取得 | 必须如实写状态,或在计划栏目中体现 |
| 凭记忆写课时数、评教分数 | 无系统数据就留 `【待补】` |
| 套用「历年通用表述」里的具体数字 | 往年述职报告只能作语体样本,其数据与结论不得搬用 |
**为什么这条是红线中的红线**:虚报成果一旦被核验,后果不止是材料被退回 ——
它会被认定为学术不端/科研失信,按学校和上级主管部门的有关规定处理,
可能影响当年评审资格、已获荣誉、岗位聘任乃至后续项目申报资格;
对个人声誉和学院信誉的损害不可逆。**AI 在这里宁可交一份带大量 `【待补】` 的初稿,
也绝不交一份看起来很完整的编造稿。** 交付时必须把 `【待补】` 清单单独列出,方便教师逐条补齐。
### 其余红线
1. **AI 只出草稿**:述职报告的**自我评价**与**存在不足与改进方向**必须由**教师本人**撰写并定稿;
产出用 `【待教师本人定稿:…】` 显式占位,不得替教师写死结论(`CONVENTIONS.md` §5)。
2. **不替教师下评价性结论**:考核等次建议、是否符合申报条件、能否通过评审——只呈现事实与缺口,不写判断。
3. **不引具体政策条款号**:只写「按学校/学院/上级主管部门有关规定」,并提示教师核对当年文件。
4. **不修改、不覆盖教师原始材料**;过程文件放临时目录,任务结束提醒删除(`IN-PATH-004`)。
5. **学生姓名等个人信息**:人才培养栏涉及学生姓名、学号,属敏感信息(`CONVENTIONS.md` §6),
只在本机处理、不外发;交付说明注明「本文件含学生个人信息,请注意保管」;
非必要场合(如公开版本)以「指导学生若干名」等方式脱敏。
6. **归表的数字不得二次加工**:不做「成果折算」「加权得分」等模型自创的换算,
除非学校评审办法里明确给出折算口径(此时注明口径来源)。
7. 走 `grant-proposal` 的部分,一律遵守其红线(不虚构文献、`[n]` 与证据卡一一对应、字数门)。
## 自检清单
- [ ] `description` 触发短语能命中「写年度述职 / 整理职称评审材料 / 把成果整理成表 / 教学成果奖申报 / 年度考核材料」
- [ ] 引用的 底座路径都真实存在(`ls` 验证过)
- [ ] intake 的 5 项(考核年度 / 考核表模板 / 职称层级与要求 / 材料清单与位置 / 字数要求)**一次性**问完
- [ ] 每条成果都能追溯到 `_source`(来自哪份材料)
- [ ] 归表用 `xlsx_kit.py build` 生成,并用 `inspect` 读回核对过表数与列数
- [ ] 重复条目已按去重键合并,字段冲突已写进「待核实清单」而不是被静默覆盖
- [ ] 所有 `【待补:…】` 都写明了需要教师提供的具体材料
- [ ] 述职报告字数门 `passed`(不低于下限、不超过下限 110%),未用空话凑字数
- [ ] 教学工作量的课时数、评教分数有来源标注,无来源处为 `【待补】`
- [ ] AI 套话与营销腔已按 `WR-STYLE-010/011/012` 清零
- [ ] 自我评价与「存在不足」留有 `【待教师本人定稿】` 占位
- [ ] 职称材料清单的每个空缺项都指明「缺什么 / 去哪补 / 谁盖章」
- [ ] 教学成果奖已按交接协议移交 `grant-proposal`,本 skill 未代写申报书正文
- [ ] 倒排表用的是**学校通知里的真实日期**,不含模型推测的日期
- [ ] 交付说明写明「初稿,请重点核对 `【待补】` 处」,并提示清理含个人信息的中间文件
Files in this skill
- SKILL.md
- scripts/dedup_merge.py
- scripts/word_gate.py
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.