Onboarding ends at a calendar
Onboarding now ends by asking for a calendar — your Mac's own or Google — so meeting quiet can hold announcements from your first sign-in. Skip it and Luke carries on without one. (#561)
Improvements
- Announcements say what an agent is working on, a short phrase Luke derives from the session's transcript, instead of the session's title (#649)
- A Pause announcements switch on the Voice page holds spoken announcements by hand; replies in a conversation you opened still speak (#651)
- The Ask Luke composer also sits at the foot of the History tab, so you can continue the thread without changing tabs (#643)
- Luke names every workspace he creates — your name when you gave one, otherwise a short name for the work — instead of Conductor's random-city fallback (#636)
Fixes
- Fixed History cutting off any ask or reply longer than 400 characters (#629)
- Fixed the Provider keys section reading "The vault answered with something unexpected" for a key stored for a provider Luke no longer carries (#656)
- Fixed the spoken introduction ending on a question you had no chance to answer (#644)
Misc
- Updated the provider set to Conductor, Superset, Claude Code, Codex, and OMP, with Cursor, OpenCode, Copilot, Gemini CLI, and Grok Build staying on as the agents a workspace runs (#645)
Synced provider keys
Enter a cloud provider's API key once and every Mac you sign Luke into has it. A Sync section in Settings governs it: while on, your account's vault holds what this Mac's encrypted store holds, and turning it off deletes every synced copy while the local keys stay. A key your shell configured is never synced — only one you typed into Luke. (#574, #580)
A conversation that outlives the app
The History tab now survives a quit. The thread, and the facts you asked Luke to remember, live in his own application data under a real retention policy — the 200 most recent lines, nothing older than a fortnight — and Clear still empties the file along with the screen. Lines draw as they are being said, each carries its local timestamp, and every chat a line named draws a chip that opens it, even after the chat is archived. (#589, #614, #606, #618, #613)
Improvements
- Luke opens at login, a switch under Appearance backed by macOS's own login items (#585)
- Spoken exchanges run on the OpenAI Agents realtime SDK, which owns the connection, the session configuration, and the tool round-trips (#635, #630)
- Several sessions changing at once arrive as one announcement instead of a run of them (#623, #628, #625)
- Luke observes local OMP sessions, reading their title, status, recap, current tool, and conversation (#584)
- A keyboard shortcut can be removed outright: the row says None, and Reset restores the default (#587)
- A session's parting words are shown whole on its row and its own screen (#633)
- Luke words his own announcements from the observed fields rather than reading a composed sentence (#588)
- Ask about "that chat" right after an announcement and Luke resolves it to the one he just told you about, naming the candidates when nothing settles it (#599)
- Spoken time is no longer metered: the hosted voice quota and the settings it needed are gone (#634)
- Every provider API key hint reads the same way and links to the page that issues the key (#591)
Fixes
- Fixed the Updates row moving under your cursor while an update downloaded (#581)
- Fixed Luke silently losing the ability to lower and restore Music and Spotify, leaving an unkillable helper at full CPU (#582)
- Fixed the landing page drawing its footer hairline across the hero art on phones (#583)
- Fixed the landing page's hero mock spilling outside the phone's screen (#590)
Misc
- Added Sentry crash reporting: unhandled exceptions from every Electron process and native minidumps, carrying no account identity (#632)
- Added the hosted
/api/observeendpoint, which runs each cloud adapter once under the caller's vault keys and answers a bounded roster (#573) - Added hosted act endpoints for messaging a session and creating a workspace (#571, #611, #620)
- Updated how Luke's persona instructions describe his voice (#639)
History
Luke keeps the conversation you have been having with him. A History tab holds every line of the current launch — what you asked, what he answered, and the acts he carried at your request — and each message offers a copy control that takes exactly the words the bubble shows. Clear empties both the thread you can see and the context the model still holds, and the whole tab stays out of session recordings. (#513, #569)
Improvements
- The notch says which apps hold your work: provider marks take the place of the session count beside the housing (#577)
- Luke names each agent by its work and gives you the decision context before he asks a question (#553, #566, #567, #578)
- Luke never asks for folder permission: Cursor and Antigravity sessions no longer read a workspace folder to label their branch (#552)
- Rows say when a session is running inside a Herdr pane (#560)
- Music and Spotify are asked for automation consent only mid-exchange, and only once that player is audibly playing (#550)
- Settings drop the Usage data section: counting and screen recording follow the run mode alone, and PRIVACY.md is the whole of what Luke tells you about either (#563)
Fixes
- Fixed desktop session recordings never reaching PostHog at all (#535)
- Fixed a red voice error appearing when you cut Luke off mid-reply (#564)
- Fixed a slow cloud write being cut short by the observation pass's shared deadline (#557)
- Fixed the admin roster's last-seen instant ignoring hosted usage (#548)
Misc
- Added the hosted provider-key vault, which encrypts a stored cloud provider key at rest and offers no way to read one back (#568)
- Added the websocket realtime endpoint to the voice mint (#562)
- Added the
entireCLI's session hooks for Codex, Cursor, and OpenCode (#549) - Updated an act handler's refusals to name their cause (#572)
Improvements
- Luke uses Echo as his default voice and gives you a short spoken welcome after sign-in (#520, #541)
- Luke keeps his conversation context on the app guide and leaves the tracker's issue roster out of it (#528, #538, #539)
- Replicas workspaces can sleep when their task finishes, and Luke reports unexpected wakes as observation diagnostics (#530, #531, #536)
- Development traces capture Luke's local agent traffic and export attention reviews in the form the model received (#534, #540)
- Onboarding stays out of the way while macOS asks for microphone access (#524, #533)
Fixes
- Fixed provider marks disappearing while Luke speaks (#517)
- Fixed update checks giving up while a newly published release is still uploading (#523)
- Fixed voice conversations reseeding history or changing roster context on clock ticks (#526, #527)
- Fixed Conductor reads including archived workspaces or starting from an unfiltered workspace list (#525, #537)
- Fixed GitHub releases becoming visible before all six downloadable assets finished uploading (#521)
Misc
Improvements
- Luke opens Replicas sessions directly in the Replicas desktop app (#516)
- Luke keeps agent updates concise, specific to the work, and available after meeting quiet ends (#514, #515)
- The admin dashboard makes account status, usage, and controls easier to scan (#511)
Fixes
- Fixed first-launch announcements waiting for an interaction before they could be heard (#477)
- Fixed signed-in users who finished onboarding being offered the introduction again (#512)
- Fixed swallowed admin API failures omitting the upstream 503 cause from logs (#492)
- Fixed hosted macOS releases omitting the PostHog project key and silently disabling recording (#518)
Onboarding
Luke introduces himself to new users. (#497, #508)
Improvements
- Luke is more conversational and proactive about work that needs your attention (#500)
- Luke draws loading rows while a provider roster is temporarily unreadable instead of making those agents disappear (#498)
- The website demonstrates Luke's panel with a live mesh gradient and an animated tour of its presentations (#499, #502, #504)
Fixes
- Fixed Preview deployments failing to complete sign-in (#408)
- Fixed workspace creation losing the provider selected in Settings (#475)
- Fixed the web service omitting the acts package from its runtime wiring (#495)
- Fixed signed-out voice runs reporting the wrong missing credential (#505)
- Fixed workspace-only providers being rejected by the desktop bridge (#507)
- Fixed Apple notarization uploads using the accelerated transfer path that could leave incomplete submissions stuck as In Progress (#509)
Misc
More agents, one roster
Luke observes local Antigravity, Grok Build, and Radius Browser agent chats, alongside Replicas cloud workspaces connected with your own API key. He reads each provider through its documented local or cloud surface, and providers without credentials work as before. (#402, #407, #462, #463)
Improvements
- You can filter the roster by the app or provider behind each chat (#455)
- Luke can create Conductor workspaces and message the live Superset terminal attached to a chat (#392, #450)
- Luke names, recaps, opens, and messages local Cursor chats through Cursor's own records and agent CLI (#383, #387, #390, #400)
- Luke can check for updates or restart into a downloaded update when you ask (#388)
Fixes
- Fixed archived cloud work continuing to appear in the roster (#385, #427)
- Fixed Luke narrating tool calls and adding filler to spoken updates (#451, #470)
- Fixed Luke inventing a recap segment when a session has no recap (#469)

