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
# Postpone daily urgent alarm until tomorrow (optional third argument: days)
rmd add "Biology homework" 9 1
rmd sync

Set show_tasks_after_change = true under [settings] if you want every successful rmd add ... or rmd rm ... to immediately print the same task table as rmd ls.

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 history [n] Show recent completed task activities (default: 5)
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)
rmd settings Interactive TUI for editing settings.toml (arrow keys, Enter/Space to edit, s to save, q to quit)

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.9.6.tar.gz (119.1 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.9.6-py3-none-any.whl (144.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: schedule_management-0.9.6.tar.gz
  • Upload date:
  • Size: 119.1 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.9.6.tar.gz
Algorithm Hash digest
SHA256 942f00785f06391df619aadf10ad62a37213b6e63a27c7e042b4dcb42a1e0f2c
MD5 a7b80a61e2e389845978f7912fe26fcb
BLAKE2b-256 21b3bceae57ce27e207c3e9b188c480e25eb84fbd05f96537b7448b1e4963fc4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for schedule_management-0.9.6-py3-none-any.whl
Algorithm Hash digest
SHA256 d350b5d6255abc0cf80d5016252d9cc1ca76b894814d291ae2682afefab1c30e
MD5 0cab4b3c17ebaabc0994acd963fa6bf0
BLAKE2b-256 597eefe1a9e9451d794772b80b4debcf5cc1b535e3e97b3902c10dd5a448acd6

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