Scheduling Overview
Chronos scheduling is status-aware and template driven. It scores day templates against your current status, selects the best fit, and then builds a day plan using buffers, dependencies, and conflict resolution.
Pipeline (High Level)
- Gather items from templates, recurring items, and manual additions.
- Compute importance using priority, status, metadata, and current energy/focus.
- Place the ideal schedule with durations, dependencies, and buffers.
- Resolve conflicts by trimming, moving, buffering, or cutting.
- Persist to
User/Schedules/schedule_YYYY-MM-DD.yml.
Status Aware Templates
- Templates and items can define
status_requirementsor legacy status keys. - Chronos loads
User/Settings/Status_Settings.ymlto score candidates. - Run
today rescheduleafter updating status to rebuild the plan.
Time Blocks
- Time blocks can be anchored, floating, or dependency driven.
- Buffers are respected to prevent overbooking.
- Manual edits are tracked in
User/Schedules/manual_modifications_YYYY-MM-DD.yml.
Conflict Resolution
- Conflicts are overlap based (ideal end-time conflicts are recorded during initial build).
- Loop order: shift lower-importance blocks, trim to minimums, then cut if enabled.
- Anchors (
reschedule: false|never) are protected from shifts and cuts.
Preview Commands
tomorrow [days:n]- preview future agendas.this <weekday>/next <weekday>- preview specific days.
More Detail
- Scheduling Deep Dive - code-aligned walkthrough.
- Time Blocks - types, anchors, and buffers.
