The onboarding checklist: what a new install needs, each step shown in the state it is actually in rather than as a list to read past.

## TLDR

- Every "done" derives from a real fact — a registered project, a filled AI queue, tickets on disk, a granted notification permission, saved Discord credentials — so a step cannot be ticked by clicking it, and one done outside the dashboard ticks itself.
- Only adding a project and filling the AI queue are essential; the rest are marked optional because nothing breaks without them.
- Undone steps carry their own actions: register the current directory or pick one, start an unattended session that imports tickets from GitHub (landing on that session), enable browser notifications, open the Discord setups.
- It renders dismissible on the Overview and permanent on the settings page — which is what dismissing promises you can come back to.

## Before writing SPEC.md files

Read https://raw.githubusercontent.com/brillout/sdd/refs/heads/main/sdd.md
