← Back to Skills Marketplace
judysue

Class Reminder

by JudySue · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
69
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install class-reminder
Description
课程提醒助手。解析 Excel 课程表(支持教师课表格式),按日期梳理课程安排,支持查询今天/明天/指定日期的课程,生成上课提醒。触发场景:(1) 用户上传课程表后询问"明天有什么课"、"今天上什么课"、"XX号有什么课";(2) 设置定时提醒,每天/每周自动推送次日课程;(3) 解析、导入、更新课程表;(4)...
README (SKILL.md)

课程提醒 Skill

核心流程

1. 解析课程表

用户提供 Excel 课程表文件后,用脚本解析:

python3 scripts/class_reminder.py parse \x3Cexcel文件> [--semester-start YYYY-MM-DD]

支持两种格式:

  • 标准格式:每行一节课程,包含课程名称、星期、时间、地点等列
  • 教师课表格式:行列式表格,行=时间段,列=星期,单元格=课程信息

解析后保存课程数据到 data/schedule.json(在工作区创建)。

2. 查询课程

# 明天的课程
python3 scripts/class_reminder.py tomorrow data/schedule.json

# 今天的课程  
# 指定日期
python3 scripts/class_reminder.py date data/schedule.json --date 2026-04-25

3. 生成提醒文本

脚本返回的 formatted 字段即为可直接发送的提醒文案。

教师课表格式支持

表格结构:

  • 行:时间段(第1-2节、第3-4节...)
  • 列:星期一到星期日
  • 单元格:课程信息,如 【实验】网络与系统安全 [1-4节][6-6周] [T2604-T2606]

课程信息解析:

  • 课程类型:【实验】、【理论】等
  • 课程名称:网络与系统安全
  • 节次范围:[1-4节]
  • 周次范围:[6-6周] 或 [11-12,14-14周]
  • 教室:[T2604-T2606]

特殊处理:

  • 一个单元格可包含多门课程(换行分隔)
  • 自动展开节次范围和周次范围
  • 支持复杂的周次格式(如 "11-12,14-14周")

定时提醒

设置每天提醒明日课程:

  1. 首次需要用户提供课程表文件并解析
  2. 使用 cron 或 heartbeat 定时检查
  3. 每次触发时运行 tomorrow 命令,发送 formatted 文本

数据存储

解析后的课程数据保存到 data/schedule.json,后续查询直接读取,无需重复解析。

注意事项

  • 学期开始日期影响周次计算,默认为当前学期估算(9月秋季/2月春季)
  • 用户可显式指定 --semester-start 覆盖默认值
  • 调休、节假日需要手动更新课程表或添加备注
  • 依赖 openpyxl,首次使用需 pip install openpyxl
Usage Guidance
This skill mostly does what it says (parses Excel teacher schedules and builds reminder text), but there are a few issues to check before installing: - File I/O mismatch: SKILL.md says parsed data is saved to data/schedule.json, but the scripts expect and read an Excel file (schedule.xlsx). Confirm which format and paths you will actually use so you don't accidentally expose other files. - Hardcoded absolute paths: daily_class_reminder.py and weekly_class_overview.py reference /home/admin/.openclaw/workspace/... and also insert that path into sys.path. That means the skill will read files from the agent workspace and import code from that location. Make sure those paths are correct for your environment and that the workspace doesn't contain sensitive files you don't want the skill to access. - Truncated code review: the provided class_reminder.py was truncated in the manifest; review the full file to confirm there are no network calls, telemetry, or other I/O (HTTP, uploads, or unexpected subprocess exec) in the omitted portion. Recommended actions before use: 1. Request or inspect the full class_reminder.py CLI code to verify it doesn't call external endpoints or execute arbitrary commands. 2. Adjust and document expected input/output paths (use either schedule.xlsx or schedule.json consistently) and remove or parameterize hardcoded absolute paths. 3. Run the scripts in a sandboxed environment with test Excel files to validate behavior. 4. If you will enable scheduled runs, ensure the schedule file location is restricted and validate the agent's workspace contents to avoid accidental data exposure.
Capability Analysis
Type: OpenClaw Skill Name: class-reminder Version: 1.0.0 The skill bundle is a legitimate tool for parsing Excel-based class schedules and generating automated reminders. The core logic in `scripts/class_reminder.py` uses the standard `openpyxl` library to process teacher-formatted schedules, and the accompanying shell and Python scripts facilitate daily and weekly overviews. No evidence of data exfiltration, malicious execution, or harmful prompt injection was found; the instructions in `SKILL.md` are strictly aligned with the stated purpose of schedule management.
Capability Assessment
Purpose & Capability
Name/description (parse Excel teacher schedules, produce reminders) aligns with the included Python and shell scripts. However the SKILL.md describes saving parsed data to data/schedule.json and examples that reference data/schedule.json, while the provided scripts and constants work with an Excel file (schedule.xlsx). That mismatch between documented I/O and actual code is a functional inconsistency.
Instruction Scope
SKILL.md runtime instructions instruct parsing, querying, and producing 'formatted' reminder text. The scripts do that, but the documentation and examples reference different files (schedule.json vs schedule.xlsx). The daily/weekly scripts use absolute paths under /home/admin/.openclaw/workspace/... which means the skill expects and will read files from the host workspace. The instructions don't mention these hardcoded host paths, which widens scope implicitly (the skill will read from those locations if installed/run).
Install Mechanism
No install spec is provided (instruction-only + included scripts). Nothing is downloaded or written by an installer. Risk from installation step is low.
Credentials
The skill requests no environment variables or credentials, which is consistent with offline schedule parsing. However several scripts hardcode absolute filesystem locations under /home/admin/.openclaw/workspace (both for SCHEDULE_FILE and for sys.path insertion). That gives the skill implicit access to files in the agent workspace; this is plausible for an OpenClaw skill but should be called out because it increases what the skill can read.
Persistence & Privilege
always is false and the skill does not request background/always-on privileges. It includes helper scripts for cron/heartbeat use, which is expected for scheduled reminders and normal for this purpose.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install class-reminder
  3. After installation, invoke the skill by name or use /class-reminder
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
class-reminder 1.0.0 - 初始版本发布,支持解析和管理Excel格式课程表(含教师课表格式)。 - 按日期(今天/明天/指定日期)查询课程安排,并生成可发送的提醒文本。 - 支持设置定时提醒,自动推送次日课程内容。 - 解析后课程数据存于 data/schedule.json,便于后续快速查询。 - 支持灵活的课程时间、周次解析和多课程单元格。
Metadata
Slug class-reminder
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Class Reminder?

课程提醒助手。解析 Excel 课程表(支持教师课表格式),按日期梳理课程安排,支持查询今天/明天/指定日期的课程,生成上课提醒。触发场景:(1) 用户上传课程表后询问"明天有什么课"、"今天上什么课"、"XX号有什么课";(2) 设置定时提醒,每天/每周自动推送次日课程;(3) 解析、导入、更新课程表;(4)... It is an AI Agent Skill for Claude Code / OpenClaw, with 69 downloads so far.

How do I install Class Reminder?

Run "/install class-reminder" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Class Reminder free?

Yes, Class Reminder is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Class Reminder support?

Class Reminder is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Class Reminder?

It is built and maintained by JudySue (@judysue); the current version is v1.0.0.

💬 Comments