Open Luke as a desktop app window instead of the notch panel

Merged
CH
16d ago
+1776-744

What

Replaces the notch panel with one ordinary Mac app window, laid out as a desktop app.

  • Window (panel-manager.ts, main.ts, window-service.ts): one resizable 1280Ɨ840 window on the main display, with a Dock tile, Command-Tab, and an App/Edit/Window menu. Closing it hides it and the voice keeps running. The Dock tile or a second launch brings it back. Every mode request is answered with expanded, so nothing collapses it.
  • Layout (renderer/desktop/, styles/desktop.css):
    • A sidebar with Luke's face, his voice status and meter, New plan, the plan list, Settings, and the account.
    • The open plan as a document, with a toolbar (Copy plan, Close) and a call bar.
    • An empty state when no plan is open.
    • Settings taking over the sidebar as a page list, with search.
    • Key entry, calendar connect, and feedback as sheets over a dimmed window.
    • Luke's words as a floating card.
  • Reused components: the settings pages, plan document, and new-plan form are the existing ones. The settings content and the form are scaled up with CSS zoom instead of being restyled.
  • Removed from the panel: hover and peek handling and click-through pointer interception.
  • Evidence: scripts/evidence.sh now expects every capture at 1280Ɨ840.

Verification

CI could not verify this. It builds nothing for the Mac. ./scripts/check.sh passes. ./scripts/verify.sh has not been run yet. It must pass on a Mac before merge.

The layout was checked only in fixture runs on Linux under Xvfb. Still to confirm on a Mac:

  • the traffic lights' position over the sidebar
  • dragging the window by its title bar
  • Command-W hides the window, and the Dock tile brings it back
  • the introduction hands the window back at its frame
  • sign-in and onboarding cards, which no fixture reaches

Known gaps

  • The introduction still flies Luke into the notch.
  • The greeting still says "by the notch" (packages/live/src/instructions.ts, proactive.ts).
  • The "Show on all displays" and "Form factor" settings now do nothing.
  • The old panel and notch code (panel-body.tsx, notch-wings.tsx) still exists but nothing uses it. Delete it in a follow-up if this direction stays.
  • docs/STYLE.md cites a panel-manager.ts comment that this PR removes.
  • evidence.sh fails on a display smaller than about 1328Ɨ888, because the window opens smaller there.

šŸ¤– Generated with Claude Code


Open workspace in Conductor