排课 · 自动排课与课表生成(冲突体检)

SKILL教育学习
教育学习 未标注权限 许可证不明确
安装这个技能

排课一键做完:导入教学计划表(xlsx/csv,列名自动识别「班级/科目/教师/周课时/连堂/教室类型」),确定性约束求解器自动排课,硬约束全部满足——同一教师同一节次不撞课、同一班同一节次不撞课、同一教室同一节次不撞用、登记禁排的时段不排、要求连堂的课自动排成连续两节;软目标尽量满足——主科靠上午、体育音乐美术不排第一节、同科分散到不同天、教师少跑空堂、班级上午不留空。一次产出 ①课表 Excel:总课表(长表,可被任何系统读走)+每个班的班级课表+每位教师的教师课表+教室占用+课时核对(计划vs已排)+教师负荷(每日节数/单日是否超限)+冲突校验 ②排课体检 md:硬冲突逐条、没排进去的课及原因、软目标达成率。另有 check 子命令:读你手上已有的课表(长表或学校常见的矩阵排版),按 T1–T9 九类规则查出教师撞课、班级撞课、教室撞用、课时不符、禁排占用、连堂断裂、教师单日超课时、主科全排下午。纯本地运行,不联网、不上传、不需要任何 API Key。

一句话选型结论

按资料字段整理

排课 · 自动排课与课表生成(冲突体检)是教育学习类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类教育学习 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_1361808d/paike-biaosheng
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

教育学习
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_1361808d仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验2026-11-06上游最后核验时间 · 数据更新 2026-11-06
正文体量9.0 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
讲解知识点

按水平把知识点讲清楚。

出练习题

按章节生成练习与答案。

制定学习计划

按目标和时间排学习节奏。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在教育学习场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
排课 · 自动排课与课表生成(冲突体检)当前 未标注权限 未标注 未标注 未标注 有
食谱创建课堂课程 未标注权限 GitHub 仓库 25.5 万 Codex、Claude、Cursor 有
语言学习 联网访问 ClawHub 市场 23.6 万 OpenClaw 有
learning 效率 只读 ClawHub 市场 19.2 万 OpenClaw 有
学习习惯 未标注权限 ClawHub 市场 10.2 万 OpenClaw 有
日语家教 只读 ClawHub 市场 8.2 万 OpenClaw 有

SKILL.md 全文

9.0 KB
模型实际读到的说明书原文,来自技能仓库

排课 · 自动排课与课表生成

把「教务排课」这条活整条接管:教学计划表进去 → 约束求解器排出无冲突课表 → 班级课表 / 教师课表 / 教室占用 / 课时核对 + 冲突体检报告出来。

排课是个约束满足问题,不是写作文。所以这里没有一句"帮你智能生成",全是可验证的算法:每节课落在哪个格、为什么落在这个格、哪条硬约束卡住了,都能倒推出来。

它解决什么问题

  • 开学前教务主任对着 Excel 手工挪格子:教师撞课、实验室撞用、连堂排断了,改一处崩一片,两天排不完。
  • 排完还要再抄三遍:一份班级课表贴教室、一份教师课表发老师、一份总课表存档,抄错一处又得返工。
  • 网上讲排课的多是"让模型帮你想想怎么排":给不出成品课表,也保证不了硬约束;能出课表的系统又要部署、要账号。

快速开始

# 1) 先看效果:内置虚构示例(3 个班 / 7 位教师 / 两个实验室 / 一条教师禁排),跑完出全套文件
python3 pk.py demo

# 2) 生成填表模板(教学计划 / 教室 / 禁排 / 固定课 / 设置 五页)
python3 pk.py init --out 排课模板.xlsx

# 3) 按自己的教学计划排课
python3 pk.py plan --plan 排课模板.xlsx --out 排课输出

# 4) 作息不是 5 天 8 节?命令行覆盖
python3 pk.py plan --plan 计划.xlsx --periods 9 --am 4 --days 6 --teacher-day-max 5

# 5) 已经有课表了,只想查冲突
python3 pk.py check --schedule 现用课表.xlsx
python3 pk.py check --schedule 现用课表.xlsx --plan 教学计划.xlsx   # 顺带核对课时/禁排/连堂

# 6) 回归自检
python3 pk.py selftest

输入怎么填

教学计划页(必需):一行 = 一个班的一门课。

