Native macOS app for the MacBook notch. Compact mode stays flush with the hardware cutout and shows one live signal. Hover or click and a work surface drops out from under the notch: an agent cockpit, plus focus, media, calendar, files, clipboard, tasks, and quick launch.
Local-first. Meridian reads Claude Code and Codex transcripts from disk. Nothing is uploaded.
Watches ~/.claude/projects/**.jsonl and ~/.codex/sessions with FSEvents, then classifies each session as awaiting input, running, done, failed, or idle.
Sessions are ranked by what needs you first: a pending approval or a fresh failure, then live work, then finished work, then cold history. A session untouched for 30+ minutes drops to idle so old failures do not keep flashing.
The compact island shows one pill. Click a session to jump back to Codex, Claude, Cursor, Warp, Terminal, iTerm, or Ghostty.
| Module | What it does |
|---|---|
| Focus | 25-minute timer with start / pause / reset and a local completion notification |
| Now Playing | Current track from any media app, via a bundled adapter. Hides itself if unavailable |
| Calendar | Next event and a live countdown through EventKit. Permission is asked on first use, never at launch |
| File Shelf | Drag files onto the notch to park them. Open, reveal, copy path, remove, or zip the set |
| Clipboard | Keep text clips, re-copy, strip whitespace, or delete |
| Tasks | A small local task list |
| Quick Launch | Finder, Terminal, Calendar, Activity Monitor |
| Atmosphere | Clock plus battery, memory, and health at a glance |
swift test
swift build
swift run NotchDeckPackage a signed .app:
Scripts/package_app.sh
open .build/Meridian.appCopy the bundle into /Applications if you want Launch at Login and stable TCC grants. Running from .build works for everything else; the login-item menu row disables itself with an explanation.
Meridian is an accessory app (LSUIElement): no Dock icon. It lives in the menu bar and the notch.
All optional, all lazy. Deny any of them and that module turns itself off.
- Calendar — next event and countdown. Grant from Calendar Access… in the menu or the in-deck button.
- Notifications — focus-timer completion only.
- Media — no grant. Now Playing goes through the bundled adapter.
- Hover or click the notch to expand
Ctrl Opt Spacetoggles the deck- Drag files onto the compact notch to park them in Shelf
- Pin to keep the deck open (saved across launches)
- Click outside to collapse when unpinned
- Menu bar: toggle, pin, calendar access, launch at login, quit
- Multi-display: prefers a real notch, otherwise the main display
macOS 14+. Bundle id is com.codex.NotchDeck so existing Calendar and notification grants stay valid.