更新K4课程README,清理旧的班级记忆文件,调整目录结构
This commit is contained in:
@@ -1,456 +1,92 @@
|
||||
---
|
||||
name: 课评生成
|
||||
description: 根据课程记录文档批量生成个性化课评,支持单条生成和批量生成两种模式
|
||||
description: 快速生成个性化课评,你只需提供学生本节课的表现,自动匹配班级风格生成高质量课评
|
||||
type: skill
|
||||
---
|
||||
|
||||
# 🎯 课评生成器技能包
|
||||
|
||||
## 📁 文件结构
|
||||
```
|
||||
课评生成/
|
||||
├── 技能说明.md # 本文件(完整技能指南)
|
||||
└── 使用模板/ # 存放各类模板和示例
|
||||
├── 学生画像模板.md
|
||||
├── 课评示例.md
|
||||
└── 课程记录模板.md # 批量生成用的课程记录文档模板
|
||||
```
|
||||
|
||||
## 🌟 功能说明
|
||||
本技能包专为穹狼科创编程课程设计,支持两种生成模式:
|
||||
1. **批量生成(推荐)**:用户提供课程记录 md 文档,自动解析学生名单并批量生成课评
|
||||
2. **单条生成**:针对单个学生逐一确认信息、读取资料、生成课评
|
||||
本技能专为穹狼科创编程课程设计,**使用超简单:你只需要告诉我学生的基本信息和本节课表现,我就能自动生成符合班级风格的个性化课评**。
|
||||
|
||||
综合学生用户画像、教学方案、过往表现和课程特点,生成约200字的个性化课评。支持C++、AIGC、Kitten、体验课四大课程,按班级匹配专属评语风格。所有课评统一汇总到 `课评汇总-2026春季.md`,便于查阅和归档。
|
||||
✅ 支持四大课程:C++/AIGC/Kitten/体验课
|
||||
✅ 自动匹配班级专属风格:AICODE03温暖鼓励型/K4温和鼓励型/CSP03要求型/体验课转化型
|
||||
✅ 自动整合OJ做题数据(CSP班级专属)
|
||||
✅ 自动保存到学生个人课评汇总文件
|
||||
✅ 自动更新出勤记录
|
||||
|
||||
⚠️ **执行规则:**
|
||||
1. 初始阶段如果信息不足,会通过提问获取更具体的内容
|
||||
2. 信息充分后自动完成所有步骤
|
||||
3. 提问过程确保生成更精准、更个性化的课评内容
|
||||
|
||||
---
|
||||
|
||||
## 📋 模式一:批量课评生成(推荐)
|
||||
|
||||
### 使用流程
|
||||
## 💡 使用方式(超简单)
|
||||
你只需要提供以下信息:
|
||||
```
|
||||
1. 用户提供课程记录文档 → 2. 解析学生名单与表现 → 3. 按学生读取资料 → 4. 逐一生成课评 → 5. 保存到个人汇总(按课次顺序追加) → 6. 生成 output 周汇总文件
|
||||
学生姓名:_______
|
||||
班级:_______
|
||||
课程名称:_______
|
||||
课次:第_______课
|
||||
日期:YYYY-MM-DD
|
||||
表现描述:_______(越具体越好,比如"掌握了循环嵌套,主动调试bug,专注力比上节课好")
|
||||
```
|
||||
|
||||
### 1. 课程记录文档格式
|
||||
用户提供的课程记录文档(md 格式)应包含以下内容:
|
||||
|
||||
```markdown
|
||||
# 第X周课程记录
|
||||
|
||||
**日期范围**:2026-04-17 至 2026-04-19
|
||||
我会自动完成剩下的所有工作:
|
||||
1. 读取学生画像、班级风格指南、本节课教案
|
||||
2. CSP班级自动拉取OJ做题数据
|
||||
3. 生成约200字的个性化课评
|
||||
4. 自动保存到学生的课评汇总文件
|
||||
5. 自动更新出勤记录
|
||||
|
||||
---
|
||||
|
||||
## 【周五下午 1700 AI03班】(1人上课)
|
||||
|
||||
### 李梓宁
|
||||
- **课程**:AI大作家(下)
|
||||
- **日期**:2026-04-17
|
||||
- **课次**:第7课
|
||||
- **表现**:对自己的小说特别上心,不断调试修改,主动要求更好的效果,精益求精
|
||||
- **状态**:✅ 出勤
|
||||
|
||||
---
|
||||
|
||||
## 【周五晚上 1900 K4班】(4人上课)
|
||||
|
||||
### 陈圆振
|
||||
- **课程**:彩虹生成器
|
||||
- **日期**:2026-04-17
|
||||
- **课次**:第7课
|
||||
- **表现**:思维敏捷,掌握分支嵌套知识点,认真完成作品,课堂积极性高
|
||||
- **状态**:✅ 出勤
|
||||
|
||||
### 彭煜腾
|
||||
- **课程**:彩虹生成器
|
||||
- **日期**:2026-04-17
|
||||
- **课次**:第7课
|
||||
- **表现**:掌握循环嵌套结构,迅速完成作品,出现 bug 能主动拉着老师讨论
|
||||
- **状态**:✅ 出勤
|
||||
|
||||
---
|
||||
|
||||
## 【周六下午 1400 CSP03班】(4人上课,1人请假)
|
||||
|
||||
### 郑子煜
|
||||
- **课程**:字符串处理
|
||||
- **日期**:2026-04-18
|
||||
- **课次**:第7课
|
||||
- **状态**:⏸ 请假
|
||||
- **备注**:请家长督促在家复习本周字符串相关知识点
|
||||
## ⚙️ 核心生成逻辑(自动完成,你不需要操作)
|
||||
```
|
||||
1. 读取参考资料 → 2. CSP班级自动拉取OJ数据 → 3. 生成个性化课评 → 4. 自动保存+更新出勤
|
||||
```
|
||||
|
||||
### 2. 解析与处理流程
|
||||
1. **读取课程记录文档**:解析出周次、日期范围、各班级、学生名单及表现
|
||||
2. **过滤状态**:只处理 **状态为「✅ 出勤」** 的学生,跳过请假/缺勤学生
|
||||
3. **OJ数据自动获取(仅CSP班级)**:如果是CSP班级,调用Python脚本拉取所有出勤学生的OJ做题数据。**此步骤必须执行,不可跳过。**
|
||||
|
||||
**步骤3.1:确定参数**
|
||||
- 课程代码:`CSP03-<课次编号>`(从课次提取,如"第7课"→`CSP03-07`,注意补零到两位数)
|
||||
- 班级目录名(`--class-name` 参数),映射关系:
|
||||
|
||||
| 课程记录中的班级名 | --class-name 参数 |
|
||||
|---|---|
|
||||
| 周六早上0830CSP03班 | 橙子周六0830CSP03 |
|
||||
| 周六下午1400CSP03班 | 橙子周六1400CSP03 |
|
||||
| 周日早上1030CSP03班 | 橙子周日1030CSP03 |
|
||||
|
||||
- 日期:`YYYYMMDD` 格式(从课程记录中提取)
|
||||
- 学生名单:所有出勤学生姓名,逗号分隔
|
||||
|
||||
**步骤3.2:执行脚本(一次性拉取所有出勤学生数据)**
|
||||
```bash
|
||||
python scripts/update_feedback_with_oj.py \
|
||||
--course CSP03-<课次编号> \
|
||||
--title "<课程名称>" \
|
||||
--class-name "<班级目录名>" \
|
||||
--date <YYYYMMDD> \
|
||||
--students "学生1,学生2,学生3"
|
||||
```
|
||||
脚本会:
|
||||
- 登录OJ系统(凭据从 `.env` 读取)
|
||||
- 从 `config/hw_dict.json` 查找对应课次的作业ID
|
||||
- 抓取所有出勤学生的提交记录(A=课堂练习, B=课后作业, C=拓展练习)
|
||||
- 控制台输出每个学生的完成率、思考模式、错误分布
|
||||
- 分析结果自动保存到 `.claude/memory/oj/analysis/CSP03-XX_student_analysis.json`
|
||||
|
||||
**步骤3.3:读取分析结果**
|
||||
分析JSON中包含每个学生的:
|
||||
- `completion`:完成率(如 "2/3")
|
||||
- `total_attempts`:总提交次数
|
||||
- `problems`:每题详情(状态、提交次数、思考模式、错误类型)
|
||||
- `total_errors`:错误分布(WA/CE/RE/TLE 各几次)
|
||||
|
||||
4. **按学生循环处理**:
|
||||
- 读取该学生的用户画像(`.claude/memory/class/[班级]/[姓名]/profile.md`)
|
||||
- 读取过往课评(`.claude/memory/class/[班级]/[姓名]/feedback/课评汇总-2026春季.md`)
|
||||
- **读取本节课上课目标(必须!):到 `.claude/lesson/` 目录下查找对应班级、对应课次的教案文件,获取本节课的教学目标和知识点,作为课评中本节课内容的唯一依据,禁止编造课程内容
|
||||
- 读取班级风格指南(`.claude/rules/CPP.md`,CSP03班使用"家长信格式·要求型"风格)
|
||||
- **对于CSP班级**:从步骤3的分析JSON中提取该学生的OJ做题数据,生成【OJ做题数据】板块(见下方OJ板块格式),整合到课评的"建议/期望"部分之前
|
||||
- 结合课程记录中的「表现」字段和OJ做题数据,生成个性化课评
|
||||
5. **保存课评**:将新课评按课次顺序追加到个人汇总文件 **末尾**(详见下方保存规则),CSP班级的课评会自动包含OJ数据部分
|
||||
6. **更新出勤登记**:为出勤学生添加出勤记录
|
||||
|
||||
### 3. 保存课评(按课次顺序追加)
|
||||
|
||||
**目标文件路径**:
|
||||
`.claude/memory/class/[班级]/[姓名]/feedback/课评汇总-2026春季.md`
|
||||
|
||||
**操作步骤**:
|
||||
1. 检查汇总文件是否存在,不存在则按模板创建
|
||||
2. 读取现有文件的全部内容
|
||||
3. **按课次顺序追加新课评到文件末尾**:
|
||||
- 找到文件最后一个课评条目
|
||||
- 在其后追加新条目,编号为 **最后一条编号 + 1**
|
||||
- 新条目编号与 `lesson` 文件夹中的课程顺序一一对应
|
||||
4. **无需重新编号**:原有条目编号保持不变
|
||||
5. **新条目格式**:
|
||||
```markdown
|
||||
## 第[N]条:[课程名称]
|
||||
|
||||
**授课日期**:[日期]
|
||||
|
||||
**课评内容**:
|
||||
|
||||
[课评正文]
|
||||
|
||||
---
|
||||
```
|
||||
|
||||
**示例**(追加前):
|
||||
```markdown
|
||||
# 李梓宁 课评汇总(2026春季)
|
||||
|
||||
**班级**:周五下午1700AI03班
|
||||
**学生**:李梓宁
|
||||
|
||||
---
|
||||
|
||||
## 第1条:AI是怎么想的
|
||||
|
||||
**授课日期**:2026-03-08
|
||||
|
||||
**课评内容**:...
|
||||
|
||||
---
|
||||
|
||||
## 第2条:AI的记忆之谜
|
||||
|
||||
...
|
||||
```
|
||||
|
||||
**示例**(追加后):
|
||||
```markdown
|
||||
# 李梓宁 课评汇总(2026春季)
|
||||
|
||||
**班级**:周五下午1700AI03班
|
||||
**学生**:李梓宁
|
||||
|
||||
---
|
||||
|
||||
## 第1条:AI是怎么想的
|
||||
|
||||
**授课日期**:2026-03-08
|
||||
|
||||
**课评内容**:...
|
||||
|
||||
---
|
||||
|
||||
## 第2条:AI的记忆之谜
|
||||
|
||||
...
|
||||
|
||||
---
|
||||
|
||||
## 第3条:AI大作家(下)
|
||||
|
||||
**授课日期**:2026-04-17
|
||||
|
||||
**课评内容**:
|
||||
|
||||
[新课评正文]
|
||||
|
||||
---
|
||||
```
|
||||
|
||||
### 4. 生成 output 周汇总文件
|
||||
|
||||
**所有学生课评生成完毕后**,汇总本周所有课评到一个markdown文件:
|
||||
|
||||
**文件路径**:`output/第[X]周课评汇总.md`
|
||||
- 如果 `output` 文件夹不存在,自动创建
|
||||
- 如果目标文件不存在,自动新建;如果已存在,覆盖写入最新内容
|
||||
|
||||
**文件格式**(按日期倒叙排列,最新课程在前):
|
||||
```markdown
|
||||
# 第X周课评汇总
|
||||
📅 日期范围:[日期范围]
|
||||
|
||||
---
|
||||
|
||||
## 【周日下午 1400 AI03班】(4人上课)
|
||||
|
||||
### 贺楚悦
|
||||
**课程**:AI大作家插图生成
|
||||
**日期**:2026-04-19
|
||||
|
||||
[课评正文]
|
||||
|
||||
---
|
||||
|
||||
### 林俊宇
|
||||
**课程**:AI大作家插图生成
|
||||
**日期**:2026-04-19
|
||||
|
||||
[课评正文]
|
||||
|
||||
---
|
||||
|
||||
## 【周日早上 0845 AI03班】(3人上课,1人缺勤)
|
||||
|
||||
### 卢皓霖
|
||||
⏸ 请假
|
||||
**备注**:请家长督促在家复习本周知识点
|
||||
|
||||
---
|
||||
|
||||
### 黄俊博
|
||||
**课程**:AI大作家插图生成
|
||||
**日期**:2026-04-19
|
||||
|
||||
[课评正文]
|
||||
|
||||
---
|
||||
|
||||
### 穹狼科创 · 2026春季学期 ✨
|
||||
```
|
||||
|
||||
**排序规则(倒叙)**:
|
||||
- 按班级分组,**日期最晚的班级排在最前面**(倒叙排列)
|
||||
- 同一班级内,学生顺序保持课程记录文档中的顺序
|
||||
- 请假/缺勤学生也列出,标注状态和备注
|
||||
|
||||
**生成步骤**:
|
||||
1. 读取课程记录文档,按日期从晚到早排序班级(倒叙)
|
||||
2. 对每个班级,输出班级标题和人数信息
|
||||
3. 对出勤学生,从个人课评汇总文件中提取最新一条课评内容
|
||||
4. 对请假/缺勤学生,输出状态说明和复习建议
|
||||
5. 检查 `output` 文件夹是否存在,不存在则创建
|
||||
6. 保存到 `output/第[X]周课评汇总.md`
|
||||
|
||||
---
|
||||
|
||||
## 📋 模式二:单条课评生成(备用)
|
||||
|
||||
当不需要批量生成,只需要为单个学生写课评时使用。
|
||||
|
||||
### 使用流程
|
||||
```
|
||||
1. 确认学生/课程/课次 → 2. 自动获取OJ数据(仅CSP班级,运行Python脚本)→ 3. 读取相关资料 → 4. 交互式收集表现(通过提问获取具体信息)→ 5. 生成课评(CSP班级自动整合OJ数据)→ 6. 保存到学生文件夹(按课次顺序追加)
|
||||
```
|
||||
|
||||
### 4. 交互式收集表现(新功能)
|
||||
|
||||
**目的**:如果初始信息不够具体,通过提问获取更详细、更个性化的内容。
|
||||
|
||||
**触发条件**:
|
||||
- 初始描述过于笼统(如"表现很好"、"很认真")
|
||||
- 缺乏具体行为细节
|
||||
- 没有成长对比信息
|
||||
- 缺少家长视角的内容
|
||||
|
||||
**提问策略**:
|
||||
|
||||
1. **获取具体行为**
|
||||
- "能具体说说嘉博在哪个环节表现最突出吗?"
|
||||
- "他有没有什么特别让人印象深刻的行为?"
|
||||
- "完成作品时,他是怎么做的?"
|
||||
|
||||
2. **挖掘细节信息**
|
||||
- "他在调试时遇到了什么具体问题?"
|
||||
- "花了多长时间完成?"
|
||||
- "有没有主动提出什么有趣的想法?"
|
||||
|
||||
3. **了解成长变化**
|
||||
- "相比上节课,他在哪些方面有明显进步?"
|
||||
- "有没有保持好的习惯,或者需要改进的地方?"
|
||||
- "课堂专注度有什么变化?"
|
||||
|
||||
4. **收集家长需求**
|
||||
- "家长最关心孩子的哪个方面?"
|
||||
- "在家可以做什么来帮助巩固本周所学?"
|
||||
- "希望培养孩子的什么能力?"
|
||||
|
||||
**信息整合原则**:
|
||||
- 每个回答都要写入课评,确保"言之有物"
|
||||
- 将具体行为与能力培养联系起来
|
||||
- 结合家长期望给出针对性建议
|
||||
- 生成包含"家长视角"板块的完整课评
|
||||
|
||||
### 1. 确认基本信息
|
||||
- 学生姓名:_______
|
||||
- 班级:_______
|
||||
- 课程类型:□CPP □AIGC □KITTEN □体验课
|
||||
- 本节课次:第_______课
|
||||
- 课评风格:根据班级自动匹配
|
||||
- AI03班 → 温暖鼓励型
|
||||
- K4班 → 家长信格式·温和鼓励型
|
||||
- CSP03班 → 家长信格式·要求型
|
||||
- 体验课 → 家长信格式·转化导向型
|
||||
|
||||
### 2. OJ数据获取(仅CSP班级,必须执行)
|
||||
|
||||
如果课程类型为CPP且班级为CSP03班,运行以下命令获取该学生的OJ做题数据:
|
||||
|
||||
### 1. 自动读取参考资料
|
||||
我会自动找到以下资料用于生成课评:
|
||||
- **学生画像**:`.claude/memory/class/[班级]/[姓名]/profile.md`(了解学生性格特点和适用风格)
|
||||
- **班级风格指南**:根据课程类型读取对应规则(`.claude/rules/[课程].md`)
|
||||
- **本节课教案**:到 `.claude/lesson/` 目录下查找对应班级、对应课次的教案,确保课评内容与实际教学一致,不编造内容
|
||||
- **过往课评**:读取该学生的历史课评,避免重复用词
|
||||
|
||||
### 2. CSP班级专属:自动获取OJ做题数据(必须执行)
|
||||
如果是CSP03班的学生,我会自动运行脚本拉取本节课的OJ做题数据:
|
||||
```bash
|
||||
python scripts/update_feedback_with_oj.py \
|
||||
--course CSP03-<课次编号> \
|
||||
--get-student-oj "<学生姓名>"
|
||||
```
|
||||
自动把OJ数据(完成情况、做题表现、错误分布)整合到课评中。
|
||||
|
||||
**参数说明**:
|
||||
- `--course`:CSP03-课次,如第7课→`CSP03-07`(课次必须补零到两位数)
|
||||
- `--get-student-oj`:学生姓名,脚本会输出该学生的OJ数据Markdown板块
|
||||
- 脚本自动从 `.env` 读取OJ登录凭据,从 `config/hw_dict.json` 查找作业ID
|
||||
### 3. 自动生成课评(统一格式,所有课程通用)
|
||||
**固定格式(必须严格遵守)**:
|
||||
```markdown
|
||||
【学生姓名】家长好,我们本周上课的课程是《XXX》
|
||||
|
||||
脚本输出的Markdown内容包含:完成情况、每题状态表(含思考模式和错误类型)、分析和错误分布。将此内容直接作为【OJ做题数据】板块嵌入课评。
|
||||
课程目标:
|
||||
1. 【知识点1】
|
||||
2. 【知识点2】
|
||||
3. 【知识点3】
|
||||
|
||||
### 3. 读取参考资料
|
||||
- **风格指南**:`.claude/rules/[课程].md`
|
||||
- CPP.md:C++课程评语
|
||||
- AIGC.md:AIGC课程评语
|
||||
- KITTEN.md:Kitten课程评语
|
||||
- 体验课.md:体验课转化评语
|
||||
- **用户画像**:`.claude/memory/class/[班级]/[姓名]/profile.md`
|
||||
- 参考6种学生类型:内向谨慎型、信心不足型、新手入门型、聪明浮躁型、潜力待挖型、容易满足型
|
||||
- **本节课上课目标(必须读取!):** 到 `.claude/lesson/` 目录下查找对应班级、对应课次的教案文件,获取本节课的教学目标和知识点,作为课评中本节课内容的唯一依据,禁止编造课程内容:
|
||||
- K4班课程:`.claude/lesson/K4/README.md`
|
||||
- AI03班课程:`.claude/lesson/AI03/AICODE-03/` 或 `.claude/lesson/AI03/AICODE-06/`
|
||||
- CSP03班课程:`.claude/lesson/CSP03/知识点.md`
|
||||
- 体验课:根据实际体验内容从对应lesson文件读取
|
||||
- **过往课评**:读取该学生的 `课评汇总-2026春季.md` 和最近课评,避免重复用词
|
||||
|
||||
### 4. 收集本次表现(交互式确认)
|
||||
|
||||
如果提供的课评内容不够具体,我将通过提问来获取更多信息,确保生成高质量的课评。
|
||||
|
||||
**初始信息收集**:
|
||||
```
|
||||
掌握程度:□优秀 □良好 □一般 □待提高
|
||||
课堂互动:□积极 □一般 □被动 □缺席
|
||||
|
||||
具体表现:
|
||||
- 优点:_________________________
|
||||
- 不足:_________________________
|
||||
- 进步:_________________________
|
||||
课评反馈:
|
||||
【具体课评内容,约200字,包含优点、建议、期望】
|
||||
```
|
||||
|
||||
**交互式提问流程**:
|
||||
1. 如果描述过于笼统,我会问:
|
||||
- "能具体说说嘉博在哪个环节表现最突出吗?"
|
||||
- "他有没有什么特别让人印象深刻的行为?"
|
||||
- "和其他同学相比,他的表现有什么不同?"
|
||||
生成规则:
|
||||
- 课程目标从本节课教案中提取真实知识点,禁止编造
|
||||
- 课评反馈包含:优点表扬 + 温和建议 + 鼓励期望
|
||||
- **CSP班级专属要求**:必须查询OJ系统的**A包作业完成情况**,进行详细分析(包含完成率、思考模式、错误分布、改进建议),【OJ做题数据】板块放在课评反馈的最后部分
|
||||
- 称呼规则:三字姓名默认去掉姓氏,直呼后两个字(如"陈圆振"→"圆振"),更亲切
|
||||
- 内容完全基于你提供的表现描述和教案知识点,不编造内容
|
||||
|
||||
2. 如果缺乏具体细节,我会问:
|
||||
- "他在调试时遇到了什么具体问题?"
|
||||
- "他完成作品花了多长时间?"
|
||||
- "他有没有主动提出什么有趣的想法?"
|
||||
|
||||
3. 如果没有成长记录,我会问:
|
||||
- "相比上节课,他在哪些方面有明显进步?"
|
||||
- "有没有保持好的习惯,或者需要改进的地方?"
|
||||
|
||||
4. 如果没有家庭配合建议,我会问:
|
||||
- "家长最关心孩子的哪个方面?"
|
||||
- "在家可以做什么来帮助巩固本周所学?"
|
||||
|
||||
### 5. 生成课评(约200字,基于具体信息)
|
||||
根据选择的风格组合内容:
|
||||
- 开场白(30字)+ 优点(60字)+ 建议(60字)+ 结束语(50字)
|
||||
- **CSP班级专属**:自动整合OJ做题数据,包括完成情况、错误分布、思考模式分析,放在课评的单独板块
|
||||
- 姓名称呼规则:如果学生姓名是三字姓名,正文中默认去掉姓氏,只保留后两个字称呼,例如"陈圆振"写作"圆振","王晨语"写作"晨语",让语气更亲切。
|
||||
|
||||
### 6. 保存课评(按课次顺序追加)
|
||||
保存规则与「模式一」第3节相同:将新课评按课次顺序追加到个人汇总文件末尾,原有条目编号保持不变。
|
||||
|
||||
### 7. 更新出勤登记(自动)
|
||||
保存课评后,自动在出勤登记文件中记录本次出勤:
|
||||
|
||||
**出勤登记文件路径**:
|
||||
`.claude/memory/class/[班级]/[姓名]/feedback/出勤登记-2026春季.md`
|
||||
|
||||
**记录格式**:
|
||||
```
|
||||
| 日期 | 课程 | 课次 | 状态 | 备注 |
|
||||
| 2026-04-06 | AI大作家下 | 第5课 | ✅ 出勤 | |
|
||||
```
|
||||
|
||||
**操作步骤**:
|
||||
1. 检查出勤登记文件是否存在,不存在则从模板创建
|
||||
2. 查找日期列,如果已有今日记录则更新,否则在表格末尾添加新行
|
||||
3. 状态标记为"✅ 出勤"
|
||||
4. 备注栏留空
|
||||
---
|
||||
### 📋 生成后确认流程(必须遵守)
|
||||
1. 一批课评全部生成后,我会先把所有课评展示给你,不保存
|
||||
2. 等待你确认没问题后,再执行保存操作
|
||||
3. 如果你需要修改,我会根据你的要求修改后再次给你确认,直到你满意再保存
|
||||
|
||||
---
|
||||
|
||||
## 🎨 学生类型速查
|
||||
|
||||
| 观察点 | 鼓励型学生 | 激励型学生 |
|
||||
|--------|------------|------------|
|
||||
| **语言特征** | "我不会"、"对不对"、"好难" | "我会了"、"太简单"、"够用了" |
|
||||
| **课堂表现** | 专注但沉默、需要确认、害怕出错 | 反应快、爱抢答、满足现状 |
|
||||
| **作品完成** | 慢但认真、反复确认 | 快但粗糙、不愿优化 |
|
||||
| **提问方式** | 被动等待老师发现 | 主动但缺乏深度 |
|
||||
|
||||
## 💡 生成技巧
|
||||
|
||||
### AI03班 - 温暖鼓励型
|
||||
## 🎨 各班级风格规范(自动匹配)
|
||||
### AICODE03班 - 温暖鼓励型
|
||||
- 多用"很棒"、"特别棒"、"超棒"和波浪号"~"
|
||||
- 描述具体行为:"一字一字打字"、"和AI聊了一节课"
|
||||
- 温和建议用"要是...就更好啦~"
|
||||
@@ -468,39 +104,40 @@ python scripts/update_feedback_with_oj.py \
|
||||
- 期望要求:"希望多思考"、"理解为什么这么写,不只是抄完就好~"
|
||||
- 鼓励结尾:"加油呀!💪✨"
|
||||
|
||||
#### CSP03班 OJ数据板块格式(必须包含)
|
||||
|
||||
课评正文后、鼓励结尾前,插入以下格式的OJ做题数据板块:
|
||||
#### CSP03班 OJ数据板块格式(自动生成)
|
||||
**OJ作业包定位说明**:
|
||||
- A包 = 课堂练习(**包含5道具体题目,必须全部列出**)
|
||||
- B包 = 必须完成的课后家庭作业(未完成会明确提醒家长督促)
|
||||
- C包 = 拓展训练(学有余力的同学可挑战)
|
||||
|
||||
```markdown
|
||||
## 【OJ做题数据】
|
||||
|
||||
**完成情况**: 2/3 (共5次提交)
|
||||
**A包(课堂练习)完成情况**: 4/5 (共8次提交)
|
||||
|
||||
| 题目 | 状态 | 提交次数 | 思考模式 | 错误类型 |
|
||||
|------|------|----------|----------|----------|
|
||||
| CSP03-XXA | ✅ 通过 | 1 | 一气呵成 | — |
|
||||
| CSP03-XXB | ✅ 通过 | 2 | 调试改进 | WA×1 |
|
||||
| CSP03-XXC | ❌ 未通过 | 2 | 遇到困难 | CE×1, WA×1 |
|
||||
| 题目 | 类型 | 状态 | 提交次数 | 思考模式 | 错误类型 |
|
||||
|------|------|------|----------|----------|----------|
|
||||
| CSP03-XXA1 | 基础题 | ✅ 通过 | 1 | 一气呵成 | — |
|
||||
| CSP03-XXA2 | 基础题 | ✅ 通过 | 1 | 一气呵成 | — |
|
||||
| CSP03-XXA3 | 基础题 | ✅ 通过 | 2 | 调试改进 | WA×1 |
|
||||
| CSP03-XXA4 | 提高题 | ✅ 通过 | 2 | 调试改进 | WA×1 |
|
||||
| CSP03-XXA5 | 提高题 | ❌ 未通过 | 2 | 遇到困难 | CE×1, WA×1 |
|
||||
|
||||
**📊 分析**: 完成2题,C题有尝试但尚未通过,建议课后继续完成。
|
||||
**错误分布**: 答案错误1次,编译错误1次。
|
||||
---
|
||||
| CSP03-XXB | 课后作业(必做) | ✅ 已完成 | 3 | 反复调试 | WA×2 |
|
||||
| CSP03-XXC | 拓展训练(选做) | ⬜ 未提交 | 0 | — | — |
|
||||
|
||||
**📊 分析**: A包5道题完成了4道,基础题全部掌握,提高题第5道考察的是边界条件处理,还需要加强;B包必做课后作业已完成,知识点巩固得不错;C包拓展题未提交,学有余力可以尝试挑战。
|
||||
**错误分布**: 编译错误1次,答案错误4次,主要是边界条件考虑不周全,建议课后多练类似题目。
|
||||
```
|
||||
|
||||
OJ数据板块中各字段直接从步骤3保存的分析JSON中提取:
|
||||
- `completion` → "完成情况"
|
||||
- `total_attempts` → "共X次提交"
|
||||
- 每题 `solved` → 状态(✅通过 / ❌未通过 / ⬜未提交)
|
||||
- 每题 `attempts` → 提交次数
|
||||
- 每题 `pattern` → 思考模式
|
||||
- 每题 `errors` → 错误类型(如 WA×2, CE×1)
|
||||
- `total_errors` → 错误分布总结
|
||||
|
||||
**思考模式描述联动**:
|
||||
- 如果学生有题目是"一气呵成",在课堂表现中提到"思路清晰,代码一次通过"
|
||||
- 如果"调试改进",提到"能够自己发现并修正问题,调试能力不错"
|
||||
- 如果"遇到困难",在期望部分温和提出"希望课后多练习XX类型题目"
|
||||
- 如果有未提交题目,建议"课后抽时间完成未提交的练习"
|
||||
**自动判断规则**:
|
||||
- ✅ A包所有5道题必须全部列出,不管是否完成,不能只显示1个A包
|
||||
- ✅ 如果B包未完成/未通过:明确标注"【重要提醒】B包是必须完成的课后家庭作业,麻烦家长督促孩子在本周内完成提交"
|
||||
- ✅ 如果B包已完成:表扬"课后作业完成及时,知识点巩固得不错"
|
||||
- ✅ 如果C包完成了:重点表扬"主动完成拓展训练,探索精神值得鼓励"
|
||||
- ✅ 如果C包未完成:不做硬性要求,只提"学有余力可以尝试挑战"
|
||||
- ✅ 对A包中未完成的题目,给出具体的知识点建议,帮助孩子针对性提高
|
||||
|
||||
### 体验课 - 家长信格式·转化导向型
|
||||
- 固定开头:"家长好,今天体验的是《...》课程" + 课程价值介绍
|
||||
@@ -509,27 +146,98 @@ OJ数据板块中各字段直接从步骤3保存的分析JSON中提取:
|
||||
- 自然引导报课:用期待和相信引导,不硬推销
|
||||
- 鼓励结尾:"期待在正式课堂上再次见到【姓名】!"
|
||||
|
||||
## ⏱️ 时间分配
|
||||
---
|
||||
|
||||
### 批量生成模式
|
||||
- 读取课程记录文档:2分钟
|
||||
- **CSP班级OJ数据拉取**:3分钟(运行Python脚本)
|
||||
- 按学生读取资料(可并行):10分钟
|
||||
- 逐一生成课评:20分钟
|
||||
- 保存到个人汇总:3分钟
|
||||
- 生成 output 周汇总文件:3分钟
|
||||
- 更新出勤登记:2分钟
|
||||
- **总计:约40-45分钟**
|
||||
## 💾 保存规则(你确认后自动执行)
|
||||
你确认课评没问题后,我会自动保存到多个位置,严格遵守课评规范V1.0要求:
|
||||
|
||||
### 单条生成模式
|
||||
- 准备阶段:5分钟
|
||||
- 资料读取:10分钟
|
||||
- 表现记录:5分钟
|
||||
- 生成撰写:15分钟
|
||||
- 保存归档:5分钟
|
||||
- **总计:40分钟**
|
||||
### 📌 命名规范(必须严格遵守)
|
||||
- **课程编号规则**:C++竞赛班统一用`CSP`,AI编程班统一用`AICODE`,不得使用`AI`、`C++`等缩写
|
||||
- **文件名规则**:`YYYYMMDD_课程编号-课次.md`(如`20260418_CSP05-07.md`、`20260330_AICODE03-02.md`)
|
||||
- **日期要求**:文件名中的`YYYYMMDD`必须与校宝`teaching_date`完全一致,不得使用编写/提交日期
|
||||
- **特殊状态文件**:
|
||||
- 请假:`YYYYMMDD_课程编号-课次(请假).md`
|
||||
- 补课:`YYYYMMDD_课程编号-课次(补课-去班级名).md`
|
||||
|
||||
## 📝 示例课评
|
||||
### 1. 保存到学生个人单次课评文件(必须,用于自动化统计)
|
||||
为每位学生生成单独的单次课评文件,这是课评完成率统计的依据:
|
||||
**路径**:`.claude/memory/class/[班级]/[姓名]/feedback/YYYYMMDD_课程编号-课次.md`
|
||||
|
||||
**格式**:
|
||||
```markdown
|
||||
# 课程名称:[课程名称]
|
||||
|
||||
**授课日期**: [YYYY-MM-DD]
|
||||
|
||||
**课评内容**:
|
||||
[生成的课评正文]
|
||||
|
||||
---
|
||||
**老师签名:橙子**
|
||||
```
|
||||
|
||||
### 2. 保存到学生个人课评汇总(按课次追加,可选)
|
||||
自动将新课评按课次顺序追加到学生的个人课评汇总文件末尾:
|
||||
**路径**:`.claude/memory/class/[班级]/[姓名]/feedback/课评汇总-2026春季.md`
|
||||
|
||||
**格式**:
|
||||
```markdown
|
||||
## 第[N]次课:[课程名称]
|
||||
**授课日期**:[YYYY-MM-DD]
|
||||
|
||||
**课评内容**:
|
||||
[生成的课评正文]
|
||||
|
||||
---
|
||||
```
|
||||
|
||||
### 3. 保存到统一周课评汇总(后写的放上面)
|
||||
同时保存到统一的课评汇总目录,同一周的课评放在同一个文件里,新生成的放在最顶部:
|
||||
**根目录**:`E:/cc/2code/ClassFeedback/output/课评汇总/`
|
||||
**文件名规则**:`202X年第X周课评汇总.md`(比如「2026年第18周课评汇总.md」)
|
||||
**排序规则**:最新生成的课评放在文件的最前面,旧的课评在后面,倒序排列
|
||||
**班级分组**:同一个班级的课评放在一起,按班级分组展示
|
||||
|
||||
### 4. 补课学生特殊处理(双向记录)
|
||||
如果是补课学生,需要生成两条记录:
|
||||
**1) 原班级记录**:在原班级学生的feedback目录下生成补课追踪文件
|
||||
- 文件名:`YYYYMMDD_原课程编号-课次(补课-去补课班级名).md`
|
||||
- 内容:简要说明去哪补课
|
||||
|
||||
**2) 补课班级记录**:在补课班级的`补课/[学生姓名]/feedback/`目录下生成正常课评文件
|
||||
- 文件名:`YYYYMMDD_补课课程编号-课次.md`
|
||||
- 内容开头注明:`(补课,来自 [原班级名])`,后续正常写课评
|
||||
|
||||
### 5. 班级总结保存(可选)
|
||||
如果需要生成班级总结,保存到班级的summaries目录:
|
||||
**路径**:`.claude/memory/class/[班级]/summaries/YYYYMMDD_课程编号-课次_班级反馈.md`
|
||||
**格式**:使用课评规范V1.0中的班级群发文案模板
|
||||
|
||||
### 6. 自动更新出勤登记
|
||||
自动在出勤登记表中添加本次出勤记录:
|
||||
**路径**:`.claude/memory/class/[班级]/[姓名]/feedback/出勤登记-2026春季.md`
|
||||
|
||||
**格式**:
|
||||
```
|
||||
| 日期 | 课程 | 课次 | 状态 | 备注 |
|
||||
|------|------|------|------|------|
|
||||
| 2026-XX-XX | [课程名称] | 第X课 | ✅ 出勤 | |
|
||||
```
|
||||
|
||||
### 7. 请假记录生成
|
||||
如果学生请假,生成专门的请假记录文件:
|
||||
**路径**:`.claude/memory/class/[班级]/[姓名]/feedback/YYYYMMDD_课程编号-课次(请假).md`
|
||||
**格式**:使用课评规范V1.0中的请假记录模板
|
||||
|
||||
### 保存完成后我会告诉你:
|
||||
✅ 已保存X条课评
|
||||
✅ 个人汇总已更新:X个学生的课评已追加
|
||||
✅ 周汇总已更新:[周数]周汇总文件已更新,新课评已放在最顶部
|
||||
✅ 出勤登记已更新:X条出勤记录已添加
|
||||
|
||||
---
|
||||
|
||||
## 📝 示例课评(参考)
|
||||
|
||||
**AIGC课程 - 鼓励型**
|
||||
> 李明今天虽然是第一次接触AI绘画,但我看到了你眼里的好奇,这就是最好的开始。你的描述很有画面感,"想要一个会眨眼的可爱猫咪",这就是好的Prompt。虽然操作还有点生疏,但老师注意到你一直在尝试,这份坚持比做对题目更珍贵。下次可以把想法先写在便签纸上,分点列出,跟AI沟通会更顺畅。记住,编程最大的门槛不是英文或数学,是敢于尝试的勇气,你已经有了。继续和你的"AI搭档"对话吧,它会越来越懂你的。
|
||||
@@ -546,15 +254,21 @@ OJ数据板块中各字段直接从步骤3保存的分析JSON中提取:
|
||||
>
|
||||
> ## 【OJ做题数据】
|
||||
>
|
||||
> **完成情况**: 2/3 (共5次提交)
|
||||
> **A包(课堂练习)完成情况**: 4/5 (共8次提交)
|
||||
>
|
||||
> | 题目 | 状态 | 提交次数 | 思考模式 | 错误类型 |
|
||||
> |------|------|----------|----------|----------|
|
||||
> | CSP03-07A | ✅ 通过 | 1 | 一气呵成 | — |
|
||||
> | CSP03-07B | ✅ 通过 | 2 | 调试改进 | WA×1 |
|
||||
> | CSP03-07C | ❌ 未通过 | 2 | 遇到困难 | CE×1, WA×1 |
|
||||
> | 题目 | 类型 | 状态 | 提交次数 | 思考模式 | 错误类型 |
|
||||
> |------|------|------|----------|----------|----------|
|
||||
> | CSP03-07A1 | 基础题 | ✅ 通过 | 1 | 一气呵成 | — |
|
||||
> | CSP03-07A2 | 基础题 | ✅ 通过 | 1 | 一气呵成 | — |
|
||||
> | CSP03-07A3 | 基础题 | ✅ 通过 | 2 | 调试改进 | WA×1 |
|
||||
> | CSP03-07A4 | 提高题 | ✅ 通过 | 2 | 调试改进 | WA×1 |
|
||||
> | CSP03-07A5 | 提高题 | ❌ 未通过 | 2 | 遇到困难 | CE×1, WA×1 |
|
||||
>
|
||||
> **📊 分析**: 完成2题,C题有尝试但尚未通过,建议课后继续完成。
|
||||
> **错误分布**: 答案错误2次,编译错误1次。
|
||||
> ---
|
||||
> | CSP03-07B | 课后作业(必做) | ✅ 已完成 | 3 | 反复调试 | WA×2 |
|
||||
> | CSP03-07C | 拓展训练(选做) | ⬜ 未提交 | 0 | — | — |
|
||||
>
|
||||
> A题一次通过说明课堂知识吸收得不错。B题虽然出了点小错但能自己调试改正,调试能力在进步。不过C题上卡住了,希望课后能抽时间继续思考C题,理解为什么编译出错、结果不对,而不是放着不管~加油呀!💪✨
|
||||
> **📊 分析**: A包5道题完成了4道,基础题全部掌握,提高题第5道考察的是字符串边界处理,还需要加强;B包必做课后作业已完成,知识点巩固得不错;C包拓展题未提交,学有余力可以尝试挑战。
|
||||
> **错误分布**: 编译错误1次,答案错误4次,主要是边界条件考虑不周全,建议课后多练类似题目。
|
||||
>
|
||||
> A包前4题完成得都不错,说明课堂知识点吸收得很好。第5题虽然没做出来但也尝试了2次,调试能力在进步。希望课后能抽时间把第5题搞明白,理解边界条件的处理方法,而不是放着不管~加油呀!💪✨
|
||||
|
||||
Reference in New Issue
Block a user