班级 科目 教师 周课时 连堂 教室类型
示例一中 高一(1)班 语文 教师甲 5
示例一中 高一(1)班 物理 教师乙 3 是 实验室
  • 列名自动认:班级/班、科目/学科/课程、教师/老师/任课教师、周课时/课时/节数、连堂/连排、教室类型/场地类型。
  • 「连堂」填「是/1/✓」表示这门课按 2 节连排(3 节 = 1 对连堂 + 1 单节)。
  • 「教室类型」留空 = 用本班教室,不参与教室占用;填了就必须在「教室」页有同类型教室(没给清单时会自动占位并提示)。

教室页(可选):教室 / 教室类型 / 容量。
禁排页(可选):对象类型(教师/班级)/ 名称 / 星期 / 节次 —— 教师进修、教研、外聘教师只来两天,都写这里。
固定课页(可选):班级 / 科目 / 教师 / 星期 / 节次 / 教室 —— 升旗、班会、合班课先钉死。固定课占用的是计划里本来就有的课时,不会额外加一节。
设置页(可选):days / periods / am_periods / teacher_day_max,命令行的同名参数优先级更高。

也可以直接给 csv(UTF-8 或 GBK 都认)。

排出来的东西

课表.xlsx

页 内容
总课表 长表(星期/节次/班级/科目/教师/教室),可直接导入其他系统,也可被 check 读回
每个班一页 班级课表矩阵(节次 × 星期,格子里科目/教师/教室),打印即用
每位教师一页 教师课表矩阵(格子里班级/科目),发给老师
课时核对 班级/科目/教师/计划课时/已排课时/差值/状态
教师负荷 周课时、单日最高、每日节数分布、是否超单日上限
教室占用 功能室逐节占用明细
冲突校验 T1–T9 逐条结果,全部通过时给一行汇总

排课体检.md:结论、每班课时缺口、冲突逐条、没排进去的课及原因、软目标达成率、九条规则口径。

判定规则(都是算死的)

硬约束(违反即冲突):

编号 规则
T1 教师撞课:同一教师同一节次被排到两个班
T2 班级撞课:同一班同一节次排了两门课
T3 教室撞用:同一教室同一节次被两个班占用
T5 课时与计划不符:某班某科实际节数 ≠ 计划节数(含计划外课程)
T6 禁排时段被占用

提醒(不影响下发,按需调整):

编号 规则
T7 连堂断裂:应连的成对数没凑够
T8 教师日课时超限:某教师单日节数超过上限
T9 主科全排下午:某班主科全部落在上午之后

软目标(代价函数,越低越好):主科靠上午(+26)、体育/音乐/美术不排第一节(+34)、同科不同天(+95)、教师集中到少数几天(+6)、班级上午不留空(每空一节 ×2)。平局用输入的哈希打破,同一份输入永远排出同一张课表。

排不进去怎么办

排不进去是真的无解,不是算错——报告里会写原因(教师可用时段不足 / 禁排与连堂约束过紧),并给出三档处理:放宽该教师禁排时段、给这门课加同科教师、把连堂改单节。脚本不会为了"看起来排完了"去违反硬约束。

不适用

  • 走班选课、分层教学(一人一课表)不做:这里的模型是"行政班固定课表"。
  • 跨校区/跨场地的路程时间不做:只按节次占位,不计算楼栋间转移。
  • 不生成监考表、课后服务排班、值班表。
  • 不做"最优解"承诺:这是启发式 + 局部搜索,硬约束保证满足,软目标尽力优化,不是运筹学意义上的全局最优。

隐私与边界

  • 全程本地:不联网、不上传、不调用任何 API,教学计划与课表不离开本机。
  • 示例数据全部为虚构(示例一中 / 教师甲 / 各科目教师),不含任何真实学校或个人信息。

测试与质量

  • selftest:39 项断言(星期/节次解析、10 组合法课表零误报、10 组必须命中逐条命中、求解结果零硬冲突、禁排与固定课生效、容量不足必报未排入、文件回读一致)。
  • tests/test_v1.py:35 项端到端(GBK csv、矩阵课表、长表、模板读回、成品文件回读、生成耗时 <3 秒)。
  • 实测:12 个班 / 420 节课 / 5 天 × 8 节,排课 + 出全套文件 0.25 秒,硬冲突 0。

常见问题

5 问
答案由本站依据条目字段整理
排课 · 自动排课与课表生成(冲突体检)怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_1361808d/paike-biaosheng。安装方式为未标注。装完刷新技能列表或重开客户端。

排课 · 自动排课与课表生成(冲突体检)支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

排课 · 自动排课与课表生成(冲突体检)权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

排课 · 自动排课与课表生成(冲突体检)收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

排课 · 自动排课与课表生成(冲突体检)用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 2026-11-06。