核心用法
student-timetable 是一款面向 K-12 教育场景的命令行时间表管理工具,采用 Node.js 实现。其核心架构围绕「档案注册表 + 独立数据文件」设计,支持两种操作模式:
- Self 模式:学生自主管理个人课表
- Child profiles 模式:家长/监护人统一管理多个子女的时间表
初始化流程
通过 node skills/student-timetable/cli.js init 启动交互式配置,自动生成:
schedules/profiles/registry.json—— 全局档案索引schedules/profiles/<profile_id>/—— 单档案数据目录
查询能力
支持时间维度的课程查询:
today/tomorrow—— 当日/次日课表this_week/next_week—— 本周/下周概览
所有查询均通过 --profile 参数指定目标档案,支持 ID、姓名或别名三种引用方式。
显著优点
1. 多档案架构:单一实例管理多人课表,数据隔离且可复用
2. 自动化友好:纯 CLI 设计便于接入家庭自动化系统(如 Home Assistant)
3. 数据可移植:JSON 格式存储,易于备份、版本控制及跨平台迁移
4. 查询一致性:统一接口处理不同档案,降低家长管理多个孩子的时间成本
潜在局限
- 无图形界面:纯命令行交互对低龄儿童或非技术家长存在门槛
- 依赖 Node.js 环境:需本地运行环境,无法直接作为 SaaS 使用
- 缺乏提醒机制:仅为查询工具,无内置闹钟或通知推送功能
- 数据同步需自行解决:未内置云同步,多设备场景需配合 Syncthing 等工具
适合人群
- 技术背景家长,希望用代码方式管理子女教育日程
- 家庭教育自动化爱好者,需将课表数据接入 broader 自动化流程
- 多子女家庭,追求统一、可维护的时间管理方案
- 中学生自学技术,实践 CLI 工具开发
常规风险
- 数据丢失风险:本地 JSON 存储,无自动备份机制
- 隐私合规:儿童教育数据属敏感信息,需确保存储环境安全
- 权限管理缺失:无多用户权限体系,物理访问即等于数据访问
- 长期维护依赖:Node.js 版本更迭可能导致依赖失效