# 21 — Quick-add registry ## Goal A single global `+` button on the dashboard (and a `cmd+k` palette anywhere) that lists actions contributed by modules. ## Depends on - 20 ## Scope - `QuickAddAction` type: `{ id, label, icon?, shortcut?, run: () => void | Promise }`. - Modules register via manifest. Registry exposes a sorted list. - UI: floating `+` on dashboard opens a sheet of actions; `cmd/ctrl+k` opens a command-palette-style modal (use `cmdk` package). - Default actions: New event, Add to shopping, Add to tasks, New note. ## Out of scope - Fuzzy search across data (search adapter is a later concern). - Action history / recents. ## Acceptance criteria - [ ] Adding a new module that registers a quick-add appears in both the FAB sheet and the cmd-k palette without touching core. - [ ] Keyboard navigation works in the palette (arrows + enter + escape).