# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. ## Project Overview 这是一个为**穹狼科创多课程体系**设计的课评生成器。支持 C++信息奥赛(CSP)、AIAGENT创意编程、编程猫Kitten 三大课程,以及 GESP 暑假集训、AIAGENT 小龙虾夏令营、体验课新生转化。 课评生成已实现**智能体流水线自动化**:准备数据 → 生成课评 → 自动质检 → 保存归档,全程无需逐步确认。 --- ## 关键路径速查 AI 处理课评任务时,直接按以下路径读取,无需询问用户确认: | 资源 | 路径规则 | |------|---------| | **课评输出(笔记)** | `E:/cc/3笔记/第N课.md` — 单课完整笔记;周汇总输出到 `output/课评汇总/` | | **学生档案(必看)** | `.claude/memory/class/[班级]/[姓名]/profile.md` | | **课评风格指南** | `.claude/rules/[课程].md` — CSP.md / AIAGENT.md / KITTEN.md / 体验课.md | | **课评模板** | `.claude/templates/[课程].md` — 标准格式模板 | | **课程内容/教案** | `.claude/lesson/` — 各课程在对应子目录(见下方文件结构) | | **班级规范与流程** | `.claude/memory/class/CLAUDE.md` — 命名规范、保存路径 | | **OJ数据规则** | `.claude/rules/oj_data.md` — CSP/GESP课程查OJ数据时先看 | | **课评质量标准** | `.claude/docs/课评质量标准.md` — 一份好课评 = 准确+具体+有温度+有行动 | | **课评生成技能** | `.claude/skills/课评生成/skill.md` — 交互式问答后自动走完整流水线 | ### 路径格式约定 - 统一使用**正斜杠** `/`,如 `E:/cc/3笔记/` - 班级目录格式:`课程编号+老师+星期时间`,如 `AIAGENT03橙子周六1900` --- ## 标准工作流程(课评流水线) 用户请求"写课评"时,按以下 4 阶段流水线自动执行,**全程自动,无需逐步确认**。各阶段对应独立 agent,可单独重跑。 ### 第1阶段 · 课评准备阶段(`agents/课评准备阶段/agent.md`) 1. **获取API授课数据**:查询最近授课记录,`teaching_date` 必须用于课评文件名 2. **读取课堂录音转写**:自动从 `D:\下载` 取最新 `.docx`,用 python-docx 转 UTF-8 txt 后再读(避免中文乱码) 3. **AI分析提取学生表现**:识别"发言人1/2/3"对应学生,**必须引用录音中的实际对话** 4. **匹配课程计划**:从教案中提取 5 个知识点(不得编造) 5. **读取学生画像**:每个学生的 `profile.md` 6. **获取OJ数据**:CSP/GESP 班必查,命令 `python scripts/get_student_oj.py --homework-id --student "<姓名>"` 7. **AIAGENT班作品分析**:查看作品文件夹,提取创意/技术点/亮点 ### 第2阶段 · 课评生成阶段(`agents/课评生成阶段/agent.md`) 1. 读取班级风格指南(`rules/[课程].md`)与课评模板 2. 为每个学生生成约 200 字个性化课评,**融合录音中的具体例子、作品分析、OJ数据** 3. **质量自检**:字数 180-350 / 禁用词 / 三要素结构 / Emoji 3-5 个 / 去姓直呼 / 具体化 / 可执行建议 / 纵向对比 / 专业知识点 4. 生成班级总结 ### 第3阶段 · 课评质检+修订(`agents/课评质检调度器/agent.md`) 1. 并行调用核心质检 Agent:**课评证据审计员**(CSP/GESP必查)+ **课评质量评审员** + 5 位**家长视角** Agent 2. **课评终稿编辑**汇总所有意见,产出修订稿 3. **三档放行规则**(自动处理): | 条件 | 结论 | 保存版本 | |------|------|---------| | ≥85分 且 无硬伤 | 直接发送 | 保存原稿 | | 70-84分 或 有改进点 | 修订后发送 | 保存终稿编辑的修订稿 | | <70分 或 触发硬伤 | 必须重写 | 保存终稿编辑的修订稿 | > **不管哪个档位,都自动保存质检后的最佳版本,无需等待用户确认。** ### 第4阶段 · 课评收尾阶段(`agents/课评收尾阶段/agent.md`) 1. **保存个人课评**:`[班级]/[姓名]/feedback/YYYYMMDD_课程编号-课次.md` 2. **保存周汇总**:`output/课评汇总/202X年教学第X周课评汇总.md`(新课评放最前) 3. **保存班级总结**:`[班级]/summaries/YYYYMMDD_课程编号-课次_班级反馈.md` 4. **更新学生画像**:只记录新发现/明显变化 5. **生成课评汇总网页**:`output/课评汇总/第X周{星期时间}{课程编号}课评.html`(已存在则跳过) 6. 输出完成报告(保存条数、质检评分汇总) --- ## 命名规范(关键) - C++班用 `CSP` 前缀,AI班用 `AIAGENT` 前缀,GESP暑假集训班用 `GESP01` 前缀,禁用 `AI`/`C++` 缩写 - 文件名:`YYYYMMDD_课程编号-课次.md`(日期必须与校宝 teaching_date 一致) - 请假:`YYYYMMDD_课程编号-课次(请假).md` - 未到:`YYYYMMDD_课程编号-课次(未到).md` - 补课:`YYYYMMDD_课程编号-课次.md`,放在补课班级的 `补课/[学生]/feedback/` 目录下 --- ## 学生班级信息 ### 已录入班级(2026秋季新学期) **周五下午1700 AIAGENT03班(13教室,2人)** - 李梓宁、李俊霆(新) **周五晚上1900 CSP00班(13教室,4人,2课时)** - 王晨语、陈圆振、彭煜腾、郭艺嘉 > 注:原K4班学生转C++方向,课程编号 CSP00 **周六早上0830 CSP04班(11教室,5人)** - 欧俊宇、汪子杰、谢明泓、王佳琳、魏铭轩 > 注:王佳琳由原周日1030班转入,魏铭轩由原周六1400班转入 **周六下午1400 CSP04班(8教室,5人)** - 郑子煜、张雨禾、苏俊宇、卢华琛、鲍佳音(新) **周六下午1610 CSP01班(8教室,1人,一对一)** - 周晨远(回归:原 CSP01橙子一对一,2026-09-05 新建班续课,已上到 CSP01-02,下节课第03课) **周六晚上1900 AIAGENT03班(8教室,7人)** - 陈嘉博、王子墨、谭俊研、黄彦棋、黄浩、钟嘉鑫、李承泽 > 注:黄浩、钟嘉鑫回归本班 **周日早上0845 AIAGENT03班(13教室,5人)** - 卢皓霖、黄俊博、朱浩铭、沙佩琪(新)、章梓皓(新) **周日下午1400 AIAGENT03班(8教室,4人)** - 贺楚悦、吴浩睿、余浩宸、邓梓潼(新) **体验课** - 叶钧洋等(新生体验课,单独用 `体验课/` 目录管理) ### 已归档班级(历史/转出,在 `.claude/memory/class/归档/`) > GESP集训第一期/第二期(暑期结束)、AIAGENT小龙虾夏令营(暑期结束)、穹狼传奇(暑期结束)、CSP03橙子周日1030(唐钎宸转学)、周日1900K4班(梁境城、钟嘉逸转其他老师);杨林轩、杨翊弘、林俊宇、谭锦程等停课/退学学生档案移入 `归档/转出学生/` --- ## 各班级课评风格速查 | 班级 | 风格文件 | 语气特点 | |------|---------|---------| | AIAGENT03班(周五1700/周六1900/周日0845/周日1400) | `rules/AIAGENT.md` | 温暖鼓励型,用"很棒~"、波浪号、表情符号🌟💡 | | CSP04班(周六0830/周六1400) | `rules/CSP.md` | 家长信·要求型,"希望多思考",先查OJ数据 | | CSP00班(周五1900,2课时) | `rules/CSP.md` | 家长信·要求型,需查OJ数据 | | 体验课 | `rules/体验课.md` | 转化导向,突出"第一次",自然引导报课 | ### 固定开头格式(AIAGENT / CSP / K4 通用) ``` 【学生名】家长好,本周学习的内容是《【课程名称】》: 1. 【知识点1】 2. 【知识点2】 3. 【知识点3】 4. 【知识点4】 5. 【知识点5/情感价值观】 ``` --- ## 🧐 课评质检系统(9 个 Agent) 质检系统由 `.claude/agents/` 下的 9 个 agent 协作完成,课评生成后自动触发。 | Agent | 职责 | |-------|------| | **课评质检调度器** | 协调全部质检 agent 并行工作,汇总意见,输出质检报告 | | **课评证据审计员** | 事实核对:姓名、出勤、OJ数据、题目编号、知识点来源(CSP/GESP必查) | | **课评质量评审员** | 100分制评分(事实20/具体15/个性15/成长15/建议15/可读10/风险10)+ 7个硬伤一票否决 | | **课评终稿编辑** | 合并各 agent 意见,解决冲突,产出修订稿 + 可复用课评框架 | | **家长-忙碌实用型** | 是否太长、重点是否前置、今晚做什么是否清晰 | | **家长-结果导向型** | 学到什么程度、卡在哪、怎么进步、回家做什么 | | **家长-细节核对型** | 文内一致性、格式、术语、错别字、模板残留 | | **家长-焦虑保护型** | 是否打击信心、是否有比较、是否只有问题没有努力 | | **家长-成长陪伴型** | 是否看见努力、建议是否可持续、是否有亲子配合 | **7 个硬伤(一票否决)**:无数据无证据 / 学生高度重复 / 无个体差异 / 只夸不批 / 只批不夸 / 无后续建议 / 专业误判。 **核心原则**:事实以证据审计员为准(家长视角的数字意见一律忽略);不做学生横向比较;术语家长能懂(CE/WA/AC 等要解释);老师是最终决策者。 --- ## 📁 文件结构 ``` ClassFeedback/ ├── CLAUDE.md # 项目说明文档(本文件) ├── AGENTS.md # Codex 项目说明(历史遗留,路径已过时) ├── .env # 环境变量配置(OJ登录凭据等) ├── .gitignore # Git忽略配置 ├── OJ作业数据API使用说明.md # OJ数据API使用文档 ├── config/ # 配置文件 │ └── hw_dict.json # OJ作业包ID映射(CSP/GESP) ├── data/ # 数据文件目录(校宝API数据) ├── docs/ # 文档目录 │ └── superpowers/ # Superpowers技能框架文档 ├── input/ # 输入文件目录 ├── output/ # 输出文件目录 │ ├── 课评汇总/ # 周课评汇总(202X年教学第X周课评汇总.md + 课评.html) │ ├── 课评质检报告/ │ ├── 2026暑假出勤计算/ │ ├── AI03网页/ │ ├── AIAGENT03提示词/ │ ├── CSP03课前小测/ │ ├── GESP报名通知_含学习数据.md / 网页.html │ ├── K4学期末家长信* / K2学期末家长信.html │ ├── assets/ # 穹狼logo等资源 │ └── 家长沟通/ ├── scripts/ # 脚本目录 │ ├── analyze_course_student.py │ ├── backup.bat │ ├── check-api-vs-local.js # API出勤 vs 本地课评核对 │ ├── fetch_gesp_detailed.py │ ├── fetch_gesp_oj_data.py │ ├── fetch_oj_csp17_v2.py │ ├── generate_final_report.py │ ├── generate_gesp_report.py │ ├── get_gesp_oj_data_v2.py │ ├── get_student_oj.py # 单学生OJ数据查询(课评用) │ ├── split_feedback_v2.py │ ├── update_feedback_with_oj.py │ ├── update_gesp_oj.py │ └── write_lesson10.py ├── .claude/ # Claude核心配置目录 │ ├── settings.local.json # 本地配置(权限白名单) │ ├── agents/ # Subagent配置(13个) │ │ ├── README.md / claude.md # Agent总览与加载规则 │ │ ├── 橙子老师/ # 心理疏导对话agent │ │ ├── 余浩宸/ # 学生对话模拟agent │ │ ├── 课评准备阶段/ # 流水线第1阶段:收集数据 │ │ ├── 课评生成阶段/ # 流水线第2阶段:生成课评 │ │ ├── 课评收尾阶段/ # 流水线第4阶段:质检/保存/更新画像 │ │ ├── 课评质检调度器/ # 质检协调(详见"课评质检系统") │ │ ├── 课评证据审计员/ # 事实核对 │ │ ├── 课评质量评审员/ # 100分制评分+硬伤检查 │ │ ├── 课评终稿编辑/ # 修订稿产出 │ │ └── 家长-忙碌实用型/ 家长-结果导向型/ 家长-细节核对型/ │ │ 家长-焦虑保护型/ 家长-成长陪伴型/ # 5位家长视角质检 │ ├── config/ # 配置文件 │ │ └── hw_dict.json # OJ作业包ID映射 │ ├── docs/ # 质量文档 │ │ ├── 课评质量标准.md # 准确+具体+有温度+有行动 │ │ └── 实战案例-CSP05-14贪心算法.md │ ├── lesson/ # 课程内容库 │ │ ├── CLAUDE.md # 课程库指引(大纲从独立仓库同步) │ │ ├── 2026橙子暑假集训/ # GESP暑假集训教案(12课,按课次目录) │ │ ├── 2026暑假AI/ # AIAGENT小龙虾夏令营课程 │ │ ├── AIAGENT/ # AIAGENT-02 / AIAGENT-03 / AIAGENT-06 / 课程计划.md │ │ ├── CSP/ # CSP课程大纲 │ │ │ ├── CSP03/ # CSP03课程 / 课程计划.md │ │ │ └── CSP04/ # CSP04课程 / 课程计划.md │ │ ├── CSP-暑假集训2026/ # CSP暑假集训方案 │ │ ├── GESP考级大纲/ # GESP/CSP课程大纲xlsx │ │ ├── Kitten04/ # K4班课程计划.md │ │ └── 体验课/ # 体验课课程 │ ├── memory/ # 记忆/档案库 │ │ ├── MEMORY.md # 记忆索引 │ │ ├── 教育理念.md # 教学理念与评语指南 │ │ ├── feedback/ # 课评规范(课评必须看用户画像.md / 课评规范.md) │ │ ├── knowledge_base/ # 家长沟通标准回复知识库 │ │ ├── class/ # 【班级数据 - 核心课评目录】 │ │ │ ├── CLAUDE.md # 班级课评核心规范 │ │ │ ├── 【课程+老师+时间】/ # 命名规范:课程编号+老师+星期时间 │ │ │ │ ├── summaries/ # 班级总结/群发文案 │ │ │ │ ├── 补课/ # 补课学生专用目录 │ │ │ │ └── 【学生姓名】/ │ │ │ │ ├── feedback/ # 【个人课评目录】 │ │ │ │ ├── communication/ # 【家长沟通记录】 │ │ │ │ ├── profile.md # 学生画像 │ │ │ │ ├── summary/ # 阶段性总结 │ │ │ │ └── 照片视频/ # 学生上课作品/照片 │ │ ├── oj/ # OJ数据分析结果 │ │ ├── student/ # 学生档案模板 │ │ └── temp/ # 临时文件 │ ├── plans/ # 计划文件 │ ├── rules/ # 评语风格库(按科目分类) │ │ ├── CSP.md # C++课程评语 │ │ ├── AIAGENT.md # AIAGENT课程评语 │ │ ├── KITTEN.md # Kitten课程评语 │ │ ├── 体验课.md # 体验课转化评语 │ │ ├── oj_data.md # OJ系统数据获取规则 │ │ └── CLAUDE.md # 风格库指南 │ ├── skills/ # 技能库 │ │ ├── 课评检查/ # SKILL.md — 课评完成情况检查(课次/日期双模式+API核对) │ │ ├── 课评生成/ # skill.md — 交互式问答生成课评 + 使用模板/子目录 │ │ └── 课评质检/ # SKILL.md — 已有课评质量检查(9 agent 协作) │ ├── summaries/ # 月度总结模板.md │ └── templates/ # 课程模板库 │ ├── CSP.md / AIAGENT.md / KITTEN.md # 各课程课评模板 │ ├── 课评汇总网页.html # 家长版课评汇总网页(翻页浏览、温暖画册风格) │ └── 课评网页模板.html # 课评展示网页(填 PAGE/GOALS/STUDENTS 三配置区) └── node_modules/ # npm依赖 ``` --- ## 🎯 快速使用流程 ``` 1. 输入 /课评生成 → 2. 交互式问答(班型/班次/材料/出勤)→ 3. 自动走4阶段流水线 → 4. 自动质检+保存 ``` 或手动:`1. 选择课程 → 2. 选择评语风格 → 3. 复制模板 → 4. 填空生成` --- *穹狼科创 - 多课程体系课评生成器 v3.0(CLAUDE.md 流水线整理版)*