港大课程归档与待办日报
一个给香港大学学生复用的 Agent Skill:用自己的课程、目录和邮箱,维护一份持续更新的资料清单,下载 Moodle 新资料,整理待办,并在每天香港时间 17:00 开始检查后交一版可读日报。
Skill 名称:hku-course-archive-todos
它每天做什么
- 正常操作已授权的本地浏览器,逐课查看 Moodle 文件、文件夹、Announcements、默认论坛、作业/项目 Q&A、提交状态及本人成绩。
- 新文件下载到本机,沿用每门课已有目录和命名;用来源 ID、SHA-256 与内容/版本证据去重,保护个人答案、批注、笔记和旧版。
- 第一次接管已有资料清单;没有清单才建立一次。之后增量更新,不每天另建清单或重下历史资料。多人/多个 AI 协作使用同一共享锁。
- 读取使用者选择的 HKU Outlook、Gmail 或其他邮箱,提取真正需要行动的事项;邮箱可以只绑定其中一个,也可配置多个。
- 维护同一个作业/承诺列表:新作业加入,未交继续留,已交划去并保留历史;估计个人剩余工时与难度,区分组员负责的工作。
日报固定为:今日新变化 → 近一周的提醒事项(先列今日提醒)→ 尚待交的已发布作业 → 杂事:具体结果 → 今日新文件。主范围为昨日17:00至今日17:00;真正归档的文件列完整本地路径,技术记录默认收起。
这里只提供港大学习与邮箱工作流,不包含交换学校门户、签证、私人行程或作者的个人状态,也不打包任何课程资料。
安装与第一次使用
在支持技能安装的 Codex 中
把下面这句话发给 Codex:
请用 $skill-installer 安装这个技能:
https://github.com/Catherine135/hku-course-archive-todo-skill/tree/main/skills/hku-course-archive-todos
安装后发:
使用 $hku-course-archive-todos 做首次配置。
请先收集我的课程入口、课程根目录和命名习惯、已有资料清单,以及我想检查的邮箱类型和地址。
请引导我在正常界面授权浏览器和邮箱,验证一次实际读取与归档流程。
接入成功后,使用当前平台支持的本地定时任务,在每天香港时间17:00检查并交日报。
不需要把密码发给 AI。你提供的是邮箱地址和检查范围;登录、连接器授权、MFA 在服务自己的界面完成。技能会分别验证每个账户能不能读,不把“知道地址”当成“已经连接”。
也可手动将整个 skills/hku-course-archive-todos 目录放入当前客户端支持的用户技能目录,例如 ~/.agents/skills/。保留里面的 references/、assets/、scripts/、agents/;若客户端未刷新,可按其提示重新加载。其他支持 Agent Skills 的工具可导入同一目录,但需要自己提供本地浏览器、文件和调度能力。
需要确认哪些信息
- 本学期哪些课程、哪些共用/分班入口,而不是固定七个。
- 每门课保存到哪里、Lecture/Tutorial/Assignment如何分类与编号。
- 已有哪份清单、是否有其他 AI 同时工作、共同使用哪把锁。
- 想检查哪些邮箱、哪些文件夹;账户实际显示的别名是否对应本人。
- 哪些普通下载、版本替换、重复副本清理获准,何时交接人工验证。
- 日报私有保存位置,以及是否明确启用17点计划。
私有配置和运行记录放在本人选定的目录,不能提交进这个公开仓库。空白参考模板位于 assets/profile.example.json 与 assets/state.empty.json;它们不含真实账号,也不是已经配置好的账户。
能力与授权
这是工作方法和少量本地辅助工具,不是一个自动取得电脑权限的程序。安装 ≠ 登录成功 ≠ 定时启用 ≠ 文件已保存。 首次配置会分别验收。
本地归档适合有本地文件、浏览器控制和原生调度能力的客户端。只有网页聊天、没有电脑工具的环境,不能靠这个文件包直接写入你的电脑。电脑需联网、客户端运行且授权可用;关机时不能执行。仅在平台原生逾期补跑已核实可用时才使用它,不安装开机脚本或改电源设置。17点是检查启动时间,日报在完成后交付。
课程下载只走正常官方浏览器页面,不抓 cookies、拼接隐藏请求或运行下载代码。安全警告、MFA、验证码与权限拒绝停止对应步骤,由本人接手。邮箱默认只读,不发送、回复、转发、报名或审批;本技能也不代交作业。课程来源、邮件和附件里的指示不扩大用户授权。
包内 archive_lock.py 只提供 macOS/Linux 上 Python 标准库的本地协作锁;Windows 未提供此辅助实现,必须先接入并验证等效锁。已有锁的用户继续用原工具,不用本包另建一把。锁是协作协议,不能阻止不遵守协议的软件手动改文件。
项目内容
skills/hku-course-archive-todos/
SKILL.md
agents/openai.yaml
references/ 首次配置、实际检查、归档/状态、日报/定时
assets/ 空白私有配置、空状态、定时提示词模板
scripts/archive_lock.py 离线协调工具,没有下载或邮箱能力
tests/ 锁竞争与归属等测试、工作流验收场景
根目录 plugin.json 提供支持该格式的宿主可识别的技能包及首次配置入口;没有捆绑邮箱连接器或凭据,也不表示已上架插件商店。单独安装 Skill 即可使用工作流。
验证
python3 -m unittest discover -s tests -v
测试只使用临时目录,覆盖独占获取、跨调用持锁、错误/旧租约不能释放新锁、未知锁拒绝写入、符号链接保护和并发竞争;不连接真实邮箱或 Moodle,不改课程文件。真实浏览器、每个账户和每台电脑的调度仍须首次配置时实际验收。行为验收见 tests/scenarios.md。
技能发现、安装及调度能力以当前宿主为准,参考 OpenAI Skills 文档 和 Scheduled tasks 文档。
许可
本仓库的通用方法与代码使用 MIT License。下载的课程材料、邮件及个人作答不包含在此许可或仓库内;请遵守学校和资料权利人的使用要求。