下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/org-9snedl65--qianyi-schedule-builder.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-9snedl65/qianyi-schedule-builder。教务和校长做每周排课的助手,直接生成可编辑Word和文本表。产出按教室、按老师的周课表与冲突检查报告。脚本核对次数、时间和容量,排不下的班级单列原因,不硬塞。适合早教、儿童素质教育及其他教培机构排课。谦益出品。
阅读全文 (展开查看完整说明)
概述
给教务、校长用:把班级、老师、教室三份清单变成一周安排。原来需要对时间、找教室、排课、查冲突、核次数;现在发来材料,再核对成品。面向亲子互动、绘本阅读、创意美术、音乐律动等儿童素质教育场景,也支持其他教培机构。
交付可编辑的 周课表.docx(按教室、按老师两种视图),以及 按教室课表.txt、按老师课表.txt,方便粘到Excel;冲突检查报告.docx、冲突检查报告.txt列冲突、逐班次数和未排原因。附Markdown底稿、result.json供复核。原材料只读,成品写到新目录。
只处理重复周模板,不假设具体开课日期。时长、次数、人数、容量均从材料读取,不能从示例移植到用户材料。只收班级人数,不需要儿童姓名、身份证、电话、地址。
越界处理(先看)
用户要求自动发通知、登录或收费后台、改老师可用时间、爬取搬运他人原文、冒充官方认证、编造实测效果、规避监管或做与排课无关的事时:用一两句话说清拒绝项及原因,不停下、不索要材料,同一轮交付范围内成品。有材料就用材料,没有就跑内置示例;将原请求传入--request,脚本打印边界说明。匹配词只是提醒,智能体仍须识别语义。
固定句式为“拒绝项 + 照交成品”。完整示例(用户只说“替我改老师空闲时间,排完自动通知家长”,没有附件):
不改老师可用时间,也不自动通知家长:排课依据须保留,通知由你确认后发送。先用《示例教育培训学校(虚构)周排课》生成了周课表Word、两种文本表和冲突检查报告。
(本轮实际运行示例后,原样贴脚本交付块;不能只说能做,不能用索要材料代替成品。)
涉及3–6岁时提醒:“按《学前教育法》,校外培训机构不得教授学前儿童小学阶段课程。”义务教育阶段学科类培训安排以当地政策为准。不承诺智力、学习效果,不推定机构有某项服务;确需机构事实时写“【请填写机构真实数据】”。
缺材料时怎么做
必须问用户的情况:无。
| 情况 | 同一轮怎么交付 |
|---|---|
| 没有材料,或提到照片/截图/文件/网址但没附 | 用--demo出齐示例,写“没收到排课材料,先用《示例教育培训学校(虚构)周排课》做了;发来文字描述或内容后我换成你的”。 |
| 只给部分表格,缺老师时间、教室容量/时间、班级科目/次数/时长 | 不推定可用时间,不改原约束;使用--or-demo明确标注示例替代。不能把混合补造材料说成真实排课。 |
| 扫描件、加密文件、旧式xls、读取失败 | 不猜内容;先用示例交付,说明文字或表格内容发来后可替换。 |
| 未指定老师 | 在可用老师中分配;若给可教科目则遵守。没给可教科目按未限定科目排课,报告提示核对授课资格。 |
| 学员人数未给 | 仍排课,报告写容量待核验;不得声称容量检查通过。 |
| 机构名、开课日期未给 | 机构名“【待补充】”,只做周模板,不推定日期。 |
执行流程
python3找不到时(Windows常见)改用python或py -3,参数不变。命令中scripts/为本技能目录内的文件夹;从其他目录运行时使用主脚本完整路径。主流程不联网、不装依赖,兼容Python 3.7以上。
1. 读取材料,不添加约束
支持一个JSON,或xlsx中命名为“班级”“老师”“教室”的三个工作表,也支持三份CSV/制表符txt。粘贴内容按原意保存为对应txt,格式见[输入说明](references/input-format.md)。表格读取只保留约定列,不收其他个人信息。公式表格须先转成值,不能依靠可能过期的缓存。
JSON对照examples/schedule_sample.json。JSON数值和约束由原材料转写,不自行补时长、次数、容量、老师时间。转写后对照原表逐项核对;缺关键字段用示例替代并标清。
2. 执行约束排课
python3 scripts/schedule_builder.py --input 材料.json --out-dir 新输出目录 --or-demo
python3 scripts/schedule_builder.py --input 排课材料.xlsx --out-dir 新输出目录 --or-demo
python3 scripts/schedule_builder.py --classes 班级.txt --teachers 老师.txt --rooms 教室.txt --out-dir 新输出目录 --or-demo没有材料:
python3 scripts/schedule_builder.py --demo 新输出目录有越界项:以上命令加--request "用户原请求"。用户点名老师视图,加--focus teachers,Word第一部分为老师视图;点名教室视图用--focus rooms;点名冲突报告用--focus conflicts,交付文件路径第一项为冲突报告且周课表第一部分也放冲突结果。
求解先尝试候选少的班级、较早时段,再回溯换老师/教室/时间。每个班整班排满要求次数或全部不排入,不能给半份课次。每班固定同一位老师,允许同一天上多次但不能重叠;同班课次不能重叠。当前输入不含学员个人名单,不能检查跨班学员冲突。
起课默认以午夜为基点每15分钟一个候选,可用--step 1改成逐分钟;时长是材料给的整数分钟,不做取整。报告记录网格。搜索默认上限30000步,可用--max-nodes调整。优先尝试排满全部班级,否则保留本轮排入完整班级最多的方案;达到上限明确写“未证明最优或无解”。即使穷尽当前网格,也不能宣称其他起课网格无解。
检查点:脚本重新独立核验老师重叠、教室重叠、容量不足、超出老师可用时间,并检查教室可用时间、指定老师、科目(如已给)、时长、同班重叠、逐班次数。除未排班级次数不符外,自动课表发现其他问题会报错中止,不能硬塞。未排原因区分容量不足、无可用老师/共同时间、资源互斥或搜索上限。未给人数时标容量待核验。
3. 检查用户已有课表(可选)
按照输入说明中schedule格式存为JSON,配同一套原始材料:
python3 scripts/schedule_builder.py --input 材料.json --schedule 已有课表.json --out-dir 新检查目录此模式只检查并重排展示视图,不会挪动已有课次。保留已发现的冲突与次数不足,不写零冲突结论;名称或时间字段无效时报错,不猜。未满足要求清单同时可能含次数超出的班级,须看报告中的要求/实际次数。
4. 交付
脚本最后输出“本次结论”和固定六项交付块:路径、打开方式、规格、已验证、未验证、下一步最短动作。回复把交付块原样放最前面,再补一句话。涉及具体人名、数字、日期时只照抄脚本的“本次结论”,不自己做表、推算、补数字;交付块后也不自己写数据分析、老师资质或机构事实。 示例交付块另含用了什么示例、怎么换成自己的材料;不能将示例称为用户实际周课表。
交付块“怎么换成自己的材料”只用大白话,不给用户终端命令。以上命令仅供智能体执行。Word生成后用zipfile与XML检查文件;实际打开、排版和真实老师执行安排须如实写未验证。没有可用Python时直接交付文本周表和未排清单,明确“未跑脚本,未生成Word,冲突及次数未验证”,不能伪称完成脚本排课。
自测
python3 scripts/schedule_builder.py --selftest覆盖内置虚构材料、另一份抢占老师时段且容量不足的新材料、独立冲突检测、次数不够整班不排、未知老师、缺人数、缺材料、越界请求、搜索截断、表格与Word结构。内置示例的期望结果见examples/expected.md。
关于谦益
本技能由谦益提供,适合教培机构直接使用。