Install It, Talk to It & the ct CLI
createtodo is now a PWA. Install it from the browser and it opens like a native app, complete with an offline-first service worker — your todos are there even when the network isn’t. Under the hood, each workspace now gets its own local database with automatic cleanup of ones you no longer use, and leader election between tabs was stabilized so background tabs stay quietly in sync instead of fighting for the wheel.
ct — createtodo from the command line
Meet ct, the new CLI. List, create, claim, and close todos without leaving the terminal — the same workspace, the same identifiers, the same todos you see in the app. It ships alongside a new OAuth flow for the remote MCP server, so you can connect createtodo to claude.ai as a connector and let an agent read and write your workspace securely.
Due dates that speak your language
The due-date input now understands natural language — and not just “tomorrow”: weeks, months, quarters, and years all parse. It sits right at the top of the popover and the context menu, focuses instantly, and the chip text rolls over like an odometer when a date changes. Overdue todos show their actual date with a red alert calendar instead of a vague “Overdue”.
Conversations on todos
Comments grew up into real discussions: threaded replies and emoji reactions, on an activity feed rebuilt from the ground up. A new actions menu on each comment keeps edit and delete one click away.
Find, preview, glide
Find in view filters the current list from the actions menu, with a proper input group and close button. Hovering a todo shows a preview card rendered like the real detail page, and on the detail page, Space toggles a subtodo preview without leaving the keyboard. You can also group by label now, and a new hold-slide-release gesture lets you press a row’s property menu, slide to an option, and release to pick it — one motion, no clicks.
Improvements
- Creating a todo surfaces the list’s description as a conventions reminder
- Right-click or long-press the create button to choose what happens after create
- Status groups now order In Progress → Todo → Done → Backlog
- Todo rows reserve the widest identifier’s width, so columns stop wiggling
- Typing
--becomes an em dash in titles and descriptions - The todo timer rolls like the breadcrumb counter, at minute resolution
- Same-minute activity runs are netted out, so the timeline shows what changed, not every keystroke of it
- Assignee, label, and priority chips share one symmetric enter/exit animation
- Markdown task lists render with real checkboxes instead of bullets
- MCP and ct can filter todos by parent and label
Fixes
- Switching lists no longer flashes the previous list’s sort order or the previous todo’s activity
- Group and sort changes apply optimistically, instantly
- Escape blurs a focused field before it closes the todo page
- Shape streams keep syncing while the tab is hidden
- Safari no longer gets stuck on phantom local-database locks
- The description editor stopped duplicating typed content on reload
- The subtodo chevron rotates as one icon instead of crossfading