CLI Tool

Organizer

A task, project, and schedule assistant with built-in AI — turns scattered to-dos and calendar chaos into a daily AI-generated game plan. Ships with a Discord bot front-end for the same engine.

Standalone binary — no Python install, no repo checkout, no .env file required.

PythonTyper + RichFastAPISQLAlchemy + AlembicPostgreSQL/SQLiteClaude & Gemini APIsDiscord.pyPyInstaller

Getting Started with Organizer (Windows)

Organizer is a command-line task, project, and schedule assistant with an optional natural-language chat mode. Everything you add lives in a local database on your machine — nothing is shared with anyone else's install.

1. Download and run

Download the Windows build and unzip it — you'll get a folder containing a program (org.exe) plus an _internal folder of support files. Keep them together; the program won't run if moved out on its own.

Open a terminal (Command Prompt or PowerShell) inside that unzipped folder and run it by pointing at it directly — the folder isn't on your system's PATH, so the bare command name by itself won't be found:

.\org.exe

The first time you run it, nothing is configured yet, so org will offer to walk you through setup right there:

Welcome to Organizer! No configuration found yet - let's get you set up.

Follow the prompts. Run your command again afterward — setup only writes your configuration, it doesn't run the command you originally typed.

You can re-run setup any time with org setup, or check what's currently configured with org config. Prefer editing a file directly? Run org config path to find your config.toml, then open it in any text editor — it's a plain TOML file ([user], [ai], [storage], etc., matching the setup prompts), no wizard required. The wizard is still the recommended way to set things up, since it validates input as you go (e.g. rejects a malformed wake/sleep time before saving) — a hand-edited value is read as-is with no validation, so a typo (like an unparseable time or an out-of-range number) won't be caught until something actually tries to use it.

2. Optional: run org from anywhere

Typing .\org.exe works fine from inside the unzipped folder, but if you'd rather just type org from any directory, you can add the folder to PATH:

System Properties → Environment Variables → under "User variables," select PathEditNew → paste the full path to the unzipped folder → OK through all the dialogs, then open a new terminal window (existing ones won't pick up the change).

Afterward, org works from any directory, any terminal.

3. What setup asks for

  • Your name — used in the daily welcome banner (org startup).

  • An AI provider — Organizer's natural-language features (org chat, org plan, org reschedule, org goals suggest) call an AI model you bring your own key for. Pick one:

    If you don't have a key yet, just press Enter to leave it blank — you can still use every plain command (org add, org today, org tasks, etc.), none of which call any AI. Anything that does (org chat, org plan, org reschedule, org goals suggest) will tell you to run org setup again once you have a key.

  • Storage — defaults to a local SQLite file in your OS's standard data directory; you don't need to set anything up. If you already run your own Postgres server and want to point Organizer at it instead, org config set storage.database_url ... supports that too.

4. A quick tour

org add "Finish report" --due tomorrow --priority high
org today                 # today's tasks and events
org week                  # this week at a glance
org tasks                 # every task, sorted by priority or due date
org chat "move the report task to friday"
org plan                  # today's AI-generated day plan (cached, generated on demand)
org startup               # full daily rundown: welcome banner, today, week, day plan

Run org --help (or org <command> --help) any time for the full command list and options.

5. Optional: Google Calendar sync

org calendar sync can export your events and recurring schedule blocks to Google Calendar (one-way — Organizer stays the source of truth). This requires your own OAuth client credentials from the Google Cloud Console — this is a per-person credential, not something that ships with the app, and calendar sync is entirely optional.

6. Checking your version

org --version