Raycast

Capture tasks, check today, and drive the timer from Raycast — over a local Unix socket, so nothing leaves your machine.

Enable the integration

  1. In the app, open Settings (⌘,) → General and enable Raycast integration. This creates the local socket the extension talks to.
  2. Install the extension (local build while the beta is out of the Raycast Store):
Terminal
git clone <floating-todos repo> && cd floating-todos/raycast
npm install
npm run dev   # = ray develop: builds and adds the extension to Raycast

After the first ray develop the extension stays installed; assign per-command hotkeys in Raycast → Extensions.

Commands

CommandWhat it does
Today's TasksToday's list grouped by status. opens in the app, ⌘D toggles done, ⌘T starts/stops the timer. Shows priority, source, tracked time, and a running-timer indicator.
Quick AddOne argument — the quick-add string (Buy milk tomorrow 15:00 #home), parsed with the same natural-language tokens as the panel.
Open Todos / Notes / Calendar / Task PoolDeep-links to each window — they work even when the app isn't running yet.
Toggle Focus ModeCollapse to the one-line strip, or expand back.

How it works

List, quick-add, and timer commands speak one-line JSON over a Unix socket at ~/Library/Application Support/FloatingTodos/raycast.sock. Window commands fire floatingtodos:// deep-links, which also launch the app on demand. If the socket is down, Quick Add falls back to the deep-link — capture never fails.