The Terminal tab
Every coding agent has a Terminal tab: a shell in the agent's own sandbox, with its repository checked out and its GitHub sign-in kept fresh. Start, rename, and end more shells beside it, each marked while it runs, and ⌘F finds in a shell's scrollback. ⌘J, ⌘K's New terminal, the panel's +, and an agent's ⋯ and right-click open one. A shell Luke cannot reach says why, and the sandbox stays up while a terminal is open, stopping five idle minutes after. (#2575, #2592, #2599, #2591, #2639, #2600, #2611, #2622, #2640, #2703, #2814, #2817)
@-mentions
Type @ in the plan or in a coding agent's message box to mention a file, a folder, or one of the plan's sections; in the agent's box, @ also offers the repository's skills and your MCP servers and their tools. A mention is a chip wherever it is drawn, a renamed heading renames its mentions, and Luke never drops one when he corrects the plan. The agent is handed what it cannot read itself, and a server or tool mentioned rides along on the next turn alone. In a File tab, ⌥⌘K mentions the selected lines, pinned to their commit, and a pasted link to an integration's page is a chip that brings its server along. (#2593, #2603, #2586, #2624, #2653, #2664, #2643, #2668, #2683, #2721, #2792, #2795)
Who did what
Everyone is drawn one way: a person on a circle with their picture, and Luke or a coding agent on a rounded square. A plan's "Edited by" line and its section bylines name whoever wrote it, the time opening the history, and a task's ⋯ menu ends with who created and last edited it. A teammate's call is headed by their face and name, their messages in an agent's tab carry it, and an agent a teammate started, an Inbox answer, and a command run on someone's Mac each say whose it was. A task someone else created wears their face in the sidebar, and its card, crumb, Home, and ⌘K name who created it. (#2784, #2794, #2796, #2793, #2779, #2774, #2775, #2773, #2742, #2748, #2702, #2715, #2638, #2853, #2854, #2873, #2875, #2877)
Workspaces, clearer
The workspace heads the sidebar by its tile, its photo or first letter, and who shares it, and the window's title, New task, and a task's crumbs say where you are: "acme › relay" and "5 can edit" over its title. Switching workspaces opens its last task or its home, the Inbox follows, and Search names the others. A personal workspace takes your name. Owners and admins rename a workspace and set its photo, the owner makes members admins and hands the workspace over to leave it, and an invite stays good after whoever sent it leaves. A task whose repository its workspace cannot reach says so over every tab and offers Move to workspace, which says who loses and gains it. (#2718, #2712, #2802, #2719, #2723, #2730, #2808, #2733, #2736, #2741, #2764, #2786, #2788, #2789, #2772, #2749, #2750, #2757, #2820, #2824, #2840, #2845, #2761, #2771, #2803, #2804, #2870)
Tasks
What you work through with Luke is now a task, and the plan is the document inside it: the sidebar, New task, ⌘K, the Tasks menu, and every notice say so. A coding agent's own instructions are its Prompt. (#2835, #2841, #2844, #2848)
Luke links
Copy link to task, in a task's ⋯ menu or the ⋯ beside its title, copies a link that opens the task in Luke at its section: pressed in the window, from another app through tryluke://, or from a browser through a page whose one press opens Luke and which says what to check when nothing opens. (#2695, #2696, #2697, #2819, #2831)
Improvements
- The sidebar lists tasks in one section, grouped by repository, by creator, or not at all, in the order you choose, and filters them by who created them (#2893, #2899)
- The Changes tab and card name who opened the pull request, its reviewers by where each stands, its commit authors, and its review comments (#2862, #2863, #2865, #2878)
- A Mermaid fence in a plan draws as its diagram, in the read view and under its code in the editor (#2890)
- A workspace holds several GitHub installations, listed in Settings › Workspace and managed on GitHub (#2642, #2644)
- Start a task without a name: it stands as Untitled until you name it (#2888)
- An Inbox item standing alone says where it stands, 2 of 8, and steps through the list by its arrows, J, and K, and a settled one offers the next that needs you where its box stood (#2882, #2885)
- A task counts as read the moment it opens, on whichever of its tabs (#2900)
- A pinned task is pinned for you alone, not for the whole workspace (#2901)
- Luke answers sooner on a call, his replies waiting on nothing earlier, and a call greets you from where the last one left off (#2623)
- A link is one quiet underline, a bare address says its host and path with a ↗, and cards, Inbox rows, and notifications name a link rather than print it (#2800, #2815, #2798, #2797)
- Executor joins Settings › Integrations, every tool offered and its approvals put to you (#2590)
- Settings › Integrations searches integrations and tools on its own, and a tool opens onto a page of its own there and in the MCP popover (#2635, #2700)
- A window too narrow for the sidebar folds it to float over the work, and a narrow Inbox opens on its item, the list a press of ‹ Inbox away (#2679, #2680, #2879)
- An Inbox option the agent recommends wears a Recommended badge (#2881)
- A repository out of reach says why under the composer and offers what mends it (#2573, #2588)
- A sign-in Connect cancelled or refused says so, with Try again (#2595, #2604)
- The repository chip says when a workspace's GitHub was removed or suspended on GitHub, rather than that none is connected (#2834)
- Each column's ⋯ offers the chosen tab's actions, and tab housekeeping stays on the right-click (#2783)
- The sidebar sets an unread task in semibold and a read one in a quieter ink, every row 30px tall (#2801)
- Every window draws its words without the Mac's font smoothing (#2807)
- The sign-in's buttons stand taller and wear "Last used" on the corner of the one it marks (#2782, #2785)
- A tool-call group leads with its fold's chevron, wears the failed mark where a call it holds failed, and a subagent's tab groups its calls as its agent's does (#2892, #2907)
- No button, menu item, or command ends its name with an ellipsis (#2821)
Fixes
- Fixed a sidebar group not listing its tasks newest updated first (#2818)
- Fixed Settings saying Connected for a GitHub installation that GitHub removed or suspended (#2828, #2829)
- Fixed an agent's terminals failing to list in a busy account (#2809)
- Fixed "Changed since you last looked" missing a teammate's saves (#2689)
- Fixed Home missing a teammate's agent's open items (#2755)
- Fixed the Call tab not naming a teammate's call (#2694)
- Fixed Choose a model's menu hanging away from its button and showing a stale catalog (#2763)
- Fixed an open popover jumping as its button grew or shrank (#2629)
- Fixed a call's card floating over a version history's versions (#2816)
- Fixed Contact us opening inside the account menu rather than beside it (#2649)
- Fixed Settings › Profile and Settings › Workspace drawing you unlike the rest of the window, and offering Remove on your own row (#2810, #2813)
- Fixed a transparent workspace photo showing its letter tile behind it (#2769)
- Fixed a picture on its own line opening in the plan editor as something you could not edit (#2886)
- Fixed a menu's second submenu item not opening its submenu on hover (#2917)
- Fixed Luke's face moving on the sign-in screen (#2891)
- Fixed an agent's to-do list sitting off its rows' text, its item in progress now wearing the working mark (#2874)
- Fixed an inline chip sitting off its line's baseline, a section's byline sitting off its ⋯, and a page's empty state sitting low (#2856, #2658, #2832)
Misc
- Updated the renderer to load Settings, analytics, and the markdown parser as chunks of their own, its main bundle 18% smaller (#2738, #2743)
- Updated the code's layout so application logic lives in
packages/, under one@luke/*scope (#2648, #2652, #2654, #2659, #2728) - Added screenshots to 0.13.0 from its own build (#2645)
Workspaces
Plans now live in workspaces you share with your team. Every account starts with a personal workspace, and the sidebar switches between workspaces and creates new ones. A workspace's members read and write its plans, its coding agents, and their calls. Settings › Workspace invites people by link, lists the invites still pending, removes members, and connects the workspace's own GitHub organization, whose installation is the only source of its repositories. Your personal GitHub link moves to Settings › Integrations, and the Mac signs in once and holds a session of its own. (#2110, #2111, #2122, #2133, #2151, #2152, #2124, #2250, #2268, #2274, #2396, #2135, #2153, #2414, #2418, #2427, #2500, #2501, #2502, #2503, #2504, #2505, #2508, #2524, #2539, #2566)
Eight more integrations
GitHub, Granola, Mercury, Neon, PostHog, Supabase, Vercel, and Y Combinator join Linear, Notion, Sentry, and Slack in Settings › Integrations. Every tool a server offers is now offered to Luke and coding agents, Slack's writes included. GitHub connects through your own GitHub sign-in. An integration reads Connected only once its server answers with tools, and says the server's own reason when it does not. (#2495, #2499, #2479, #2490, #2532)
The MCP popover
The MCP button in a coding agent's message box searches servers and their tools, lists Connected apart from Not connected, and opens a server onto its tools in place, each tool onto its whole description. Settings › Integrations searches the same way, and a connected row opens onto its tools. (#2527, #2528, #2542, #2554)
Home
With no plan open, Luke rests on a home page that greets you with New plan, what needs you, and your recent plans, which ↑ and ↓ move through. The sidebar's Home row and ⇧⌘H go there. A launch reopens the plan you last had open, its tabs and side panel as they were. New plan is now a dialog over the window with the plan's name and a repository chip. (#2468, #2485, #2494, #2543, #2550, #2562)
The Inbox, one item at a time
The Inbox reads one item at a time beside a list grouped by plan or newest first. What needs you wears a dot and a bold title, and the Needs you toggle narrows the list to it. A settled item shows what it offered with your pick marked, and the list resizes. (#2442, #2465, #2497, #2551)
Fast on your own key
Saving an Anthropic key asks once whether its organization runs fast mode, and Fast is offered on any key that does. When the organization was never granted fast mode, the Fast row says so and links to where you ask for it. A fast step Anthropic refuses runs again at standard speed, and its turn's card says so. (#2544, #2552, #2555, #2556)
Improvements
- ⇧⌘T reopens the tabs you closed, the latest first, each where it stood (#2429)
- The update pill shows only what there is to press, a failed check says so, and Luke's menu can check for updates (#2428)
- An agent's GitHub error offers the GitHub sign-in, and the start or message goes through once you sign in (#2415)
- An integration's sign-in waits with Reopen and Cancel, and says when it failed or did not finish (#2521)
- Every setting has one home in Settings, and Open Settings mends every GitHub and integration refusal (#2418, #2501)
- ⌘K lists the Settings pages, and steps its filters with ⌘[ and ⌘], or ← and → while the field is empty (#2489, #2496)
- A tool row about a page, the board, an agent, code, the plan, or the Inbox opens it (#2484)
- An agent named anywhere, in the Inbox, a transcript, ⌘K, or the archived list, hangs its card and opens its tab (#2523)
- A file is named one way wherever it stands, hangs its card, and opens in the side panel (#2559)
- Copy a link to a plan section from its heading's ⋯, and a mention of it in the plan opens it (#2577)
- A page tab's code toggle shows its version's HTML as a File tab draws a file (#2487)
- An agent's Changes tab is kept, pinned, and named for its agent like the side panel's other tabs (#2439)
- A press on a skill's chip opens its SKILL.md, and a coding agent's Loaded skill row names the skill as /name with its card (#2473, #2557, #2578)
- The Call tab stands a call's first ask and opening look-around where they happened, and folds a spoken turn's words with its work (#2433, #2486, #2436, #2437, #2453, #2449)
- The notetaker writes a correction in place of exactly what it names, and may write a point's parts as sub-bullets (#2460, #2463, #2459)
- Switches turn on in the accent blue (#2518)
- Every menu, modal, hover card, tab, fold, chip, and segmented control is drawn one way across the app (#2536, #2538, #2549, #2553, #2558, #2560, #2531)
- Working, failed, unread, a pull request, a provider, and a time each wear one mark wherever they are drawn (#2526, #2530, #2535, #2546)
- A read that did not land says so the same way everywhere, then offers Retry (#2534)
- Fewer lines describe the screen back to you (#2567)
Fixes
- Fixed a goodbye's turn reading as failed rather than settled (#2433)
- Fixed the voice and call windows being sent the planning conversation (#2464)
- Fixed Settings pages drawing at the wrong size on their first frame (#2425)
- Fixed menus scrolling sideways and the MCP popover's title sitting off (#2475)
- Fixed the Inbox's crumbs and name drawn out of place, in a window and in full screen (#2488, #2493)
- Fixed the account menu and the in-place GitHub and integration remedies missing after the workspaces change (#2517, #2520)
- Fixed Granola's and PostHog's marks (#2519, #2529)
Misc
- Updated PRIVACY.md to describe what shipped on 13 October and what the new integrations can do (#2462, #2495)
- Updated Better Auth to 1.7.7, Effect to 4.0.4, and Drizzle to v1 (#2409, #2412, #2424)
- Updated the renderer to ship as ES modules, with a smaller bundle (#2506)
- Added screenshots to 0.12.0 and retook 0.2.0 through 0.11.0's from each release's own build (#2435, #2481, #2482, #2492)
- Added changelog pages ten releases at a time, a page for each release, and an RSS feed (#2498, #2507)
The Call tab
Each plan's calls now read as one thread in the Call tab, which takes the place of Transcript and Work. What you and Luke said stand as messages, and the work Luke did for a line, his thinking, commands, and subagents, sits right under the line that asked for it, drawn as a coding agent's turn is. Each call ends on how long it ran, and its card says why it ended and the model it ran on. (#2365, #2368, #2369, #2378, #2404, #2242, #2246, #2410, #2417)
The plan is one document
A plan is now one Markdown document you edit in place, its title inline, and the tab, the sidebar, and ⌘K follow the title as you type. New plans start as a copy of your account's template, which you write in Settings › Plan template, with a version history of its own. The default template reads like a design doc between teammates: context, goal, approach, interfaces, alternatives, hard parts, testing, and open questions. Luke writes each note under whichever of your headings it belongs to, and plans from earlier releases carry over as documents. (#2114, #2182, #2186, #2190, #2193, #2219, #2220, #2226, #2248, #2275, #2315, #2317, #2320, #2331)
Version history
Every save to a plan is kept. Version history, in the plan's ⋯ menu, takes the whole window the way Settings does: each version stands under who wrote it, a version of several changes opens the sections it changed, Open goes to where it was written, and Restore puts it back as a new version, so a restore can be undone too. Each section says who last edited it, and that line opens the version. (#2011, #2017, #2025, #2042, #2063, #2147, #2254, #2261, #2272, #2292)
The Inbox
Coding agents post what they need from you, a decision, a manual step, or a question, to the plan's Inbox rather than leaving it in a transcript. An item can carry text, links, exact lines of the repository, and pictures the agent took in its sandbox, and you answer it in the plan's Inbox tab. The sidebar's Inbox lists every plan with items waiting and counts them, and a new item raises a notification and a badge on Luke's Dock icon. (#2161, #2162, #2163, #2216, #2218, #2228, #2238, #2258, #2288, #2312, #2327, #2392)
The Changes tab
Once a coding agent opens a pull request, its Changes tab shows the diff file by file, beside the file tree narrowed to the changed files, with the file count, the lines added and removed, and a link to the files on GitHub. Open it from the agent's Changes chip, the side panel's +, the summary, or ⌘K. (#2307, #2395)
Skills
Type / in a coding agent's message box to list the agent skills in the plan's repository (.agents/skills and .claude/skills). The one you pick is a chip the agent loads, and a chip in a sent message opens the skill's SKILL.md in a File tab. Luke and coding agents are offered the repository's skills on their own too, and load one when it fits. (#2325, #2334, #2337, #2375, #2394)
Commands on your Mac
Luke, coding agents, and their subagents can run a shell command on your Mac. It runs in your login shell from your home folder, with no approval step, and draws in the transcript as a command row tagged On your Mac, with what it printed. It is on by default, and Settings › General › Let agents run commands on this Mac turns it off. (#2359, #2374, #2376, #2388)
Luke and coding agents share one runtime
Luke's planning model now runs on the same agent runtime as coding agents, so both have the same tools: the repository's skills, your integrations, the web, commands on your Mac, and pages. Both hand work to subagents the same way: Luke's subagents run in the background so the call keeps going, and a coding agent can wait on its subagent or work beside it. A message to a coding agent no longer stops a subagent it is waiting on, and every subagent row names the model and effort it ran on. Every model call on Luke's key, a coding agent's and each generated title included, now counts toward your account's usage. (#2132, #2244, #2363, #2365, #2367, #2372, #2386, #2387, #2402, #2403)
Pages
Luke and coding agents can show you an interactive page, such as a mockup or a comparison, in a Page tab in the side panel, drawn in a sandboxed frame. Each page keeps its versions, and the side panel's + lists the plan's pages. (#2360, #2362, #2364, #2370)
Integrations
Connect Linear, Notion, and Sentry in Settings › Integrations, and Luke, coding agents, and their subagents use them through each service's own MCP server. The MCP button in a coding agent's message box lists each server's tools, switches a server off for that chat, and connects one in place. (#2070, #2319, #2328, #2329, #2333, #2336, #2358)
The call follows you
A call keeps going when you switch plans, open Settings, or leave Luke. While its plan is out of sight, the call bar stands at the foot of the sidebar, in the window's corner, or in a floating window over other apps, with a button back to the call's plan. Starting a call on another plan asks first. (#2123, #2136, #2169, #2185, #2209, #2224, #2251)
Pin, archive, and group plans
The sidebar groups plans by repository, each row with when it last changed, and each repository has a + that starts a plan on it. Pin a plan or a repository to keep it on top on every Mac you sign in on, and archive a plan to put it away read-only; Delete is now Permanently delete. A plan's hover card shows its repository, its coding agents, and their pull requests. (#1992, #2001, #2027, #2028, #2034, #2060, #2064, #2068, #2074, #2120)
A command palette
⌘K opens any plan, coding agent, subagent, setting, or command, and any file in the open plan's repository, with a filter for each kind. (#2010, #2192, #2212, #2399)
Improvements
- Coding agents open as tabs in the plan's own column, beside the plan, with a + of their own (#2076, #2077)
- A summary at the plan column's right lists its tabs, coding agents, subagents, and files, pinned open, folded to a rail, or hung as a card (#2105, #2115, #2318)
- Attach files to a message to a coding agent with the + beside Send, by pasting, or by dropping them (#2083, #2085, #2116, #2159)
- Dictate into a coding agent's message box or the new-plan composer with the mic button (#2106, #2107)
- A coding agent keeps a live to-do list in its transcript (#2075)
- A coding agent watches its pull request's CI and fixes what fails, where the GitHub App may read the checks (#2058)
- Archive a coding agent from its tab or the summary, and bring it back from the summary's Archived fold (#2252, #2276)
- Settings › Coding agents takes your own Anthropic and OpenAI API keys, and coding agents run on them (#2078, #2079, #2080, #2335)
- The model picker offers a model's smaller context window, per agent or as the default (#2046, #2047)
- The File tab has a file tree that searches the whole repository, breadcrumbs, back and forward, copy and download, and a link to the file on GitHub (#2051, #2081, #2082, #2086, #2125, #2131, #2139, #2154)
- A file Luke showed opens with his note over the lines he showed (#2264)
- ⌘F finds within the tab you are in (#2156)
- A Zoom setting under Settings › Appearance, stepped by ⌘+, ⌘−, and ⌘0 (#2053)
- The window reopens where you left it, ⌘W with no tab open closes it, ⌃⌘F goes full screen, and Quit asks first during a call (#2160)
- Settings pages name themselves at their top and group their rows in cards, and anything that cannot be undone asks in a dialog (#2340, #2346, #2347, #2348, #2349)
- The sidebar's account opens a menu with Settings, the changelog, and feedback, and the gear beside it goes straight to Settings (#2232)
- Toasts stack in the window's corner, and archiving, deleting, and an agent's end offer an action in theirs (#2013, #2118)
- Side panel tabs drag to any place, have a right-click menu, and pin to the sidebar (#1991, #2057, #2061)
- Each coding agent wears its harness's mark and each subagent its model's, with a ring while it works and an alert when it fails (#2067, #2189, #2290)
- An agent's tab hovers a card with its model, its latest step, and when it last moved (#2049)
- A finished turn says how long it worked, and that line's card names its model, its tokens, and what it cached (#1986, #2038, #2155, #2167)
- A context ring beside the agent's model shows how full its context window is (#2014)
- The model picker shows the newest model of each family until you search (#2031)
- Coding agents are titled from their first exchange, and subagents get short titles too (#2069, #2150)
- Luke asks one question at a time on a call (#1994)
- Links in a transcript or an Inbox item open in your browser (#2300, #2352)
- Folds and popovers open and close with motion, and every scroller draws one thin scrollbar (#2253, #2311, #2321)
- One focus ring for every control and every field (#2304, #2357)
- Settings › Updates names the commit a build was cut from (#2408)
- A repository is drawn with its owner's picture (#2026)
- Actions in Luke's own menus are named without a trailing ellipsis (#2416)
Fixes
- Fixed a coding agent on Fast failing at its first step: Fast now runs on Luke's Anthropic key, and says it is unavailable on your own key (#2239, #2366)
- Fixed Luke not ending the call when you asked him to (#2054)
- Fixed the notetaker leaving out what a call settled unless you said yes to it (#2040)
- Fixed coding agent notifications not arriving (#2052)
- Fixed a deleted plan keeping its calls, its running coding agents, and their sandboxes (#2298, #2303, #2326)
- Fixed a deleted account keeping its Linear grant (#2299)
- Fixed a coding agent started with only a file never starting (#2119)
- Fixed a coding agent reading as running after its messages were merged into one (#2048)
- Fixed asking for a coding agent also starting a background worker (#2127)
- Fixed a File tab that could not read its file (#2030)
- Fixed a file Luke showed opening at main's head rather than the commit he read (#2316)
- Fixed the File tab copying line numbers with the code (#2330)
- Fixed a coding agent's sandbox too small to run the repository's linter (#2016)
- Fixed the sidebar saying there were no plans before the list was read (#2294)
- Fixed popovers opening under the whiteboard (#2045)
- Fixed the message box's popovers opening away from their button (#2037)
- Fixed Luke failing to read a newer service's answers (#2210)
Misc
- Updated the avatar set with room around the face for profile photos (#2021)
- Added screenshots to the 0.7.0 through 0.11.0 entries, and linked every entry to its pull requests (#2041, #2062)
- Updated PRIVACY.md to describe what Luke keeps today (#2287)
- Updated the service to delete a finished agent run's history at once, and to log a failure's kind but never its detail (#2310, #2332)
Coding agents work alongside you
Ask Luke in a planning call how a coding agent is doing, or tell one what to do, and Luke answers or steers the right agent. A coding agent can now edit the plan the way Luke's notetaker does, and the plan says which agent made each edit. New coding agent in the side panel's + opens a draft agent whose first message is its task, so it starts on your task instead of the plan. Each agent gets a generated title, and you can rename it from its tab's right-click menu. (#1958, #1959, #1960, #1962, #1964)
Subagents
A coding agent hands scoped work to read-only workers and picks each one's model and effort. Each worker draws as a subagent row in the agent's transcript, and the row opens the worker's own tab in the side panel. (#1954, #1961)
Improvements
- Each coding agent shows what it costs in tokens and dollars (#1957)
- The pull request pill shows the pull request of the branch checked out in the agent's sandbox, whatever branches it moved through (#1965)
- The Code tab shows every snippet Luke showed on the plan, and a snippet opens its whole file in a File tab (#1956, #1967)
- The side panel's + opens and closes coding agent and subagent tabs, with the same searchable menu the pickers use (#1950, #1952)
- Side panel tabs scroll sideways instead of shrinking to icons, and the tab strip fades only an edge that hides a tab (#1947, #1955)
- Every transcript uses the Work tab's style (#1943)
- The agent's model shows in the message box (#1944)
- Luke starts reading the plan's repository the moment a call starts, while he greets you (#1938)
- Luke always shows in the Dock and ⌘Tab (#1941)
- The theme defaults to System (#1949)
Fixes
- Fixed the Code tab jittering as it scrolled (#1972)
- Fixed the Work and Code tabs losing a plan's work after a restart (#1951)
- Fixed a dragged tab stopping short of either end of the tab strip (#1955)
- Fixed a coding agent's shell starting outside its checkout (#1946)
- Fixed a shadow behind the composer's card (#1939)
Misc
Coding agents
Start a coding agent from a plan. Start in the plan toolbar hands the plan to an agent working in a cloud sandbox on the plan's repository, on your default model, and its chevron picks the model, its effort, and Fast for this run from the Anthropic and OpenAI models on offer. Each agent gets a tab in the side panel beside Board, Code, and Transcript, with a live transcript of what it thought, ran, and wrote, a message box under it that steers the agent mid-run, and Stop. The tab's head wears the agent's branch, then its pull request with its state and checks, and offers Open pull request, Copy branch name, Copy checkout command, and View changes on GitHub. A macOS notification says when an agent finishes and names the pull request it opened, and its tab wears a dot until you look. Settings › Coding agents holds the default model and effort. (#1862, #1871, #1872, #1877, #1899, #1900, #1903, #1906, #1907, #1919)
Planning on a GitHub repository
Each plan is about a GitHub repository, reached through the Luke GitHub App. The new-plan composer's chip picks it, with your recent repositories, a search over every repository the App reaches, and a link to install the App; the plan menu offers Change repository… and Open on GitHub. Luke reads the repository and shows its code from a checkout in the cloud, so planning no longer runs commands on your Mac. The local-folder path is gone: a plan from an earlier release opens on the repository picker. Sign in with GitHub now goes through the Luke GitHub App too. (#1863, #1866, #1868, #1870, #1877, #1885)
Improvements
- Back and forward through plans and Settings, with ⌘[ and ⌘], title-bar buttons, a Go menu, and the mouse's back and forward buttons (#1921)
- A Theme setting under Settings › Appearance: Light, Dark, or System (#1934)
- A light palette for the window, the code, and the whiteboard (#1936)
- Drag the side panel's tabs into a new order, or move one with ⇧⌘← and ⇧⌘→ (#1935)
- The side panel drags out until the document's floor, and full screen asks a longer pull (#1923)
- A sleeker sign-in that waits in place while the browser answers, with Cancel (#1926)
- Send feedback and Suggest a feature open a standard dialog, with screenshots attached, pasted, or dropped (#1928)
- Escape leaves Settings (#1921)
- Every Settings pop-up is the app's own searchable menu, and the effort is a segmented control (#1877, #1888)
- The voice transcript reads as a conversation, each call from a divider with its day and time (#1877, #1898)
- New plan and the agent's message box share one composer (#1877, #1933)
- Copy plan moved into the plan's ⋯ menu and keeps ⇧⌘C (#1872, #1877)
Fixes
- Fixed Settings' toolbar ending Reset to defaults short of the edge (#1925)
- Fixed glyph and labelled buttons drawing in several styles across the window (#1929)
Misc
A Work tab for what Luke thought and ran
A new Work tab in the side panel shows each planning turn like an agent transcript: what Luke's planning model thought, the tools it called, and what it wrote. A background worker's whole session opens from its call in the tab. (#1893, #1894, #1895, #1901, #1904, #1905)
Improvements
- The plan column and the side panel use Cursor-style tabs that go icon-only when narrow (#1902, #1910)
- The window uses one spacing scale throughout (#1913)
- Transcript call headers stick flush to the top of the scroll area (#1909)
- A tab's close button draws full size, dim at rest and brighter on hover (#1912)
Fixes
- Fixed Luke falling silent or losing the lead on a planning call (#1908)
- Fixed the right-panel toggle moving and missing rapid clicks (#1892)
- Fixed title-bar buttons showing through sliding panes (#1914)
- Fixed New plan in the folded sidebar not leaving the new-plan page (#1915)
- Fixed the sidebar's plan row missing its rename pencil (#1915)
Misc
- Removed the Quit Luke buttons from sign-in and Settings, since ⌘Q in the app menu quits Luke (#1916)
A new home for your plans
Luke opens on a composer for a new plan, beside a sidebar that lists your plans newest first. The sidebar resizes, folds away with ⌘B, and opens Settings from one account button at its foot. Rename a plan, or delete it after a standard confirmation, from one plan menu in the toolbar's ⋯ or a right-click in the sidebar. (#1826, #1827, #1831, #1835, #1836, #1842, #1847, #1856)
A side panel for the board, the code, and the transcript
A plan's whiteboard, the code Luke shows, and the transcript of what was said now sit in a right side panel with tabs. The panel runs full height, goes full screen, and opens by itself the first time Luke draws or shows code in a plan. Luke draws on the whiteboard as he talks, lays it out by Excalidraw's guides, then looks at what he drew and fixes what he sees. (#1798, #1799, #1816, #1828, #1829, #1833, #1841, #1851, #1864, #1878)
Luke as a planning teammate
Luke plans with you rather than interviewing you: he takes notes live, doesn't assume you already know what you want to build, and opens each call on what was said on the plan's earlier calls. He hands slow work to a background worker and tells you its result at a natural pause, and Stop cancels that work too. (#1792, #1813, #1815, #1817, #1820, #1824, #1825)
Improvements
- Keyboard shortcuts cover the whole app and are listed in the menu bar (#1844)
- Settings has a search field, a Back button, and Reset to defaults beside the page title (#1838, #1848, #1859)
- Planning replies stream sentence by sentence, never ahead of what Luke has actually done (#1802)
- A planning call picks up where it left off after a lost connection (#1803)
- The stop key silences Luke at once (#1795)
- The sidebar and side panel open and close smoothly, and snap when you drag past their bounds (#1850)
- Usage is still counted, but there is no daily allowance anymore (#1860)
Fixes
- Fixed one call's end touching the next call (#1818)
- Fixed Markdown showing up in Luke's spoken replies (#1793)
- Fixed answers crossing between two actions run at the same time (#1873)
- Fixed Stop not reaching a planning turn (#1874)
- Fixed the voice losing track of a planning turn waiting on background work (#1875)
- Fixed the window scrolling sideways when the side panel opened on Luke's code (#1884)
- Fixed a fade band at the top of Settings pages (#1857)
- Fixed all-caps labels left in the app (#1865)
Misc
Improvements
- Luke speaks first when a planning call opens, starting from what to build or from where the plan stands (#1785)
- Luke stops asking once the plan is enough for an agent to build from, and says the plan is complete (#1783)
- Web search answers faster during a planning call (#1788)
- Luke fills your pauses with fewer "mhm"s and "okay"s (#1784)
- You can delete an open plan from its header, after Luke asks you to confirm (#1786)
Fixes
- Fixed a web search cut short reading as one that found nothing (#1788)
Misc
- Updated the README and tryluke.dev to lead with feature planning (#1787)
Plan a feature with Luke
The Plans tab holds named feature plans, each on a fixed template written for
a coding agent to pick up. Start a planning call and Luke asks one question at
a time while a notetaker writes the plan as you talk, streaming each draft to
your Mac. Point a plan at a folder on your Mac and Luke reads the code there to
answer his own questions instead of asking you; each command runs in a sandbox
with no network, no writes, and no .env files. He can also search the web and
read public pages, and with GitHub connected he reads your repositories.
(#1730,
#1734,
#1739,
#1745,
#1749,
#1750,
#1755,
#1760,
#1776,
#1777,
#1779)
Luke opens as a Mac app
Luke opens in an ordinary window with a Dock tile instead of the notch panel, on two tabs: Plans and Settings. For now Luke speaks only on a planning call, so briefings, the launch greeting, and the talk key outside a plan are off, onboarding is skipped after sign-in, and the Sessions and Conversation tabs are hidden. (#1743, #1755, #1775, #1782)
Improvements
- Luke runs on GPT-6.1 Sol (#1772)
- A planning call survives a dropped connection instead of ending (#1755, #1756, #1758)
Fixes
- Fixed a planning call's plan losing sections it had already written, leaving them Unanswered (#1780)
- Fixed the settings search drawing under a nested page's header (#1644)
Misc
One brain, running on Luke's service
Luke's replies and announcements come from one brain that remembers across turns, and it runs on his service rather than on your Mac. Once a minute the service checks your Conductor sessions and wakes the brain with what changed, so a session that finished or needs you is noticed whether or not your Mac is awake. Ask about a session and he reads what it did, including the chat's own conversation. (#738, #865, #1038, #1069, #1079, #972, #1421)
Voice on your Luke account, and voice alone
Spoken exchanges need no OpenAI key of your own — every call runs through Luke's service on the account you signed in with, so the Voice page loses its Provider section and a key an earlier build stored is dropped at launch. Hold the talk key and the microphone is open for exactly as long as you hold it; release it and Luke keeps talking until the stop key or Escape. The Voice row offers all 22 Live voices, with Marin as the default.
The Ask Luke composer, its ⌥L shortcut, and typed asks are gone. (#933, #956, #1006, #1013, #1381, #1417, #1166)
The Conversation tab
History is now Conversation, and it draws the account's one thread as the service holds it, so a Clear on any device empties it everywhere. Luke's replies render as Markdown, each action he took is a row saying what he did with a chip that opens the session it reached, and several in one turn fold under a line that counts them. An ellipsis beside each of his messages opens thumbs up and down; a thumbs down offers a feedback composer with the message quoted, and nothing leaves your Mac until you press Send. (#795, #977, #740, #936, #939, #1473, #1489, #873, #747, #1029, #1462)
Luke's notebook
Luke keeps a notebook on the service: what he knows about you, the decisions worth remembering, and a dated note for each day he works. Before answering about prior work, dates, people, or preferences he searches it and reads only the lines he needs. A read-only Memory page in Settings shows the notebook as he wrote it. (#1475, #1484, #1491, #1477, #1478, #1479)
Your Conductor key lives in the vault
Connect on the Connections row stores your Conductor key in your account's vault, never on your Mac, and a key an earlier build kept locally is handed over once and deleted here. Onboarding asks for that key right after your first sign-in, ahead of any session row and the calendar step. (#1260, #1267)
Improvements
- Luke greets you by first name at every signed-in launch, and the spoken introduction waits for your first sign-in instead of greeting a stranger (#1204, #1254)
- Briefings are two short sentences at most, subject first, and never a title read aloud (#1378)
- A voice call opens already knowing your roster, so "anything need me?" is answered without a round trip (#1226)
- A reply that only needed a read is spoken the moment its words form, and Luke may read ahead to a session or a notebook search while you are still speaking (#1164, #1229)
- Every spoken exchange is kept, including the ones Luke answers himself, so your words and his come back after a relaunch (#1318, #1319)
- Captions show your own words as you say them, in a quieter tone, and every segment of a longer reply rolls up under the housing (#1464, #883)
- You can stop an ask: a Stop on a waiting ask is honored when its turn starts, and a Stop on a running one ends only the turn it was aimed at (#1155, #1258)
- The Voice page's Pause announcements switch becomes Announce when sessions need you, on by default; switching it back on reads the still-true held ones out together (#686)
- A briefing on offer opens a muted session on your Mac so Luke speaks it here when you are present, and is pushed to your phone when you are not (#1404)
- Pressing a filled thumb takes a rating back, and the message stands unrated on every device (#1467)
- Luke reads an agent's messages whole instead of the first 400 characters, and walks a long Conductor chat to its end (#916)
- Luke's persona is a set of rules with a banned-phrase list rather than exemplars, so a day of announcements no longer hardens into stock phrases (#875)
- An action whose effect is uncertain after a crash shows as unknown in the Conversation, distinct from a refusal, and Luke never retries it on his own (#943)
- A Conductor workspace can be created with Fable 5.1 or GPT-6 Astra as its agent's model (#758, #759)
- A settings search result lands the keyboard on the row's control rather than the page header (#1428)
- The Conversation tab's Clear moves beside the tab bar and shows only while the thread has lines (#778)
- tryluke.dev prerenders the landing, About, Changelog, and Privacy pages, so link previews and visitors without JavaScript see the page (#716)
Fixes
- Fixed a workspace created or an agent added through Luke going out with Conductor's default agent, model, and effort instead of the pairing you chose (#1443, #1486)
- Fixed a voice chosen on the Voice page not taking until the standing call had idled out (#1470)
- Fixed asking Luke to create a workspace in a Conductor cloud project being refused with "No listed project matches that identity" (#876)
- Fixed asking Luke to flip the Captions switch being refused with "Captions takes no effort level" (#895)
- Fixed clearing a setting answering "Could not save that setting on this system" and coming back at the next launch (#1252)
- Fixed Mission Control tiling the notch panel in the middle of the desktop after an introduction takeover (#1225)
- Fixed quitting Luke mid-meeting dropping the meeting hold on announcements until the next poll (#1141)
- Fixed Luke saying "I couldn't write that ask down" for a follow-up asked seconds after a question (#1476)
- Fixed a spoken ask's row landing one word short of what you said, and a spoken line vanishing from the Conversation two seconds after you finished (#1482, #1465)
- Fixed a reply drawing above your question when a spoken ask entered a turn late, and an aside sorting up into a turn that had settled (#1297, #1473)
- Fixed "Still thinking" dots drawing above later replies for an interrupted turn (#1461)
- Fixed the feedback composer opened from a thumbs down returning to Settings instead of the Conversation (#1466)
- Fixed an announcement's arrival line reading a session title from before the pass that named it (#1407)
- Fixed the Conversation drawing Luke's reply twice, and what he said aloud drifting from the words it recorded (#891, #870)
- Fixed a voice call ending at the provider's hour cap with a red "[object RTCErrorEvent]" caption; an idle call now retires itself after five minutes (#854)
- Fixed the key slot and feedback composer popups opening with empty black above their words on a Mac without a notch (#715)
- Fixed the lead provider mark hopping left and springing back as the capsule unfolded (#777)
Misc
- Updated the provider set to Conductor alone: Superset, the local Claude Code, Codex, and OMP observers, and the Linear connection are removed (#1200, #1201, #1207)
- Updated a live launch to remove the retired local brain database an earlier build left on your Mac (#1294)
- Updated PRIVACY.md for the scheduled observation of your Conductor sessions, voice on the account alone, spoken exchanges kept on the service, the read-ahead a spoken ask may make, and the notebook's search (#1069, #1229, #1422, #1480)
- Updated the landing page's footer to close on a "© 2026 Stage Inc." line (#1380)
- Updated the third-party notice to name every OpenClaw port the code carries (#1411)
- Updated the About page portraits to full-resolution JPEGs with their metadata stripped (#673)





























