核心用法
sysu-anything-apple 是专为中山大学(SYSU)师生设计的 macOS 原生集成工具,通过 Apple EventKit 框架将校园生活数据无缝同步至 Apple 日历(Calendar)与提醒事项(Reminders)。用户需先通过 Node.js 全局安装 sysu-anything 包获取二进制文件,首次使用前执行 apple doctor 验证 macOS 权限与桥接状态,再根据具体功能需求检查对应 SYSU 子系统登录状态(如 JWXT 教务、企业微信、体育馆系统等),最后调用带 --calendar 或 --reminders 标志的闭环命令完成数据写入。
显著优点
- 原生生态深度整合:直接调用 Apple EventKit,无需第三方日历服务中转,支持 iCloud 全设备同步
- 场景覆盖全面:从课表(today/timetable)、讲座预约(career teachin/jobfair)、体育馆订场(gym)、图书馆研讨室(libic)到学工系统请假(jwxt leave)、勤工助学时段(xgxt workstudy)一网打尽
- 安全预览机制:涉及写操作的命令(如预约、请假)默认处于预览模式,需显式添加
--confirm才会执行真实提交并同步日历 - 状态隔离设计:各子系统独立认证,失败时精确定位至具体服务(如
sysu-anything jwxt status)
潜在缺点与局限性
- 平台锁定:仅支持 macOS(darwin),Windows/Linux 用户无法使用
- Node.js 依赖:需维护 npm 全局环境,本地开发版本与发布版本可能存在行为差异
- 权限门槛:首次使用需逐一手动授权日历、提醒事项访问权限,系统升级后可能需重新授权
- 时间语义限制:如勤工助学仅含「星期几+时段」信息,工具默认展开 1 周,需手动指定
--calendar-weeks才能生成多周日程
适合人群
- 深度使用 Apple 生态(iPhone/Mac/iPad 联动)的中山大学在校生
- 希望将分散的校园事务(课程、招聘、场馆、行政)统一至原生日历管理的时间管理爱好者
- 熟悉命令行、能接受 Node.js 环境配置的进阶用户
常规风险
- 误操作风险:
--confirm前的预览阶段不会真正预约,但用户可能误以为已提交;qg link生成的是「计划行程」而非「已确认车票」 - 数据覆盖风险:重复执行同步命令可能产生重复日历项,工具未内置去重机制
- 隐私合规风险:校园敏感数据(课程表、请假记录)暂存于本地
~/.sysu-anything/目录,需关注磁盘加密状态 - 服务中断风险:依赖各校园子系统网页接口,学校系统升级可能导致部分功能临时失效