更新课评系统代码
This commit is contained in:
@@ -1,7 +1,24 @@
|
||||
# 工作流程规则:输入格式、批量生成、存储与特殊处理
|
||||
|
||||
> 合并文件:快捷输入格式 + 批量课评生成 + 新学生/补课处理 + 速记符号 + 快速入门
|
||||
> 版本:v4.0(课评规范同步版)| 更新日期:2026-05-14
|
||||
> 版本:v4.5(表单直连提交)| 更新日期:2026-05-20
|
||||
>
|
||||
> **v4.5 变更**:
|
||||
> - **表单直连提交**:网页表单填写完成后直接 POST 到本地服务器,数据自动保存为 JSON。AI 检测到信号文件后自动读取并生成课评,彻底取消「复制→粘贴回聊天」步骤
|
||||
> - 新增 `src/form_server.py` 本地表单服务器,支持动态注入班级/学生/课程数据
|
||||
> - 表单输出文件:`.claude/.tmp/evaluation_input_{班级}.json`
|
||||
> - 信号文件:`.claude/.tmp/EVALUATION_READY.txt`(AI 检测此文件触发课评生成)
|
||||
>
|
||||
> **v4.4 变更**:
|
||||
> - 课程进度自动推演:选择班级后根据**当周日期自动匹配课程主题**(基于学期周数映射表),无需参考上节课进度
|
||||
> - Form-First 模式:选择班级后默认自动创建网页表单,替代聊天文本输入框
|
||||
> - 表单直连提交:网页表单直接提交数据,无需复制粘贴回聊天
|
||||
> - 新增 `.claude/memory/project_memory.md` 项目记忆文件
|
||||
>
|
||||
> **v4.3 变更**:
|
||||
> - 新增 `/周几` 快速索引指令(`/周六`、`/周日`、`/周四` 等)
|
||||
> - 重写第14节交互式流程:B模式分开展示学生 + 独立输入区 + 快捷标记按钮
|
||||
> - 新增学生快捷标记操作(请假/体验/补课/出勤)
|
||||
>
|
||||
> **v4.0 变更**:
|
||||
> - 新增第10节「课评规范V1.0对照规则」:课程编号、目录结构、文件命名、日期匹配、完成率统计、三级查找
|
||||
@@ -49,7 +66,7 @@ AI生成 → 自动双轨保存 → 完成!
|
||||
**方式1:极简一句话**
|
||||
|
||||
```
|
||||
乔乔今天开始不敢碰,后来主动搭了三层,球卡住自己调高度,挺稳定的,比上周主动多了
|
||||
乔乔本节课开始不敢碰,后来主动搭了三层,球卡住自己调高度,挺稳定的,比上周主动多了
|
||||
```
|
||||
|
||||
**方式2:关键词速记**
|
||||
@@ -100,11 +117,11 @@ AI自动匹配班级学生名单,实时纠正谐音:
|
||||
|
||||
| 标记 | 含义 | 处理方式 | 保存位置 |
|
||||
|------|------|----------|---------|
|
||||
| 无标记 | 正式学生 | 双轨保存 | 班级汇总+个人档案 |
|
||||
| `[补课]` | 补课学生 | 自动检测档案位置,跨班级自动双轨保存 | 班级汇总+个人档案 |
|
||||
| `[体验]` | 体验课学生 | 仅班级汇总 | 班级汇总(标记体验) |
|
||||
| `[缺课]` | 今天缺席 | 记录缺席 | 班级汇总(标记缺课) |
|
||||
| `[new]` | 新学生首次 | 创建档案 | 班级汇总+个人档案 |
|
||||
| 无标记 | 正式学生 | 双轨保存 | 个人课评文件+班级汇总 |
|
||||
| `[补课]` | 补课学生 | 自动检测档案位置,跨班级自动双轨保存 | 个人课评文件(原班级侧追踪文件)+班级汇总 |
|
||||
| `[体验]` | 体验课学生 | 仅班级汇总 | 个人课评文件(补课目录)+班级汇总 |
|
||||
| `[缺课]` | 今天缺席 | 记录缺席 | 仅班级汇总 |
|
||||
| `[new]` | 新学生首次 | 创建档案 | 个人课评文件+班级汇总+学生画像 |
|
||||
|
||||
### 3.2 标记使用示例
|
||||
|
||||
@@ -134,7 +151,7 @@ AI自动匹配班级学生名单,实时纠正谐音:
|
||||
|
||||
```
|
||||
教师极简输入 → AI并行解析每个学生 → 预加载课程/档案 →
|
||||
并行生成个性化课评 → 质量检查 → 【自动双轨保存】→ 完成
|
||||
并行生成个性化课评 → 质量检查 → 【自动双轨保存】→ 【🗑️ 自动删除临时表单】→ 完成
|
||||
```
|
||||
|
||||
**预加载说明**:
|
||||
@@ -256,6 +273,168 @@ AI及自动化系统扫描 `feedback/` 目录时,通过文件名后缀判断
|
||||
| **班级总结** | `summaries/YYYYMMDD_课程编号-课次_班级反馈.md` | 班级群发文案 | 课后编写 |
|
||||
| **学生画像** | `profile.md`(固定名) | 学生基础信息 | 建档时创建 |
|
||||
|
||||
#### 班级总结文件完整模板
|
||||
|
||||
班级总结文件(`summaries/YYYYMMDD_课程编号-课次_班级反馈.md`)使用以下统一模板框架,所有班级总结一致:
|
||||
|
||||
##### 模板结构总览
|
||||
|
||||
```
|
||||
┌─ YAML Frontmatter(元数据)─────────────────────────┐
|
||||
│ class, week, course, theme, date │
|
||||
│ status: total/present/make_up/absent │
|
||||
│ students: name + status 列表 │
|
||||
├─ 标题 ────────────────────────────────────────────────┤
|
||||
│ # {班级} 第{X}周汇总 │
|
||||
├─ Quote行(课程信息)─────────────────────────────────┤
|
||||
│ > 课程代码 / 上课日期 / 课程主题 / 班级人数 │
|
||||
├─ 本周课评状态表 ──────────────────────────────────────┤
|
||||
│ | 学生 | 状态 | 类型 | 档案位置 | 操作 | │
|
||||
├─ 学生课评列表 ────────────────────────────────────────┤
|
||||
│ ## 学生课评列表 │
|
||||
│ │
|
||||
│ ### {学生名} - {类型} ✅/🔄 │
|
||||
│ **基本信息**(表现标签 + 情绪状态) │
|
||||
│ **课评内容**(代码块 ``` 包裹正文) │
|
||||
│ **教师备注**(生成时间 + 确认状态) │
|
||||
│ **教师备注**(状态 + 个人档案 + 亮点) │
|
||||
│ --- │
|
||||
│ │
|
||||
│ ### {请假学生} - ❌ 请假 │
|
||||
│ **状态**:请假,未生成课评 │
|
||||
├─ 本周班级整体情况 ────────────────────────────────────┤
|
||||
│ ## 本周班级整体情况 │
|
||||
│ ### 本周表现分布(表格) │
|
||||
│ ### 共性观察(整体表现/主题掌握/亮点/挑战) │
|
||||
│ ### 需关注学生 │
|
||||
│ ### 下周重点 │
|
||||
├─ 页脚 ────────────────────────────────────────────────┤
|
||||
│ *生成时间:{YYYY-MM-DD}* │
|
||||
└────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
##### 完整模板源码
|
||||
|
||||
```markdown
|
||||
---
|
||||
class: {班级目录名}
|
||||
week: {周数}
|
||||
course: {课程编号}
|
||||
theme: {课程主题}
|
||||
date: {YYYY-MM-DD}
|
||||
status:
|
||||
total: {总人数}
|
||||
present: {出勤人数}
|
||||
make_up: {补课人数}
|
||||
absent: {请假人数}
|
||||
students:
|
||||
- name: {学生名}
|
||||
status: present/absent/make_up
|
||||
- name: ...
|
||||
---
|
||||
|
||||
# {班级名称} 第{周数}周汇总
|
||||
|
||||
> 课程代码:{课程编号}
|
||||
> 上课日期:{YYYY-MM-DD}
|
||||
> 课程主题:{主题(知识点)}
|
||||
> 班级人数:{N}人(出勤{M}人,请假{K}人)
|
||||
|
||||
---
|
||||
|
||||
## 本周课评状态
|
||||
|
||||
| 学生 | 状态 | 类型 | 档案位置 | 操作 |
|
||||
|:-----|:----:|:----:|:---------|:----:|
|
||||
| {学生名} | ✅ 已保存 | 常规学生 | 本班 | [查看] |
|
||||
| {补课学生} | ✅ 已保存 | 补课学生 | 补课 | [查看] |
|
||||
| {请假学生} | ❌ 请假 | 常规学生 | 本班 | - |
|
||||
|
||||
---
|
||||
|
||||
## 学生课评列表
|
||||
|
||||
### {学生名} - 常规学生 ✅ / 补课学生 🔄
|
||||
|
||||
**基本信息**
|
||||
- 表现标签:{根据课评内容提炼标签,逗号分隔}
|
||||
- 情绪状态:{稳定/开心/积极/波动等}
|
||||
|
||||
**课评内容**
|
||||
|
||||
```
|
||||
{课评正文,使用代码块包裹}
|
||||
```
|
||||
|
||||
**教师备注**
|
||||
- 生成时间:{YYYY-MM-DD HH:MM}
|
||||
- 确认状态:☑️ 已确认
|
||||
|
||||
---
|
||||
|
||||
**教师备注**:
|
||||
- 状态:已保存
|
||||
- 个人档案:已同步
|
||||
- 亮点:{提炼亮点}
|
||||
|
||||
---
|
||||
|
||||
### {请假学生} - ❌ 请假
|
||||
|
||||
**状态**:请假(或停课),未生成课评
|
||||
|
||||
---
|
||||
|
||||
## 本周班级整体情况
|
||||
|
||||
### 本周表现分布
|
||||
|
||||
| 维度 | 优秀 | 良好 | 合格 | 需关注 |
|
||||
|:------|:---:|:---:|:---:|:----:|
|
||||
| 参与度 | {人数} | {人数} | {人数} | {人数} |
|
||||
| 知识点掌握 | {人数} | {人数} | {人数} | {人数} |
|
||||
| 情绪状态 | {人数} | {人数} | {人数} | {人数} |
|
||||
|
||||
### 共性观察
|
||||
1. **整体表现**:{总结}
|
||||
2. **主题掌握**:{总结}
|
||||
3. **亮点**:{总结}
|
||||
4. **挑战**:{总结}
|
||||
|
||||
### 需关注学生
|
||||
- {名单及原因}
|
||||
|
||||
### 下周重点
|
||||
1. 预告下周课程:{课程编号} {主题}
|
||||
2. 重点:{核心知识点}
|
||||
|
||||
---
|
||||
|
||||
*生成时间:{YYYY-MM-DD}*
|
||||
```
|
||||
|
||||
##### 各情况处理细则
|
||||
|
||||
| 情况 | 状态列 | 类型列 | 课评内容 |
|
||||
|:-----|:------:|:------:|:---------|
|
||||
| **常规出勤** | ✅ 已保存 | 常规学生 | 完整课评正文(代码块) |
|
||||
| **补课学生** | ✅ 已保存 | 补课学生 | 完整课评正文(代码块),基本信息如实填写 |
|
||||
| **请假** | ❌ 请假 | 常规学生 | `**状态**:请假,未生成课评` |
|
||||
| **停课** | 🚫 停课 | 停课学生 | `**状态**:已停课,不生成课评` |
|
||||
| **全部请假** | — | — | 仅保留课评状态表,学生课评列表写状态即可,共性观察处说明"本周全部请假/停课" |
|
||||
|
||||
##### 基本信息字段填写规则
|
||||
|
||||
表现标签:根据课评内容提炼3-5个关键词标签,如"积极搭建"、"圆周运动理解"、"创意改造"、"编程巩固"、"主动互动"等,体现学生本节课的核心表现亮点。
|
||||
|
||||
情绪状态:综合判断本节课的情绪基调,如"稳定"、"开心/稳定"、"积极/稳定"、"波动"等。
|
||||
|
||||
##### 代码块规范
|
||||
|
||||
每位有课评正文的学生,其课评文字必须用**代码块 ` ``` ` 包裹**(而非引用块 `>` 或纯文本),以便在 VS Code 预览时右上角显示**复制按钮**,方便一键复制。
|
||||
|
||||
请假/体验等无课评正文的学生,用 `**状态**:` 描述即可,无需代码块。
|
||||
|
||||
### 5.5 存储优先级
|
||||
|
||||
1. **第一优先级**:个人课评文件 `feedback/*.md`(必须存在,关系到完成率统计)
|
||||
@@ -283,7 +462,7 @@ Step 2(2分钟): 速记输入
|
||||
小红[补课]:专注完成 →
|
||||
|
||||
Step 3(2分钟): 查看并保存
|
||||
AI生成 → 查看质量报告 → 完成(已自动双轨保存)
|
||||
AI生成 → 查看质量报告 → 课评保存完成 → 🗑️ 自动清理表单 → 完成
|
||||
|
||||
完成!课评已自动双轨保存,无需确认。
|
||||
```
|
||||
@@ -308,10 +487,10 @@ AI生成 → 查看质量报告 → 完成(已自动双轨保存)
|
||||
```
|
||||
生成阶段 保存阶段 完成阶段
|
||||
───────── ───────── ─────────
|
||||
AI生成课评 → 【自动保存】 → 教师可随时查看/修改
|
||||
AI生成课评 → 【自动保存】 → 课评持久化保存
|
||||
↓ ↓ ↓
|
||||
质量检查通过 → feedback/YYYYMMDD_课程编号.md → 完成(无需确认)
|
||||
+ summaries/YYYYMMDD_课程编号_班级反馈.md
|
||||
质量检查通过 → feedback/YYYYMMDD_课程编号.md → 🗑️ 自动删除临时表单
|
||||
+ summaries/YYYYMMDD_课程编号_班级反馈.md → 完成(无需确认)
|
||||
```
|
||||
|
||||
**核心原则**:
|
||||
@@ -362,9 +541,9 @@ def on_evaluation_generated(student, evaluation, class_info):
|
||||
|:-----|:---------|:----------------|
|
||||
| **正式学生** | 有档案 | `.claude/memory/class/{班级}/{学生}/feedback/YYYYMMDD_课程编号-课次.md` |
|
||||
| **本班补课** | 有档案(本班) | `.claude/memory/class/{班级}/{学生}/feedback/YYYYMMDD_课程编号-课次.md` |
|
||||
| **跨班级补课** | 有档案(他班) | `.claude/memory/class/{补课班级}/补课/{学生}/feedback/YYYYMMDD_课程编号.md` |
|
||||
| **其他老师班级补课** | 有档案(其他老师) | `.claude/memory/class/{班级}/补课/{学生}/feedback/YYYYMMDD_课程编号.md` |
|
||||
| **体验/临时学生** | 无档案 | `.claude/memory/class/{班级}/补课/{学生}/feedback/YYYYMMDD_课程编号.md` |
|
||||
| **跨班级补课** | 有档案(他班) | `.claude/memory/class/{补课班级}/补课/{学生}/feedback/YYYYMMDD_课程编号-课次.md` |
|
||||
| **其他老师班级补课** | 有档案(其他老师) | `.claude/memory/class/{班级}/补课/{学生}/feedback/YYYYMMDD_课程编号-课次.md` |
|
||||
| **体验/临时学生** | 无档案 | `.claude/memory/class/{班级}/补课/{学生}/feedback/YYYYMMDD_课程编号-课次.md` |
|
||||
| **缺课学生** | 有档案 | ❌ 不生成课评 |
|
||||
|
||||
> **⚠️ 重要**:跨班级补课学生必须放在 `补课/` 目录下,否则自动化统计系统的三级查找可能无法识别。
|
||||
@@ -451,7 +630,7 @@ AI定位班级汇总中乔乔的课评
|
||||
**授课日期**: 2026-04-18
|
||||
|
||||
**课评内容**:
|
||||
学生今天课堂非常认真,三类作业全部完成。但课堂练习调试12次(2次运行错误、3次答案错误、2次编译错误),说明边界条件和代码规范性还需加强。建议每道题重新手写框架,减少复用旧代码,这样基础更扎实。
|
||||
学生本节课课堂非常认真,三类作业全部完成。但课堂练习调试12次(2次运行错误、3次答案错误、2次编译错误),说明边界条件和代码规范性还需加强。建议每道题重新手写框架,减少复用旧代码,这样基础更扎实。
|
||||
|
||||
课后整理埃氏筛法模板,记录今天的坑点。
|
||||
|
||||
@@ -473,12 +652,12 @@ AI定位班级汇总中乔乔的课评
|
||||
|
||||
#### 补课追踪模板(补课班级侧)
|
||||
|
||||
文件开头注明补课来源:
|
||||
文件开头可以注明补课来源(仅作元信息,正文不提及补课):
|
||||
|
||||
```markdown
|
||||
(补课,来自 AICODE06洋芋周日1400)
|
||||
|
||||
{正常课评内容}
|
||||
{正常课评内容,完全不提补课}
|
||||
```
|
||||
|
||||
### 7.8 失败处理机制
|
||||
@@ -599,6 +778,28 @@ students:
|
||||
| 重生成 | `重生成乔乔` | 重新生成乔乔的课评 |
|
||||
| 手动补存 | `补存` / `同步` | 手动触发待补存队列处理 |
|
||||
|
||||
### 7.12 临时文件自动清理规则
|
||||
|
||||
> 每次课评生成的输入数据文件(`.claude/.tmp/evaluation_input_*.json` 和 `EVALUATION_READY.txt` 信号文件)在课评保存完成后自动删除,避免临时数据堆积。
|
||||
|
||||
**清理时机**:课评全部保存完成后立即执行,无需用户确认
|
||||
|
||||
**清理流程**:
|
||||
```
|
||||
课评保存完成 → AI 删除 .claude/.tmp/ 下对应的 JSON 文件和信号文件 → 提示「🗑️ 已清理临时数据文件」
|
||||
```
|
||||
|
||||
**核心原则**:
|
||||
- ✅ **用完即删**:课评持久化到 `feedback/*.md` 后,临时 JSON 不再需要
|
||||
- ✅ **不丢失数据**:课评内容已保存在班级目录中,删除 JSON 不影响任何数据
|
||||
- ✅ **自动执行**:无需用户手动删除,AI 在完成阶段自动处理
|
||||
- ✅ **安全删除**:仅删除本次会话产生的临时 JSON 和信号文件
|
||||
|
||||
**例外情况**:
|
||||
- 表单 HTML 模板文件(`form_template.html`)不会被删除(是可复用的通用模板)
|
||||
- 服务器脚本(`form_server.py`)不会被删除
|
||||
- 仅删除 `.claude/.tmp/` 目录下的本次输入数据文件
|
||||
|
||||
---
|
||||
|
||||
## 八、出勤统计(嵌入班级汇总)
|
||||
@@ -787,3 +988,611 @@ students:
|
||||
- [ ] 补课学生必须有课评(放在补课班级的 `补课/学生名/feedback/` 下)
|
||||
- [ ] 编写班级总结(保存到 `summaries/YYYYMMDD_课程编号-课次_班级反馈.md`)
|
||||
- [ ] 课程编号使用标准格式(CSP/AICODE),不得使用缩写
|
||||
|
||||
---
|
||||
|
||||
## 十一、工作流程优化功能(v4.1 新增)
|
||||
|
||||
> **优化功能概述**:提升课评生成效率、数据安全性和规范一致性
|
||||
> **触发方式**:自动启用,配合 `/优化` 或相关指令使用
|
||||
> **配套技能**:keping-optimizer
|
||||
|
||||
### 11.1 三级备份机制(自动启用)
|
||||
|
||||
**功能**:防止数据丢失,提供完整恢复选项
|
||||
|
||||
**备份策略**:
|
||||
```
|
||||
第1级:直接保存到目标路径(主保存)
|
||||
└── 路径:.claude/memory/class/...
|
||||
|
||||
第2级:同时保存到 .backup/ 目录(时间戳备份)
|
||||
└── 路径:.claude/.backup/YYYYMMDD_HHMMSS_{学生}.md
|
||||
|
||||
第3级:写入前备份现有文件(防止覆盖)
|
||||
└── 路径:原文件路径 + .md.bak
|
||||
```
|
||||
|
||||
**恢复功能**:
|
||||
- 指令:`/恢复 {学生}` → 列出该学生的所有备份版本
|
||||
- 指令:`/恢复备份` → 恢复最近一次备份
|
||||
- 指令:`/清理备份` → 清理超过7天的旧备份
|
||||
|
||||
### 11.2 自动补全缺失信息(自动启用)
|
||||
|
||||
**功能**:教师只需输入核心表现,系统自动补全日期、课程编号、课次
|
||||
|
||||
**自动补全规则**:
|
||||
| 信息项 | 补全规则 | 默认值 |
|
||||
|--------|---------|--------|
|
||||
| **日期** | 取当天日期,格式YYYYMMDD | 20260516 |
|
||||
| **课程编号** | 根据班级名称自动匹配 | 如AICODE03-01 |
|
||||
| **课次** | 根据学期周数自动计算 | 第11周 = 课次11 |
|
||||
| **课程主题** | 根据课程代码+周数自动匹配 | 如"蜥蜴" |
|
||||
|
||||
**输入示例**:
|
||||
```
|
||||
极简输入:
|
||||
/课评 班级:发现世界-周四19点
|
||||
乔乔:gj5→zd3→zt ↑++
|
||||
|
||||
自动补全后:
|
||||
日期:20260516
|
||||
班级:发现世界-周四19点
|
||||
课程编号:DISC-011
|
||||
课次:第11课
|
||||
课程主题:蜥蜴
|
||||
```
|
||||
|
||||
### 11.3 路径自动创建(自动启用)
|
||||
|
||||
**功能**:自动创建不存在的目录结构,避免保存失败
|
||||
|
||||
**自动创建的目录结构**:
|
||||
```
|
||||
.claude/memory/class/
|
||||
├── {班级名称}/
|
||||
│ ├── summaries/ ← 自动创建
|
||||
│ ├── {学生姓名}/
|
||||
│ │ └── feedback/ ← 自动创建
|
||||
│ └── 补课/
|
||||
│ └── {学生姓名}/
|
||||
│ └── feedback/ ← 自动创建
|
||||
└── .backup/ ← 自动创建
|
||||
```
|
||||
|
||||
### 11.4 速记符号自动补全(输入时提示)
|
||||
|
||||
**功能**:输入速记符号时实时提示含义,Tab键自动补全
|
||||
|
||||
**速记符号速查表**:
|
||||
| 符号 | 含义 | 完整描述 |
|
||||
|------|------|---------|
|
||||
| `gj` | 观望 | gj5=观望5分钟 |
|
||||
| `zd` | 主动搭 | zd3=主动搭3层 |
|
||||
| `zt` | 自己调整 | 球卡住时自己调整高度 |
|
||||
| `wb` | 完成 | 独立完成搭建 |
|
||||
| `zx` | 专注 | zx15=专注15分钟 |
|
||||
| `sb` | 失败后调整 | sb2=失败2次后成功 |
|
||||
| `ts` | 探索 | ts5=探索5分钟 |
|
||||
| `cz` | 创造 | cz3=3种创意方案 |
|
||||
| `wt` | 提问 | wt3=提问3次 |
|
||||
| `hz` | 合作 | 合作完成 |
|
||||
| `fx` | 分享 | 分享想法/作品 |
|
||||
|
||||
**自动补全交互示例**:
|
||||
```
|
||||
教师输入:乔乔:gj
|
||||
系统提示:
|
||||
├─ gj3 → 观望3分钟
|
||||
├─ gj5 → 观望5分钟
|
||||
└─ gj10 → 观望10分钟
|
||||
教师按Tab键:→ gj5
|
||||
```
|
||||
|
||||
### 11.5 实时校验提醒(保存前检查)
|
||||
|
||||
**功能**:保存前自动检查规范,提前发现问题
|
||||
|
||||
**校验清单**:
|
||||
| 检查项 | 规范要求 |
|
||||
|--------|---------|
|
||||
| **课程编号** | CSP/AICODE前缀,不是C++/AI |
|
||||
| **日期格式** | YYYYMMDD格式 |
|
||||
| **目录结构** | 完整路径存在 |
|
||||
| **文件命名** | 符合规范要求 |
|
||||
| **课评正文** | 不提及"补课"等词 |
|
||||
| **字数范围** | 180-350字 |
|
||||
|
||||
**校验指令**:
|
||||
- `/检查` → 检查本周所有课评
|
||||
- `/检查 {班级}` → 检查指定班级课评
|
||||
|
||||
### 11.6 智能班级预加载(开始工作时)
|
||||
|
||||
**功能**:根据输入的星期几快速预加载对应班级,并展示每个班级的学生名单
|
||||
|
||||
**快捷指令**:
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| **`/周几`** | **按上课日快速索引(推荐)**,如 `/周六`、`/周日`、`/周四` |
|
||||
| `/今天` | 自动判断当天星期几并加载对应班级 |
|
||||
| `/本周` | 选择本周班级列表 |
|
||||
| `/模板 {班级}` | 加载班级学生名单模板 |
|
||||
|
||||
**/周几 输出格式示例**(以 /周六 为例,其他上课日同理):
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
📅 今天是 2026-05-16(周六)
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
班级 1:发现世界-周六09点(DISC)
|
||||
├─ 学生名单:乔乔、昊昊、小明、小红
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 2:Wedo创造世界-周六1030(CREATE)
|
||||
├─ 学生名单:小强、小芳、小华
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 3:AICODE03小Q周六1400(AICODE03)
|
||||
├─ 学生名单:李明、王芳、张伟、刘洋
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 4:Wedo创造世界-周六16点(CREATE)
|
||||
├─ 学生名单:赵磊、孙悦、周杰
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 5:发现世界-周六19点(DISC)
|
||||
├─ 学生名单:陈静、杨帆、黄欣
|
||||
└─ [选择此班级]
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
操作:点击 [选择此班级] 或直接输入班级名称
|
||||
```
|
||||
|
||||
### 11.7 批量处理优化
|
||||
|
||||
**并行生成+逐份实时保存**:
|
||||
```
|
||||
教师输入5个学生 → 系统并行生成
|
||||
→ 乔乔课评生成完成 → 立即保存 ✅
|
||||
→ 昊昊课评生成完成 → 立即保存 ✅
|
||||
→ 其他继续...
|
||||
```
|
||||
|
||||
**批量修改工具**:
|
||||
- `/批量修改 {查找}→{替换}` → 批量替换本周所有课评内容
|
||||
- `/批量添加 {内容}` → 批量在课评结尾添加内容
|
||||
|
||||
### 11.8 待修复列表功能
|
||||
|
||||
**位置**:`.claude/.tasks/fix-list-YYYYMMDD.md`
|
||||
|
||||
**查看与修复**:
|
||||
- 指令:`/修复` → 展示待修复列表,逐个处理或批量自动修复
|
||||
|
||||
---
|
||||
|
||||
## 十二、快捷指令完整列表
|
||||
|
||||
### 班级选择
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| **`/周几`** | **按上课日快速索引(推荐)**,如 `/周六`、`/周日`、`/周四` |
|
||||
| `/今天` | 自动判断当天星期几并加载对应班级 |
|
||||
| `/本周` | 选择本周班级列表 |
|
||||
| `/班级 {班级名}` | 手动选择指定班级 |
|
||||
|
||||
### 模式切换
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| `/交互式` | 启用交互式课评生成模式(默认,Form-First 网页表单) |
|
||||
| `/批量` | 启用批量输入模式 |
|
||||
|
||||
### 模板工具
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| `/模板 {班级}` | 加载班级学生名单模板 |
|
||||
| `/空模板` | 创建空模板 |
|
||||
|
||||
### 批量操作
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| `/批量修改 {查找}→{替换}` | 批量替换课评内容 |
|
||||
| `/批量添加 {内容}` | 批量在课评结尾添加内容 |
|
||||
|
||||
### 数据恢复
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| `/恢复 {学生}` | 恢复该学生的备份 |
|
||||
| `/恢复备份` | 恢复最近一次备份 |
|
||||
| `/清理备份` | 清理过期备份文件 |
|
||||
|
||||
### 校验检查
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| `/检查` | 检查本周课评是否符合规范 |
|
||||
| `/检查 {班级}` | 检查指定班级课评 |
|
||||
|
||||
### 保存与补存
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| `/补存` | 尝试重新保存失败的课评 |
|
||||
| `/学生 {姓名}` | 查看学生档案和历史课评 |
|
||||
|
||||
### 修复工具
|
||||
| 指令 | 功能 |
|
||||
|------|------|
|
||||
| `/修复` | 处理待修复列表中的项目 |
|
||||
|
||||
---
|
||||
|
||||
## 十三、高效课后完整工作流程示例
|
||||
|
||||
> 以下流程适用于所有上课日(周一~周日),以周六为例展示
|
||||
|
||||
### Step 1:智能预加载班级
|
||||
```
|
||||
教师:/周六(或 /今天)
|
||||
→ 显示周六所有班级 + 学生名单 + 当周课程主题:
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
📅 今天是 2026-05-16(周六,第11周)
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
班级 1:发现世界-周六09点(DISC)
|
||||
├─ 学生名单:乔乔、昊昊、小明、小红
|
||||
├─ 当周课程:DISC-011 蜥蜴 ✅
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 2:Wedo创造世界-周六1030(CREATE)
|
||||
├─ 学生名单:小强、小芳、小华
|
||||
├─ 当周课程:CREATE-011 推磨机器人 ✅
|
||||
└─ [选择此班级]
|
||||
|
||||
...
|
||||
```
|
||||
|
||||
### Step 2:选择班级 → 自动匹配当周课程 + 启动表单服务器
|
||||
```
|
||||
教师:1(或 发现世界-周六09点)
|
||||
→ 系统根据日期自动匹配当周课程主题 → 启动本地表单服务器
|
||||
|
||||
🖥️ 本地服务器已启动!
|
||||
👉 请打开浏览器:http://localhost:8088/form?class=发现世界-周六09点&week=11&course=DISC-011&theme=鳄鱼&date=2026-05-16
|
||||
(表单已预填班级、周数、课程、学生名单)
|
||||
|
||||
也可在聊天中直接输入(备选):
|
||||
乔乔:gj5→zd3→zt ↑++
|
||||
昊昊:慢热→zd3→反复调 →
|
||||
```
|
||||
|
||||
### Step 3:网页表单填写 + 直连提交
|
||||
```
|
||||
教师打开表单 →
|
||||
├─ 乔乔:勾选「出勤」→ 输入 gj5→zd3→zt ↑++
|
||||
├─ 昊昊:勾选「出勤」→ 输入 慢热→zd3→反复调 →
|
||||
├─ 小明:勾选「请假」
|
||||
├─ 🔄 补课学生:点「+添加临时学生」→ 输入姓名 → 勾选「补课」→ 输入表现
|
||||
└─ 点击「🚀 提交并保存」
|
||||
|
||||
→ 数据自动 POST 到本地服务器
|
||||
→ 服务器保存为 .claude/.tmp/evaluation_input_发现世界-周六09点.json
|
||||
→ 写入信号文件 .claude/.tmp/EVALUATION_READY.txt
|
||||
→ 表单显示「✅ 已保存 — 可关闭此页面」
|
||||
```
|
||||
|
||||
### Step 4:AI 自动检测 → 生成并双轨保存
|
||||
```
|
||||
→ AI 检测到 EVALUATION_READY.txt 信号文件
|
||||
→ 读取 JSON 数据 → 解析学生/状态/表现
|
||||
→ 生成乔乔课评 → 自动保存 ✅
|
||||
→ 生成昊昊课评 → 自动保存 ✅
|
||||
→ 小明标记为请假 → 记录到班级汇总
|
||||
```
|
||||
|
||||
### Step 5:实时校验提醒
|
||||
```
|
||||
✅ 乔乔:全部通过
|
||||
⚠️ 昊昊:课程编号不规范,建议改为DISC-011
|
||||
→ 教师确认修改 → 自动修复后保存
|
||||
```
|
||||
|
||||
### Step 6:检查待修复
|
||||
```
|
||||
教师:/修复
|
||||
→ 查看待修复列表,处理剩余项目
|
||||
```
|
||||
|
||||
### Step 7:完成!
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
✅ 全部完成!
|
||||
已保存学生:2人
|
||||
已备份文件:4份(主文件+备份)
|
||||
待修复项目:0项
|
||||
🗑️ 已自动清理临时表单文件
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 十四、交互式课评生成流程(v4.5 直连提交版)
|
||||
|
||||
> **核心理念**:通过 /周几 快速索引 → 启动本地表单服务器 → 浏览器填写直连提交 → AI 自动检测生成
|
||||
> **适用场景**:课后按班级处理,交互友好,高效批量,无需粘贴
|
||||
> **适用范围**:本流程适用于所有上课日(`/周一`~`/周日`),以下以 `/周六` 为例展示
|
||||
> **v4.5 优化**:表单直连提交 — 数据 POST 到本地服务器,AI 通过信号文件自动触发,彻底取消复制粘贴
|
||||
|
||||
### 完整流程
|
||||
|
||||
```
|
||||
Step 1: 启动 → 输入 /周几(如 /周六、/周四,按当天上课日快速索引)
|
||||
↓
|
||||
Step 2: 展示该时段班级列表(附带当周课程主题)
|
||||
↓
|
||||
Step 3: 选择班级 → 自动匹配当周课程 → 启动表单服务器
|
||||
↓
|
||||
Step 4: 打开浏览器表单 → 填写学生表现 → 点击「提交并保存」
|
||||
↓ (数据 POST 到本地服务器,保存为 JSON + 写入信号文件)
|
||||
Step 5: AI 检测信号文件 → 读取 JSON → 批量生成课评 → 双轨保存
|
||||
↓
|
||||
Step 6: 🗑️ 自动删除临时文件 → 完成
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Step 1: 启动 — 快速索引
|
||||
|
||||
**输入指令**(支持两种方式):
|
||||
|
||||
| 指令 | 适用场景 | 示例 |
|
||||
|:-----|:---------|:-----|
|
||||
| **`/周几`** | 按上课日快速查找(**推荐**) | `/周六`、`/周日`、`/周四` |
|
||||
| `/今天` | 自动判断当天是周几 | `/今天`(自动换算为当天对应周几) |
|
||||
|
||||
**工作日对照表**(系统自动根据班级目录匹配):
|
||||
|
||||
| 指令 | 匹配班级示例 |
|
||||
|:-----|:-------------|
|
||||
| `/周一`~`/周三` | 按需显示 |
|
||||
| `/周四` | 发现世界-周四19点 |
|
||||
| `/周五` | AICODE03小Q周五1900 |
|
||||
| `/周六` | 发现世界-周六09点、Wedo创造世界-周六1030、AICODE03小Q周六1400 等 |
|
||||
| `/周日` | 发明世界-周日14点、SPIKE02-周日1030、发现世界-周日下午16点 等 |
|
||||
|
||||
**系统响应**(以教师输入 `/周六` 为例):
|
||||
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
📅 周六(2026-05-16)的课程
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
班级 1:发现世界-周六09点(DISC)
|
||||
├─ 学生数:4人(乔乔、昊昊、小明、小红)
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 2:Wedo创造世界-周六1030(CREATE)
|
||||
├─ 学生数:3人(小强、小芳、小华)
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 3:AICODE03小Q周六1400(AICODE03)
|
||||
├─ 学生数:4人(李明、王芳、张伟、刘洋)
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 4:Wedo创造世界-周六16点(CREATE)
|
||||
├─ 学生数:3人(赵磊、孙悦、周杰)
|
||||
└─ [选择此班级]
|
||||
|
||||
班级 5:发现世界-周六19点(DISC)
|
||||
├─ 学生数:3人(陈静、杨帆、黄欣)
|
||||
└─ [选择此班级]
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
请回复班级序号或名称来选择班级(如:1 或 发现世界-周六09点)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Step 2: 选择班级 → 自动匹配当周课程 + 启动服务器
|
||||
|
||||
> ⚠️ **重要**:以下流程适用于所有上课日。选择任何班级后,系统均自动根据**当周日期匹配课程主题** + 启动本地表单服务器。
|
||||
|
||||
**教师输入**(任选一种):
|
||||
```
|
||||
1
|
||||
```
|
||||
或
|
||||
```
|
||||
发现世界-周六09点
|
||||
```
|
||||
|
||||
**系统响应** — 自动加载课程信息 + 匹配当周课程 + 启动服务器:
|
||||
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
✅ 已选择班级:发现世界-周六09点(DISC)
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
📚 课程信息:
|
||||
├─ 课程编号:DISC-011
|
||||
├─ 课程主题:鳄鱼(第11周自动匹配)
|
||||
├─ 核心知识点:嘴巴开合、铰链结构、咬合功能
|
||||
├─ 日期:20260516
|
||||
|
||||
👨👩👧👦 学生:乔乔、昊昊、小明、小红(共4人)
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
🖥️ 启动本地表单服务器...
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
👉 请打开浏览器填写表单:
|
||||
http://localhost:8088/form?class=发现世界-周六09点&week=11&course=DISC-011&theme=鳄鱼&date=2026-05-16
|
||||
|
||||
(表单已自动填入班级信息、学生名单和课程主题)
|
||||
|
||||
也可在聊天中直接输入文本(备选模式B):
|
||||
乔乔:gj5→zd3→zt ↑++
|
||||
昊昊:慢热→zd3→反复调 →
|
||||
...
|
||||
```
|
||||
|
||||
**课程自动匹配逻辑**:
|
||||
1. 根据当前日期计算学期周数(基于3月2日学期开始)
|
||||
2. 根据周数直接匹配课程代码和主题(参见 `15-semester-weeks.md` 映射表)
|
||||
3. **不参考上节课进度**,直接使用当周实际课程主题
|
||||
4. 仅当教师特别说明补课时,才手动调整课程主题
|
||||
|
||||
**特殊情况处理**:
|
||||
- 若当周为补课(教师明确说明),可手动选择补课主题
|
||||
- 若无特殊说明,一律使用当周标准课程主题
|
||||
|
||||
---
|
||||
|
||||
### Step 3: 网页表单填写(直连提交模式)
|
||||
|
||||
> 选择班级后系统自动启动本地服务器,表单通过 URL 参数传入班级/学生/课程信息。
|
||||
> 教师在浏览器中填写表现,点击「提交并保存」后数据直接 POST 到服务器。
|
||||
|
||||
**表单内容示例**(自动生成,含学生画像摘要):
|
||||
|
||||
```
|
||||
┌────────────────────────────────────────┐
|
||||
│ 📝 Wedo创造世界-周六1030 课评输入表 │
|
||||
│ CREATE-011 · 推磨机器人 · 2026-05-16 │
|
||||
├────────────────────────────────────────┤
|
||||
│ 📊 填写进度:████████░░ 3/6 人 │
|
||||
│ │
|
||||
│ ┌─ ① 梁家铭 🧒 ─────────────────┐ │
|
||||
│ │ 📋 需鼓励建立自信... │ │
|
||||
│ │ 状态:[✅出勤] [🚫请假] │ │
|
||||
│ │ 表现:______________________ │ │
|
||||
│ │ (速记: gj#观望/zd#搭#层/zt调整) │ │
|
||||
│ └────────────────────────────────┘ │
|
||||
│ │
|
||||
│ ┌─ ② 简思瑜 🧒 ─────────────────┐ │
|
||||
│ │ 📋 自信主动,结构搭建极坚固... │ │
|
||||
│ │ 状态:[✅出勤] [🚫请假] │ │
|
||||
│ │ 表现:______________________ │ │
|
||||
│ └────────────────────────────────┘ │
|
||||
│ ... │
|
||||
│ ┌─ + 添加临时学生 ──────────────┐ │
|
||||
│ │ 姓名:[____] 状态:[补课/体验] │ │
|
||||
│ └────────────────────────────────┘ │
|
||||
│ │
|
||||
│ [🚀 提交并保存] │
|
||||
└────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
**填写方式**(二选一):
|
||||
|
||||
| 方式 | 操作 | 适用场景 |
|
||||
|:----|:-----|:---------|
|
||||
| **A. 网页直连提交(推荐)** | 打开浏览器链接 → 填写 → 点击「提交并保存」→ 数据自动 POST 到服务器 | 常规使用 |
|
||||
| **B. 聊天文本输入** | 在聊天中直接输入多行文本 | 快速处理、数据量少 |
|
||||
|
||||
**方式A:网页直连提交流程**:
|
||||
```
|
||||
1. 打开系统提供的表单链接(URL 已包含班级/周数/课程/学生)
|
||||
2. 为每位学生选择状态(出勤/请假/补课/体验)
|
||||
3. 在文本框中填写表现(支持速记 + 自然语言混合)
|
||||
4. 点击「🚀 提交并保存」
|
||||
5. 看到「✅ 提交成功」提示 → 可关闭页面
|
||||
6. AI 自动检测信号文件 → 生成课评 → 双轨保存
|
||||
```
|
||||
|
||||
**方式B:聊天文本输入(备选)**:
|
||||
```
|
||||
乔乔:gj5→zd3→zt ↑++
|
||||
昊昊:慢热→zd3→反复调 →
|
||||
小明 体验
|
||||
小红:搭了3层,开心 ↑
|
||||
```
|
||||
|
||||
### Step 4: AI 自动检测信号 + 批量生成并保存
|
||||
|
||||
**触发方式**:表单提交后服务器写入 `.claude/.tmp/EVALUATION_READY.txt` 信号文件,AI 检测到后自动处理。
|
||||
|
||||
**系统执行**:
|
||||
```
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
🔔 检测到新提交的表单数据
|
||||
班级:发现世界-周六09点 | DISC-011 鳄鱼
|
||||
学生:4人(3人出勤,1人请假)
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
🚀 开始批量生成课评...
|
||||
|
||||
[1/3] 生成乔乔课评... ✅ 已保存
|
||||
[2/3] 生成昊昊课评... ✅ 已保存
|
||||
[3/3] 生成小红课评... ✅ 已保存
|
||||
📝 小明标记为请假,不生成课评
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
✅ 全部完成!
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
已保存:3人 | 请假:1人
|
||||
├─ 班级总结:summaries/20260516_DISC-011_班级反馈.md
|
||||
└─ 个人课评:乔乔/、昊昊/、小红/
|
||||
🗑️ 已清理临时信号文件
|
||||
|
||||
下一步:
|
||||
- 继续下一个班级 → 输入 /周几
|
||||
- 查看班级总结 → [查看总结]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 快捷操作速查
|
||||
|
||||
| 操作 | 输入格式 | 效果 |
|
||||
|:-----|:---------|:------|
|
||||
| **标记请假** | `{学生} 请假` | 标记缺课,不生成课评 |
|
||||
| **标记体验** | `{学生} 体验` | 体验标记,仅存班级汇总 |
|
||||
| **标记补课** | `{学生} 补课` | 补课标记,跨班级自动保存 |
|
||||
| **恢复出勤** | `{学生} 出勤` | 取消特殊标记,恢复默认出勤 |
|
||||
| **修改已填** | `修改{学生}:新内容` | 替换该学生已填表现 |
|
||||
| **添加临时学生** | `添加{姓名}` | 添加到列表末尾 |
|
||||
| **批量生成** | `全部生成` | 一次性生成所有已填课评 |
|
||||
| **查看汇总** | `查看汇总` | 查看当前已填写的所有学生 |
|
||||
|
||||
**标记使用示例**:
|
||||
```
|
||||
# 批量填写带标记
|
||||
乔乔:gj5→zd3→zt ↑++
|
||||
昊昊:慢热→zd3→反复调 →
|
||||
小明 体验
|
||||
小红 请假
|
||||
小华[补课]:专注完成,情绪稳定 ↑
|
||||
|
||||
# 修改已填表现
|
||||
修改乔乔:gj5→zd3↑↑
|
||||
|
||||
# 调整学生标记
|
||||
小明 出勤(恢复为正式学生)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 十五、工作流模式选择
|
||||
|
||||
### 两种模式对比
|
||||
|
||||
| 模式 | 特点 | 适用场景 |
|
||||
|------|------|---------|
|
||||
| **交互式模式** | `/周几` 快速索引 + Form-First 网页表单(含补课/体验区)+ 一键提交 | 课后按班级处理,高效友好 |
|
||||
| **批量输入模式** | 一次性输入所有学生 | 已有记录,速度优先 |
|
||||
|
||||
### 模式切换
|
||||
|
||||
```
|
||||
/交互式 → 启用交互式模式(默认)
|
||||
/批量 → 启用批量输入模式
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
*版本:v4.5(表单直连提交 — 取消复制粘贴,数据直通 AI)*
|
||||
*最后更新:2026-05-20*
|
||||
*优化技能:keping-optimizer*
|
||||
|
||||
Reference in New Issue
Block a user