课程表冲突检测:用 Agent Skill 做选课时段冲突排查

前言

选课季常见情况是:必修课、选修、实验课分散在不同星期和节次,人工对照教务截图或 Excel 很容易漏掉「同一上午有两门课重叠半小时」这类问题。自己写脚本要处理时间区间、星期、单双周等格式,维护成本也不低。

下面介绍 SkillHub 社区 Skill「课程表冲突检测」(坐标 @user_70c2f807/course-schedule-conflict-detector)。它通过标准 SKILL.md 约束 Agent 的输入收集、逐对比对和报告输出,把课表冲突检测和可视化说明固化成可复用流程;它不接入教务系统,也不做学分或选课推荐。

这是什么

「课程表冲突检测」是面向教育场景的 Agent Skill,当前版本 1.0.1,来源为 community,发布者为 user_70c2f807,分类为 education。平台标签标明 requires_api_key=false,安装后无需额外 API Key。

Skill 在对话中于用户提到课程冲突、选课冲突、课表检测,或英文表述 course conflict、schedule conflict、class overlap 等场景下触发;明确不用于课程推荐、选课建议、学分计算。

官方页面与安装入口:

  • SkillHub:https://www.skillhub.cn/skills/user_70c2f807/course-schedule-conflict-detector
  • API 元数据地址:https://api.skillhub.cn/user_70c2f807/course-schedule-conflict-detector

(SkillHub 页面显示评分 100000,下载 990 次;与脚本抓取资料一致。)

核心功能

以下能力均来自 Skill 包内 SKILL.md 的说明:

  1. 冲突检测:对任意数量课程做时间区间逐对比较,识别同一星期、同一时段的重叠,并计算重叠时长(分钟)。
  2. 严重程度排序:按冲突轻重排序,便于先处理影响面大的重叠。
  3. 周课表总览:以表格形式展示一周课表,标注冲突位置。
  4. 调整与组合建议:在全局无新冲突的前提下,给出可调方向;支持穷举无冲突组合、或为新增选修寻找空闲窗口。
  5. 结构化报告:固定输出课表冲突检测报告模板,包含课程总数、冲突处数、冲突详情、调整建议与空闲时段说明。

Skill 强调只分析时间维度,不评价课程质量,不存储课表,不连接学校教务系统。

安装与启用

方式一:SkillHub CLI(推荐)

先确认本机已安装 skillhub(安装方式见 https://skillhub.cn/install/skillhub.md )。安装 Skill 时必须用 --dir 指向当前 Agent 的 skills 目录,否则默认落在 ./skills/ 且可能不被识别。

skillhub install course-schedule-conflict-detector --namespace user_70c2f807 --dir <你的 Agent skills 目录>

常用目录示例(与官方安装文档一致):

  • Cursor:~/.cursor/skills/
  • Claude Code:~/.claude/skills/
  • Codex:~/.codex/skills/ 或项目下的 .agents/skills/

安装完成后按所用客户端要求重启或刷新 Agent,使 Skill 被加载。

方式二:让 AI 按官方提示安装

SkillHub 页面提供的安装提示为:根据 https://skillhub.cn/install/skillhub.md,安装 @user_70c2f807/course-schedule-conflict-detector。适合尚未配置 CLI、但已在 Cursor 等环境中与 Agent 对话的场景。

典型用法

Skill 要求用户提供尽量完整的课程信息:课程名称 + 星期 + 起止时间;若有单周/双周或前八周等限制,需一并说明。

示例 1:基础冲突检测

用户输入:

高数 周一三五 8:00-9:30,英语 周一三 9:00-10:30,物理 周二四 10:00-11:30

Agent 按 Skill 流程统一时间格式、逐对比较后,应指出例如高数与英语在周一、周三 9:00–9:30 存在 30 分钟重叠,并生成周课表表格与冲突详情块。

示例 2:加课找空档

用户说明已选课程并询问「加一门选修哪个时段不冲突」时,Skill 要求分析空闲时段并列出可插入的时间窗口;替代时段是否可选,需用户自行在选课系统核实。

示例 3:信息不全时的处理

仅提供一门课、或时间格式混乱时,Skill 规定应提示补充完整课表或统一为「课程名 星期X 8:00-9:30」一类格式,而不是给出不可靠的冲突结论。

输出结构遵循 Skill 中的「课表冲突检测报告」章节:总览表、分条冲突说明(含重叠分钟与影响天数)、调整方案与空闲时段列表。

适用场景与注意

适合谁

  • 大学生、研究生在选课窗口需要快速核对多门课是否撞车。
  • 教务助理、辅导员在帮学生改选时,需要把文本课表整理成可读冲突报告。
  • 已在 Cursor / Claude Code 等环境使用 Skills、希望用自然语言驱动检测而非自写脚本的用户。

限制与坑

点 说明
输入完整性 缺课程或缺时间会直接导致漏检;实验课、体育课同样要列入。
无系统对接 不能导入教务后台,也不能代选课;只能基于用户粘贴的文本分析。
替代方案 Skill 给出的调课建议需在选课系统中确认班次是否开放。
考试安排 不适用考试时间冲突,需联系教务。
周次复杂 单双周、分段周次需用户标注,否则可能误判。

最佳实践上,Skill 建议先固定必修课再排选修,连续课之间预留换教室缓冲,并标明哪些课不可动以便建议更贴合实际。

结尾

「课程表冲突检测」把课表冲突检测、量化重叠、表格化周视图和可调方案写进 Agent 工作流,适合选课阶段用对话完成排查。安装与详情以 SkillHub 为准:https://www.skillhub.cn/skills/user_70c2f807/course-schedule-conflict-detector

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye