Search

PythonReactSEOPDF
OpenClaw

student-timetable

Student timetable manager for self or parent-managed child profiles. Includes init flow + profile registry under schedules/profiles/.

extraterrest0 source installs☆ 0 Repository stars

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

SkillHub CLI

skillhub install extraterrest/student-timetable

Inspect the source and compatibility requirements, then follow its installation steps.

Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.

View source ↗Guides

Skill instructions

student-timetable

Design

  • Supports two operating modes:
    • Self profile: a student manages their own schedule.
    • Child profiles: a parent/guardian manages one or more children.
  • Uses a profile registry + per-profile data files so queries are consistent across kids and reusable in other automations.

Initialize

  • Run interactive setup:
    • node skills/student-timetable/cli.js init
  • This writes/updates:
    • schedules/profiles/registry.json
    • schedules/profiles/<profile_id>/*

Query

  • node skills/student-timetable/cli.js today --profile <id|name|alias>
  • node skills/student-timetable/cli.js tomorrow --profile <id|name|alias>
  • node skills/student-timetable/cli.js this_week --profile <id|name|alias>
  • node skills/student-timetable/cli.js next_week --profile <id|name|alias>

Tool entry

  • tool.js

Source information

Source
github
Repository
openclaw/skills
Path
skills/extraterrest/student-timetable
Version
—
Commit
4826535f428e909916251bb3b8f42382d94e6603
Classification source
rules
Status
active
Visibility
public

These signals come from indexed source analysis and may lag behind changes. Check the current source files.

README

student-timetable

A student timetable manager supporting:

  • A student managing their own schedule (self profile)
  • A parent/guardian managing one or more children (child profiles)

Data contract reference: projects/StudentTimetable/docs/contracts/prd.md.

Data layout

All schedule data lives under:

  • schedules/profiles/registry.json
  • schedules/profiles/<profile_id>/weekly.json
  • schedules/profiles/<profile_id>/special_events.json
  • schedules/profiles/<profile_id>/term_calendar.json

CLI

Interactive init:

  • node skills/student-timetable/cli.js init

Query:

  • node skills/student-timetable/cli.js today --profile <id|name|alias>
  • node skills/student-timetable/cli.js tomorrow --profile <id|name|alias>
  • node skills/student-timetable/cli.js this_week --profile <id|name|alias>
  • node skills/student-timetable/cli.js next_week --profile <id|name|alias>

If you omit --profile, the CLI defaults to the self profile ONLY when a self profile exists in schedules/profiles/registry.json.

Profile resolution rules

Matching order:

  1. Exact match on profile_id
  2. Exact match on display name
  3. Exact match on an alias

Normalization:

  • Case-insensitive
  • Trim whitespace
  • Collapse internal whitespace runs

Ambiguity handling:

  • If multiple profiles match, the tool always asks for clarification.
  • The tool never picks a profile based on ordering, recency, or heuristics.

Generic aliases (always require clarification):

  • me, myself, self
  • kid, child, son, daughter, boy, girl
  • older, younger, big, small
  • primary, secondary

Reserved words:

  • all, everyone

Migration

Non-destructive migration from the legacy kid-schedule layout:

  • Dry run: node skills/student-timetable/cli.js migrate kid-schedule --dry-run
  • Apply: node skills/student-timetable/cli.js migrate kid-schedule

Legacy "zian" single-JSON (heuristic):

  • Dry run: node skills/student-timetable/cli.js migrate legacy-zian --dry-run -...

Extracted content

SKILL.md
# student-timetable

Design

- Supports two operating modes:
  - Self profile: a student manages their own schedule.
  - Child profiles: a parent/guardian manages one or more children.
- Uses a profile registry + per-profile data files so queries are consistent across kids and reusable in other automations.

Initialize

- Run interactive setup:
  - `node skills/student-timetable/cli.js init`
- This writes/updates:
  - `schedules/profiles/registry.json`
  - `schedules/profiles/<profile_id>/*`

Query

- `node skills/student-timetable/cli.js today --profile <id|name|alias>`
- `node skills/student-timetable/cli.js tomorrow --profile <id|name|alias>`
- `node skills/student-timetable/cli.js this_week --profile <id|name|alias>`
- `node skills/student-timetable/cli.js next_week --profile <id|name|alias>`

Tool entry

- `tool.js`
README
# student-timetable

A student timetable manager supporting:

- A student managing their own schedule (self profile)
- A parent/guardian managing one or more children (child profiles)

Data contract reference: `projects/StudentTimetable/docs/contracts/prd.md`.

## Data layout

All schedule data lives under:

- `schedules/profiles/registry.json`
- `schedules/profiles/<profile_id>/weekly.json`
- `schedules/profiles/<profile_id>/special_events.json`
- `schedules/profiles/<profile_id>/term_calendar.json`

## CLI

Interactive init:

- `node skills/student-timetable/cli.js init`

Query:

- `node skills/student-timetable/cli.js today --profile <id|name|alias>`
- `node skills/student-timetable/cli.js tomorrow --profile <id|name|alias>`
- `node skills/student-timetable/cli.js this_week --profile <id|name|alias>`
- `node skills/student-timetable/cli.js next_week --profile <id|name|alias>`

If you omit `--profile`, the CLI defaults to the self profile ONLY when a self profile exists in `schedules/profiles/registry.json`.

## Profile resolution rules

Matching order:

1. Exact match on `profile_id`
2. Exact match on display name
3. Exact match on an alias

Normalization:

- Case-insensitive
- Trim whitespace
- Collapse internal whitespace runs

Ambiguity handling:

- If multiple profiles match, the tool always asks for clarification.
- The tool never picks a profile based on ordering, recency, or heuristics.

Generic aliases (always require clarification):

- `me`, `myself`, `self`
- `kid`, `child`, `son`, `daughter`, `boy`, `girl`
- `older`, `younger`, `big`, `small`
- `primary`, `secondary`

Reserved words:

- `all`, `everyone`

## Migration

Non-destructive migration from the legacy `kid-schedule` layout:

- Dry run: `node skills/student-timetable/cli.js migrate kid-schedule --dry-run`
- Apply: `node skills/student-timetable/cli.js migrate kid-schedule`

Legacy "zian" single-JSON (heuristic):

- Dry run: `node skills/student-timetable/cli.js migrate legacy-zian --dry-run`
-...

Related skills

OpenClaw

13-Day Sprint Method

galizki

Productivity system based on Maya calendar with 13 natural tones for project management and personal development

OpenClaw

1password

daggerkun007

Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.