Skip to main content

A TOML based scheduling tool

Project description

Schedule Everything

Schedule Everything logo

Logic Tests CLI Tests PyPI version License: MIT Documentation Ask DeepWiki 中文版本

Schedule Everything is a local-first, AI-assisted scheduling CLI for building a durable weekly routine and then turning today's focus blocks into concrete work.

Workflow

Workflow for building a schedule with rmd setup, then assigning daily tasks with rmd sync

Quick Start

1. Install

git clone --recurse-submodules https://github.com/sergiudm/schedule-everything.git
cd schedule-everything
./install.sh
./third_party/opencode/install --no-modify-path

./install.sh sets up the local environment and config scaffold. OpenCode is required for AI-assisted commands such as rmd setup and rmd sync.

2. Build Your Schedule with One Command!

rmd setup

After a short conversation about your workday, constraints, and habits, rmd setup stores model settings in ~/.schedule_management/llm.toml, builds or updates profile.md, shows a summary for confirmation, and only then writes your schedule files into user_config_0. Later accepted changes are saved as user_config_1, user_config_2, and so on under the same config root while tasks/ remains shared.

Once that schedule exists, the system can remind you about scheduled blocks, habit/deadline prompts, and give you both a live status view and a PDF visualization of the result.

3. Add Tasks and Sync Today

Plans change faster than weekly templates. When that happens, add tasks and sync the current day instead of rebuilding the whole schedule.

rmd add "Finish proposal draft" 9
rmd add "Review PR #128" 7
rmd sync

rmd sync reads tasks/tasks.json, proposes task assignments for today's pomodoro/potato blocks, and regenerates if you reject the preview with feedback.

4. Check the Result

rmd status
rmd status -v
rmd view
rmd update
rmd switch 0

When a sync overlay exists for today, rmd status shows the block type and the specific assigned event, for example pomodoro: Finish proposal draft. rmd update reloads the reminder service. If your config directory is a git repository, it pulls the latest schedule changes first; otherwise it skips the git step and reloads your local files as-is.

5. Optional macOS Daily Command Center

The repository also includes a Tauri 2 desktop app for macOS. It uses the same local config, tasks, deadlines, habits, and sync overlay files as the CLI, but presents them as a daily command center with quick task/deadline entry, habit checks, and rmd sync proposal review.

You can download a pre-built DMG from the GitHub Releases or build it yourself:

npm install
npm run tauri:dev
npm run tauri:build

npm run tauri:build packages the Python JSON bridge as a sidecar and writes the macOS bundles under src-tauri/target/release/bundle/.

[!TIP] macOS "App is damaged" Workaround: Since pre-built DMGs are unsigned, macOS Gatekeeper may show a warning saying the app is damaged. You can easily fix this by dragging the app to /Applications and running:

xattr -r -d com.apple.quarantine "/Applications/Schedule Everything.app"

Core Commands

Command What it does
rmd setup Build or modify your schedule with a profile-first AI workflow
rmd sync Assign today's pomodoro/potato blocks to tasks with preview + approval
rmd status [-v] Show what is happening now and today's schedule, including synced titles
rmd add/ls/rm Manage the task list that feeds the sync flow
rmd track Record habits
rmd ddl Manage deadlines; entries two or more days overdue are auto-pruned
rmd view Generate a PDF schedule visualization
rmd switch <id> Activate a different user_config_n snapshot and reload the service
rmd mode [j|p] Switch or display the current mode (j mode allows all reminders, p mode cancels specific event alarms)

Manual Setup and Docs

The low-level manual configuration flow has been moved to the docs.

License

Distributed under the MIT License. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

schedule_management-0.8.2.tar.gz (101.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

schedule_management-0.8.2-py3-none-any.whl (124.9 kB view details)

Uploaded Python 3

File details

Details for the file schedule_management-0.8.2.tar.gz.

File metadata

  • Download URL: schedule_management-0.8.2.tar.gz
  • Upload date:
  • Size: 101.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for schedule_management-0.8.2.tar.gz
Algorithm Hash digest
SHA256 ac950ef70ec89e94397b394669ca7c9ed78b5bf0d082c1ddd141bab0d039f1b4
MD5 1063ab6b8f4badbeb6eaa5a600fd66b6
BLAKE2b-256 70d0a09ab81e5407f4f64e0a63d5499a86d4cf03c4ccb0a487afe28117b16387

See more details on using hashes here.

File details

Details for the file schedule_management-0.8.2-py3-none-any.whl.

File metadata

File hashes

Hashes for schedule_management-0.8.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7810e16cb0d526c7b52f9dd0ff362065759178c4118aa043c691f9cdec2cbdad
MD5 3f973d6800cbfa9cc6c3494fd8cc0062
BLAKE2b-256 21ec255587ab12d934cb434b5f618081ccfc18f97c77119fccce6c1678da3c2a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page