让 Columbia 课程,融入你的日历。

将 Columbia Vergil 课表转换为 Apple、Google 和 Outlook 日历可订阅的链接。按需更新课程,学校 Token 不会被保存。独立开源工具。

从 Vergil 到 Apple、Google 或 Outlook 日历

登录 Vergil,复制 Access Token 和可选的 Refresh Token,在这里选择学期。服务读取已注册课程,生成 ICS 日历订阅链接。在日历 App 中通过网址订阅,即可查看上课日期、时间和地点。

一个订阅链接,按需更新

每个经验证的 UNI 只有一个日历,请保存私密管理链接。课表变更后,重新提交 Access Token 和可选的 Refresh Token,更新所选学期;已导入的其他学期保留,不会自动获取所有往期学期。普通更新保留订阅地址,只有主动更换地址才会改变。你可以排除假期或停课日期,并在不需要时撤销订阅。

打开已有日历

在首页输入新的 Access Token 和可选的 Refresh Token,点击“打开已有日历”。服务器向学校验证 UNI,再用其哈希匹配你唯一的日历;找到后自动打开,查找本身不会改动课程。查找后两个 Token 输入框都会清空,更新或更换订阅地址前需再次输入新的凭据。普通更新保留两种链接,更换订阅地址时管理链接不变。查找返回零个或一个归一化快照及其已导入学期历史,不返回学校 Token 或管理密钥;不保留明文 UNI 或学校 Token。原管理密钥无法从哈希恢复;遗失后可通过此入口查找和更新日历或更换订阅地址,但撤销仍需要保存的管理密钥。

更换订阅地址

订阅地址泄露或需要新地址时,可使用私密管理密钥,或新的 Access Token 和可选的 Refresh Token 更换。请确认提示:旧订阅地址立即返回 404,必须在日历 App 中使用新地址重新订阅。课程、已导入学期及管理链接不变。更换地址不会删除已缓存副本,也不会使泄露的管理密钥失效;撤销仍需要该密钥,并会删除日历。

刷新时间与隐私

Access Token 必填;Refresh Token 可选,仅在上游返回 HTTP 401 后用于同一次请求中最多一次刷新。Access Token 过期且未提供 Refresh Token 时返回 401,请获取新的 Access Token 后重新提交。服务不持久保存任何学校 Token(包括刷新后的 Token),也不会在后台同步课程。每次手动更新时 Token 会经过服务器,请仅使用可信部署。日历 App 决定刷新时间,更新可能不会立即显示。任何持有订阅链接的人都能查看课表,管理链接还可用于更新与撤销;请妥善保管链接和 Token。

阅读完整使用指南

创建或管理订阅需要启用 JavaScript。