Files
ClassFeedback/.claude/skills/keping-advanced/SKILL.md

526 lines
21 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: keping-advanced
description: 穹狼乐高编程高级课评生成Skill。当用户需要生成个性化课评、写课后反馈、创建学生评价时使用。根据学生画像、课程教案、历史课评、学期周数等多维度信息自动生成180-350字专业课评根据输入丰富度弹性调整。支持自动周数计算和主题关联。采用"生成即双轨保存"流程:课评生成后立即自动保存到班级周汇总和个人档案,无需教师确认。同时自动更新出勤统计。支持补课/体验学生的灵活处理可仅保存到班级周汇总。适用于2.5岁-小学四年级学生,支持幼儿积木、少儿编程、机器人竞赛等多种课程类型。触发词:/课评、/keping、/写课评、生成课评。
version: 3.1.0
author: 穹狼教学团队
---
# 高级课评生成 Skill
## 功能概述
本Skill根据学生画像、课程教案、历史表现等多维度信息自动生成个性化课后评价180-350字根据输入丰富度弹性调整
### 核心能力
- 读取并分析学生画像档案
- 匹配课程教案提取知识点
- 回顾近10次历史课评找规律
- 结合本节课实时表现
- 生成千人千面差异化课评
- 自动保存并更新成长记录
---
## 8步执行流程v3.1 生成即双轨保存模式 + 出勤统计自动更新)
```
┌─────────────────────────────────────────────────────────────────────────┐
│ Step 1: 读取学生用户画像 │
│ ├── 情况A学生档案存在 → 正常读取 │
│ └── 情况B学生档案不存在补课/体验学生)→ 标记类型 │
│ Step 2: 读取对应课程的课评规则 │
│ Step 3: 读取本节课教案内容(含周数计算) │
│ Step 4: 读取该学生近10次历史课评如存在
│ Step 5: 结合教师提供的本节课表现 │
│ Step 6: 生成180-350字个性化课评根据输入丰富度弹性调整
│ ↓ 【自动生成】 │
│ Step 7: 【自动双轨保存】 │
│ ├── 7.1 保存到班级周汇总:`memory/class-evaluation-summary/第X周/{班级}.md` │
│ ├── 7.2 保存到个人历史课评(如有档案): │
│ │ ├── 常规学生:`memory/student/{班级}/{学生}/历史课评记录.md` │
│ │ └── 补课学生:同时保存到补课班级汇总 + 原班级个人档案 │
│ └── 7.3 更新出勤统计:`memory/class-evaluation-summary/第X周/出勤统计.md` │
│ Step 8: 展示保存结果,教师可随时查看/修改 │
└─────────────────────────────────────────────────────────────────────────┘
```
> **重要变更**
> 1. **v3.1 生成即双轨保存**:课评生成后立即自动保存,无需教师确认
> 2. **自动更新出勤统计**:每次保存自动更新出勤统计文件
> 3. **全程可修改**:保存后教师可随时修改,修改自动同步到两个位置
### 详细流程说明
#### Step 1: 读取学生用户画像并确定称呼方式
**操作**
1. **检查学生档案是否存在**
- 检查路径:`memory/student/{班级}/{学生名}/`
- 检查文件:`用户画像.md``历史课评记录.md`
2. **情况A学生档案存在常规学生**
- 读取 `memory/student/{班级}/{学生名}/用户画像.md`
- 提取完整信息:气质类型、学习风格、历史表现等
- **标记类型**`student_type = "regular"`
3. **情况B学生档案不存在补课/体验学生)**
- **提醒教师**
```
⚠️ 检测到新学生:[学生姓名]
该学生暂无个人档案,可能是:
1. 补课学生(已有档案在其他班级)
2. 体验课学生(首次到店试听)
3. 新转入学生(尚未建立档案)
是否需要为该学生创建个人档案?
[是,创建档案] [否,仅保留在班级周汇总]
```
- **标记类型**`student_type = "guest"`(补课/体验)
- 使用通用模板生成课评
- **称呼方式**:使用输入姓名(不去除姓氏)
**姓名处理详细规则**
1. **谐音纠正(输入匹配)**
- **问题**:教师输入可能有谐音词(如"小鱼"→黄晓瑜、"君玲"→罗钧龄)
- **解决**:将输入姓名与班级学生名单进行拼音/字形相似度匹配
- **匹配优先级**
- 相似度>90%:自动纠正,不打扰
- 相似度70-90%:生成前提示确认
- 相似度<70%:要求重新输入
- **示例**
- 输入"小鱼" → 匹配"黄晓瑜"(小名/昵称关联)
- 输入"良心桥" → 纠正为"梁昕乔"
- 输入"中云浩" → 纠正为"钟昀昊"
2. **称呼方式确定(输出优先级)**
```
优先级1小名/昵称(画像中"nickname"字段,如"小鱼"
优先级2去姓称名双字名如"晓瑜""钧龄""思霖"
优先级3叠字称呼单字名如"昊昊""婷婷"
优先级4全名特殊要求如"黄晓瑜"
```
3. **称呼示例**
| 全名 | 小名/昵称 | 去姓称名 | 课评最终称呼 |
|------|----------|---------|-------------|
| 黄晓瑜 | 小鱼 | 晓瑜 | 小鱼(昵称优先)|
| 罗钧龄 | 无 | 钧龄 | 钧龄(去姓)|
| 简思霖 | 无 | 思霖 | 思霖(去姓)|
| 梁昕乔 | 乔乔 | 昕乔 | 乔乔(小名优先)|
| 钟昀昊 | 无 | 昀昊 | 昀昊(去姓)|
| 张昊 | 无 | 昊昊(叠字)| 昊昊(单字名叠字)|
**输出**`student_profile` 对象(含`display_name`课评用称呼)
---
#### Step 2: 读取对应课程的课评规则
**操作**
- 根据课程类型(幼儿/小学低/小学中)读取对应风格规则:
- 幼儿2.5-6岁`.claude/rules/10-style.md`第3.1节)
- 小学低年级6-8岁`.claude/rules/10-style.md`第3.2节)
- 小学中高年级8-10岁`.claude/rules/10-style.md`第3.3节)
- 提取:
- 字数要求弹性范围180-350字
- 必写模块结构
- 语言风格要求
- 禁用词汇
**输出**`style_rules` 对象
---
#### Step 3: 读取本节课教案内容(含周数计算)
**操作**
**3.1 周数自动计算(新增)**
- 读取学期周数规则:`.claude/rules/15-semester-weeks.md`(保持独立,未合并)
- **基准设定**2026年3月2日 = 第一周
- **计算公式**`周数 = Floor((当前日期 - 3月2日) / 7) + 1`
- **周数速查**2026春季学期
- 3月2日-8日 = 第1周
- 3月9日-15日 = 第2周
- 3月16日-22日 = 第3周
- 3月23日-29日 = 第4周
- **3月30日-4月5日 = 第5周当前周**
- 以此类推...
**3.2 课程代码自动匹配(新增)**
根据班级类型和周数,自动匹配课程代码:
| 班级类型 | 周数 | 自动匹配课程代码 | 主题 |
|---------|:---:|:---------------:|:-----|
| 发现世界 | 第5周 | DISC-005 | 天平秤 |
| SPIKE | 第5周 | SPIKE-005 | 杯子盖球 |
| AI03 | 第5周 | AI03-005 | 项目整合 |
**3.3 提取教案内容**
- 根据课程代码DISC-005, SPIKE-005定位教案
- 提取:
- 课程主题
- 核心知识点
- 教学目标
- 评价维度
- 适龄提示
**路径**`memory/lesson/{课程目录}/{课程代码}.md`
**输出**`lesson_content` 对象(含`week_number`周数信息)
---
#### Step 4: 读取该学生近10次历史课评
**操作**
- 读取 `memory/student/{班级}/{学生名}/历史课评记录.md`
- 提取最近10条记录
- 分析:
- 能力发展趋势
- 进步轨迹
- 反复出现的问题
- 优势稳定领域
- 与本次课可对比的点
**输出**`history_reviews` 数组 + `trend_analysis` 分析
---
#### Step 5: 结合教师提供的本节课表现
**操作**
- 解析教师输入的核心表现描述
- 提取关键行为词(如:主动、坚持、创新、求助等)
- 识别情绪状态
- 判断与常态的差异
**输入格式**
```
学生:小明 表现:观望5分钟→主动搭3层→自己调高度 情绪:稳定 对比:比上周主动
```
**输出**`current_performance` 对象
---
#### Step 6: 生成200-300字个性化课评
**核心逻辑**
1. **使用正确的称呼**
- 全程使用 `display_name`Step1确定的小名/去姓/叠字)
- 禁止使用全名(除非家长特殊要求)
2. **插入Emoji每段末尾**
- **幼儿版**2.5-6岁
- **模块1**(课程知识点):🔍
- **模块2**(掌握程度):✨ 或 ✋
- **模块3**(课程环节与目标达成):🎯 或 📋
- **模块4**(成长亮点):🌱 或 💪
- **模块5**(课后建议):🏠 或 🎮
- 总计10-15个emoji每段末尾1-2个
- **小学低年级版**6-8岁Kitten/SPIKE
- **模块1**(课程知识点):💡 或 📚
- **模块2**(掌握程度):✓ 或 ⚡
- **模块3**(课程环节与目标达成):🎯 或 ✅
- **模块4**(成长亮点):📈 或 💪
- **模块5**(课后建议):🏠 或 🔧
- 总计5个emoji每段末尾1个简洁专业
- **小学高年级版**8-10岁机器人/AI
- **模块1**(课程知识点):⚙️ 或 🤖
- **模块2**(掌握程度):📊 或 ⚡
- **模块3**(课程环节与目标达成):🎯 或 ✅
- **模块4**(成长亮点):📈 或 🚀
- **模块5**(课后建议):🏠 或 🔧
- 总计5个emoji每段末尾1个体现竞技感
3. **确定侧重点**(基于画像差异化):
- 活泼型学生 → 突出创意和参与热情
- 谨慎型学生 → 肯定尝试勇气
- 敏感型学生 → 强调支持和情绪管理
- 慢热型学生 → 认可渐入佳境的过程
4. **选择对比维度**(基于历史):
- 与上节课比:最近进步
- 与入学初比:长期成长
- 与班级常态比:独特表现
5. **首次上课/补课表述规则(重要)**
- **原则**:仅在教师输入中**明确写明**"第一次上课"、"新学生"等关键词时,才能在课评中提及相关内容
- **补课特殊情况**:若学生是**补课**(非首次到店),即使第一次上这节课,也**不要**写"第一次上课"、"第一次接触"等表述
- **区分方式**
- 教师写"新学生"/"第一次来"/"首次上课" → 可写"第一次上课"
- 教师写"补课"/"插班" → 不写"第一次上课",即使第一次上这节课
- **示例**
- ✅ 教师输入"余正逸是新学生,第一次来上课" → 课评可写"正逸这节课是第一次接触天平秤"
- ✅ 教师输入"余正逸是补课" → 课评不写"第一次",可写"正逸这节课表现..."
- ❌ 教师未提及但AI推断是补课 → 课评不得写"作为补课学生"、"第一次接触"等
6. **构建3段内容**(新段落结构):
**段落分配**
- **第1段**课程知识点30-40字- 介绍本节课核心知识/技能
- **第2段**课堂细节长段落100-130字- 包含掌握程度、课程环节表现、成长亮点等详细描述
- **第3段**课后建议30-40字- 家庭延伸活动建议
| 内容模块 | 字数 | 归属段落 |
|---------|:---:|:--------:|
| 课程知识点 | 30-40 | 第1段 |
| 掌握程度 | 30-40 | 第2段长段落|
| 课程环节与目标达成 | 40-50 | 第2段长段落|
| 成长亮点 | 40-50 | 第2段长段落|
| 课后建议 | 30-40 | 第3段 |
**注意**第2段为长段落整合掌握程度、课堂表现、成长亮点等内容用1-2个emoji自然分隔
7. **语言风格适配**
- 幼儿期温暖具体画面感丰富emoji
- 小学低段尊重专业平等对话简洁emoji
- 小学高段:成长视角,数据支撑,结构化
**输出**`evaluation_text`180-350字含emoji**等待教师确认后再执行Step7**
---
#### Step 7: 双轨保存课评(需教师确认后执行)
**触发条件**:教师确认课评内容无误后
**操作逻辑**
```
IF student_type == "regular"(常规学生):
├── 7.1 保存到班级周汇总
│ └── 路径:`memory/class-evaluation-summary/第X周/{班级}.md`
└── 7.2 保存到个人历史课评
└── 路径:`memory/student/{班级}/{学生}/历史课评记录.md`
ELSE IF student_type == "guest"(补课/体验学生):
└── 仅保存到班级周汇总
└── 路径:`memory/class-evaluation-summary/第X周/{班级}.md`
└── 标记:(补课/体验学生,无个人档案)
```
**班级周汇总文件结构**
```markdown
# 发现世界-周四19点 第7周汇总
## 学生课评列表
### 梁昕乔(常规学生)✓
[课评内容]
- 状态:已确认
- 个人档案:已同步
### 钟昀昊(常规学生)✓
[课评内容]
- 状态:已确认
- 个人档案:已同步
### 张小明(补课学生)⚠️
[课评内容]
- 状态:已确认
- 个人档案:未创建(补课/体验学生)
- 备注:如需创建档案,请回复「为张小明创建档案」
```
**输出**:保存确认 + 文件路径 + 学生类型标记
---
#### Step 8: 更新学生成长记录(常规学生执行,补课/体验学生跳过)
**触发条件**
- 仅对 `student_type = "regular"` 的学生执行
- 补课/体验学生(`student_type = "guest"`)跳过此步骤
**操作**
- 更新 `memory/student/{班级}/{学生名}/用户画像.md` 中的成长轨迹表
- 更新 `memory/student/{班级}/{学生名}/历史课评记录.md`
- 添加新记录:
- 时间:本次课日期
- 课程:课程代码
- 关键表现:一句话摘要
- 能力变化:+/- 标记
**补课/体验学生的后续处理**
如果教师后续决定为补课/体验学生创建档案:
1. 创建文件夹:`memory/student/{班级}/{学生名}/`
2. 创建通用用户画像
3. 将该学生的历史课评从班级周汇总迁移到个人档案
4. 标记为常规学生
**输出**:更新确认
---
## 输入格式规范
**详见**[`.claude/rules/20-workflow.md`](../../rules/20-workflow.md) — 包含极简输入、速记符号、批量输入、语音输入、补课处理等完整规范。
**快速参考**
```
日期4月2日
班级:发现世界-周四19点
乔乔:知道这个主题,话题多,搭建快
昊昊:活跃,认真,开心
```
---
## 输出格式(双版本)
- **学龄前版2.5-6岁**:表情增强型,参考 `.claude/rules/50-output-format-preschool.md`
- **小学版6-10岁**:结构化型,参考 `.claude/rules/51-output-format-elementary.md`
> 注50/51输出格式文件保留了独立的排版样式示例核心规则已合并至 `10-style.md`
格式根据学生年龄段自动选择。
---
## 依赖文件路径
```
# 学生画像
memory/student/{班级}/{学生名}/用户画像.md
# 课程教案
memory/lesson/01-发现世界-螺丝刀/{课程代码}.md
memory/lesson/08-SPIKE/{课程代码}.md
memory/lesson/09-AI03-AICODE/{课程代码}.md
# **学期周数与主题映射(新增)**
.claude/rules/15-semester-weeks.md
# **班级周汇总(新增 - 按周期分班级)**
memory/class-evaluation-summary/第X周/{班级}.md
# 学期周数(保持独立)
.claude/rules/15-semester-weeks.md
# 风格规则已合并至10-style.md
.claude/rules/10-style.md # 全年龄段风格规范
# 评价维度已合并至00-core.md
.claude/rules/00-core.md # 核心规则(含评价维度)
# 历史课评
memory/student/{班级}/{学生名}/历史课评记录.md
# 输出目录
memory/student/{班级}/{学生名}/课评/
memory/class-evaluation-summary/第X周/ # **新增**:按周期分班级的周汇总
```
---
## 千人千面实现
### 同一节课,不同学生的课评差异
**示例DISC-003 互锁结构**
| 学生 | 气质 | 侧重点 | 开头句式 |
|------|------|--------|---------|
| 梁昕乔 | 活泼型 | 快速启动、创意表现 | "昕乔今天一上课就..." |
| 钟昀昊 | 平和型+慢热 | 渐入佳境、坚持过程 | "昀昊今天用了点时间进入状态..." |
| 李怡瞳 | 平和型+初学 | 参与度、降低难度 | "怡瞳今天尝试了..." |
### 差异化策略
1. **开头差异化**
- 快速启动型:"一上课就..."
- 慢热型:"今天用了点时间..."
- 进步型:"和上周相比..."
- 突破型:"今天终于..."
2. **侧重点差异化**
- 创意优势学生 → 肯定创新设计
- 坚持性弱学生 → 突出不放弃
- 社交活跃学生 → 强调合作分享
- 敏感型学生 → 强调情绪管理
3. **建议差异化**
- 同一知识点,给不同家庭活动建议
---
## 质量检查清单
生成后自动检查(详见 `.claude/rules/00-core.md` 质量检查清单):
- [ ] 字数 180-350 字(根据输入丰富度弹性调整)
- [ ] 5个必写模块完整
- [ ] 学生称呼正确使用display_name
- [ ] 课程知识点准确
- [ ] Emoji在段落末尾
- [ ] 无周数显示
---
## 异常处理
| 场景 | 处理方式 |
|------|---------|
| 未找到学生画像 | 提示建立画像,使用通用模板继续 |
| 未找到课程教案 | 提示补充教案,或教师手动输入知识点 |
| 表现描述过于简单 | 提示补充关键行为细节 |
| 字数不足 | 提示补充具体事例 |
| **补课/体验学生** | 详见 [20-workflow.md](../../rules/20-workflow.md)第5-6节 |
> **补课/体验学生处理**、**跨班级补课自动保存**等详细规则,参见 [`.claude/rules/20-workflow.md`](../../rules/20-workflow.md)第5-6节和 [`CLAUDE.md`](../../../CLAUDE.md) 存储双轨制章节。
---
## 示例运行
### 示例1极简输入推荐- 自动计算周数和主题
#### 输入
```
/keping 日期4月2日 班级:发现世界-周四19点
乔乔:知道这个主题,话题多,搭建快,开心
昊昊:活跃,认真,开心
```
#### 执行过程
1. ✓ 解析日期4月2日 → 2026-04-02
2. ✓ **计算周数**(4月2日 - 3月2日) = 31天 → Floor(31/7) + 1 = **第5周**
3. ✓ **匹配课程**:发现世界 + 第5周 → **DISC-005 天平秤**
4. ✓ **提取主题**:杠杆原理、平衡判断、重量比较
5. ✓ 读取画像:乔乔(活泼型、快速启动、创意突出)、昊昊(平和型+慢热、渐入佳境)
6. ✓ 读取历史10次课评表现稳定
7. ✓ 解析表现:乔乔(快速启动+创意)、昊昊(渐入佳境+认真)
8. → **生成关联课评**:结合"天平秤"主题,强调杠杆原理探索
9. → 保存文件
10. → 更新记录
#### 输出课评(乔乔)
```
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【学生梁昕乔乔乔】DISC-005 天平秤 🔍
乔乔本周探索了"天平秤",学习了杠杆原理——两边的重量相等时天平就会平衡 ✨
这节课乔乔状态特别好,对天平主题很熟悉,老师一讲解就能跟上,话题很多,搭建速度也很快,展现出很好的学习热情。全程专注且开心,一上课就表现出浓厚兴趣,还主动和旁边的小朋友分享自己的想法,互动特别积极。和之前相比,乔乔在动手方面表现越来越稳定,能快速理解结构原理,这个进步值得肯定 💪✨
在家可以用衣架和绳子做一个简易天平,比较不同玩具的重量,巩固今天的平衡概念 🏠
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```
---
## 版本历史
| 版本 | 日期 | 更新内容 |
|-----|------|---------|
| **v2.5.0** | **2026-05-01** | **统一字数标准**将课评字数统一为弹性范围180-350字与系统规则保持一致 |
| v2.4.0 | 2026-04-16 | **补课/体验学生支持**:新增对补课、体验课学生的处理逻辑——无档案时提醒教师,可选择仅保存到班级周汇总,不强制创建个人档案 |
| v2.3.0 | 2026-04-15 | **双轨存储**:新增班级周汇总功能,确认后同时保存到 `class-evaluation-summary/`(班级视角)和 `student/`(个人视角),便于集中查看当周全班表现 |
| v2.2.0 | 2026-04-04 | **流程优化**:新增"确认后保存"模式Step 6生成后等待教师确认确认后再执行Step 7-8保存避免自动保存错误内容 |
| v2.1.0 | 2026-04-02 | **重大更新**支持学期周数自动计算基准3月2日课程主题自动匹配课评内容关联当周知识点Emoji段落末尾插入删除正文周数显示 |
| v2.0.0 | 2026-03-25 | 高级版本支持8步完整流程历史课评回顾千人千面差异化 |
| v1.0.0 | 2026-03-25 | 基础版本,单维度课评生成 |
---
*维护者:穹狼教学团队*
*最后更新2026-04-16*