Skip to content

Releases: ReviewStage/luke

Luke 0.5.0

Choose a tag to compare

@github-actions github-actions released this 03 Sep 17:35
0dba735

What's Changed

  • feat(panel): draw the Radius mark from the logomark Radius now publishes by @dastratakos in #642
  • feat(conductor): have Luke name the workspaces he creates by @dastratakos in #636
  • feat(desktop): put the Ask Luke composer at the foot of the History tab by @dastratakos in #643
  • feat(hosted): mobile voice session — mint + pre-serialized roster context by @dastratakos in #616
  • fix(desktop): keep the practice reply free of follow-up questions by @dastratakos in #644
  • feat(desktop): add a calendar step to onboarding by @dastratakos in #561
  • refactor: trim providers to Conductor, Superset, Claude Code, Codex, and OMP by @charleslpan in #645
  • fix(history): keep History lines whole and bound only the model render by @dastratakos in #629
  • feat(hosted): read a Conductor session's conversation through its documented endpoint by @dastratakos in #647
  • feat(ios): draw session messages as Markdown by @dastratakos in #640
  • feat(ios): read a Conductor session's conversation in the detail view by @dastratakos in #637
  • feat(ios): add LukeWatch watchOS app target by @dastratakos in #652
  • feat(ios): realtime session in LukeKit + push-to-talk UI by @dastratakos in #617
  • feat(desktop): add a Pause announcements switch by @charleslpan in #651
  • feat(ios): add session details menu by @dastratakos in #654
  • fix(ios): keep API capitalized in the key editor placeholder by @dastratakos in #655
  • fix(hosted): list only the providers the vault still accepts by @dastratakos in #656
  • feat(ios): add the Luke icon to the Apple Watch app by @dastratakos in #657
  • feat(attention): derive a local session's subject and name it in announcements by @charleslpan in #649
  • chore(docs): remove committed iOS screenshots by @dastratakos in #661
  • docs(agents): forbid committing screenshot evidence on every platform by @dastratakos in #662
  • feat(ios): add voice settings sheet to the voice screen by @dastratakos in #658
  • chore(release): v0.5.0 by @charleslpan in #669

Full Changelog: v0.4.0...v0.5.0

Luke 0.4.0

Choose a tag to compare

@github-actions github-actions released this 02 Sep 17:36
4f29fbf

What's Changed

  • refactor(hosted): drop the vault hint column by @dastratakos in #580
  • fix(desktop): keep Updates in place while downloading by @charleslpan in #581
  • feat(desktop): open Luke at login by @charleslpan in #585
  • feat(analytics): name who opened a counted voice exchange by @charleslpan in #586
  • feat(desktop): let a keyboard shortcut be deleted outright by @dastratakos in #587
  • fix(web): keep the footer hairline off the hero mock on phones by @dastratakos in #583
  • feat(desktop): add hosted vault client methods and a Synced keys settings section by @dastratakos in #574
  • fix(duck): read automation consent about the player's process, on a deadline by @dastratakos in #582
  • feat(ios): manage provider keys in the hosted vault by @dastratakos in #570
  • fix(ios): sign development builds ad hoc so keychain persists sign-in by @dastratakos in #592
  • Remove standing session notice requests by @charleslpan in #593
  • fix(desktop): unify the API key hints, linked on their destinations by @dastratakos in #591
  • fix(web): keep the hero mock's wings inside the phone's screen by @dastratakos in #590
  • fix(ios): cut the app icon full-bleed so iOS masks it once by @dastratakos in #595
  • feat(providers): observe local OMP sessions by @aaronjmars in #584
  • chore(ios): set marketing version to 0.1.1 by @dastratakos in #597
  • feat(hosted): add observe-on-demand endpoint by @dastratakos in #573
  • feat(ios): support light and dark mode by @dastratakos in #596
  • feat(ios): move sign out into the header avatar menu by @dastratakos in #594
  • fix(realtime): resolve "that chat" after announcements instead of guessing by @dastratakos in #599
  • feat(ios): show the signed-in user's cloud sessions by @dastratakos in #576
  • feat(ios): add session search to the main page header by @dastratakos in #601
  • fix(ios): abbreviate session row timestamps the way desktop does by @dastratakos in #604
  • fix(ios): title the main page Sessions instead of the account name by @dastratakos in #605
  • refactor(voice): let the voice word Luke's announcements by @charleslpan in #588
  • feat(ios): draw the provider key editor with the system sheet vocabulary by @dastratakos in #603
  • feat(history): show local timestamps on conversation entries by @charleslpan in #606
  • fix(ios): redact the real session row for the skeleton loader by @dastratakos in #607
  • feat(ios): add session filtering and sorting beside search by @dastratakos in #602
  • feat(hosted): mobile act endpoints — message a session, create a workspace by @dastratakos in #571
  • feat(ios): stand Luke's loading screen over the app's first load by @dastratakos in #598
  • feat(ios): write-path act UI — session composer and workspace creator by @dastratakos in #575
  • feat(hosted): widen mobile acts to every provider and act the adapters carry by @dastratakos in #611
  • feat(history): stream the bubbles while their words arrive by @dastratakos in #614
  • fix(desktop): mirror conversation history across every display's panel by @dastratakos in #613
  • Remove mobile sessions title by @dastratakos in #615
  • Persist conversation history and remembered preferences by @charleslpan in #589
  • fix(ios): let the sessions list stand in for the launch loading screen by @dastratakos in #619
  • feat(desktop): open a history line's chats from pressable chips by @dastratakos in #618
  • feat(voice): batch nearby session notifications by @charleslpan in #623
  • test: remove prompt wording assertions by @charleslpan in #624
  • fix(voice): keep current batched notices by @charleslpan in #628
  • fix(voice): keep sparse announcements fact-closed by @charleslpan in #625
  • feat(ios): add PostHog analytics to the mobile app by @dastratakos in #627
  • fix(ios): scroll session rows behind the bar instead of clipping them by @dastratakos in #626
  • Add Sentry crash reporting by @charleslpan in #632
  • Improve realtime voice reliability by @charleslpan in #630
  • fix(ios): drop sort details and filter counts from the options sheet by @dastratakos in #631
  • feat: remove hosted voice quota enforcement by @charleslpan in #634
  • feat(voice): adopt the OpenAI Agents realtime SDK for voice transport by @charleslpan in #635
  • feat(session): retain recaps whole and excerpt them only at the model edges by @dastratakos in #633
  • feat(hosted): carry the workspace agent table to mobile and take a selection back by @dastratakos in #620
  • feat(ios): session chat screen, roster acts, and a native New Workspace flow by @dastratakos in #612
  • feat(ios): long-press a chat bubble to copy its words by @dastratakos in #638
  • refactor(persona): state Luke's voice as decided axes rather than a bullet list by @charleslpan in #639
  • chore: prepare Luke 0.4.0 by @charleslpan in #641

New Contributors

Full Changelog: v0.3.13...v0.4.0

Luke 0.3.13

Choose a tag to compare

@github-actions github-actions released this 29 Aug 00:44
865cbee

What's Changed

  • fix(web): keep the roster's Last seen from trailing Last active by @dastratakos in #548
  • fix(desktop): record session replays from first paint by @charleslpan in #535
  • chore: register entire CLI hooks for codex, cursor, and opencode by @dastratakos in #549
  • feat(desktop): raise media players' consent dialogs at the last possible moment by @dastratakos in #550
  • feat(providers): never read a session's folder for its branch by @dastratakos in #552
  • Fix Luke's agent announcements and natural voice by @charleslpan in #553
  • feat(ios): scaffold Hello World iPhone app by @dastratakos in #554
  • fix(providers): let a slow cloud write outlive the shared request deadline by @dastratakos in #557
  • feat(providers): annotate sessions running inside Herdr by @dastratakos in #560
  • feat(desktop): add Luke conversation history by @charleslpan in #513
  • feat(web): register luke-mobile OAuth client by @dastratakos in #559
  • feat(hosted): carry the websocket realtime endpoint in the voice mint by @dastratakos in #562
  • feat(desktop): remove the Usage data settings section by @charleslpan in #563
  • fix(voice): stop showing a trim refusal the developer cannot act on by @charleslpan in #564
  • refactor(attention): group the evaluator instructions into headed sections by @charleslpan in #566
  • feat(ios): sign in with LukeKit by @dastratakos in #565
  • feat(hosted): add the provider-key vault by @dastratakos in #568
  • refactor(voice): raise the altitude of the shared prompt rules by @charleslpan in #567
  • feat(desktop): add a copy control to History messages by @dastratakos in #569
  • refactor(acts): name the cause in an act handler's refusal by @charleslpan in #572
  • refactor(voice): give Luke a character instead of a ban list by @charleslpan in #578
  • feat(notch): replace the session count with the provider marks by @charleslpan in #577
  • v0.3.13 chore: prepare Luke release by @charleslpan in #579

Full Changelog: v0.3.12...v0.3.13

Luke 0.3.12

Choose a tag to compare

@charleslpan charleslpan released this 26 Aug 17:35
b83c821

What's Changed

  • docs: make the hosted tag release the documented path by @charleslpan in #519
  • feat(voice): change the default voice from cedar to echo by @dastratakos in #520
  • fix(release): publish releases only after assets finish uploading by @dastratakos in #521
  • fix(desktop): keep provider marks visible while Luke speaks by @dastratakos in #517
  • fix(desktop): retry updates whose release is still publishing by @dastratakos in #523
  • fix(voice): keep roster context text stable across clock ticks by @dastratakos in #527
  • fix(voice): seed conversation history once per call by @dastratakos in #526
  • feat(voice): carry the app guide in session instructions by @dastratakos in #528
  • docs(replicas): correct the accidental-wake billing rationale by @dastratakos in #529
  • feat(replicas): create workspaces with the sleep-when-done lifecycle by @dastratakos in #530
  • feat(replicas): surface an accidental workspace wake as a diagnostic by @dastratakos in #531
  • docs(replicas): rewrap the refreshDetails doc comment by @dastratakos in #532
  • feat(desktop): minimize Luke while macOS asks for the microphone during onboarding by @dastratakos in #524
  • feat(desktop): sign the wordmark onto the introduction's wake by @dastratakos in #533
  • feat(devtrace): record a local development trace of Luke's agent traffic by @dastratakos in #534
  • fix(conductor): drop listed-archived workspaces before any per-workspace read by @dastratakos in #525
  • feat(analytics): count observation diagnostics through the allowlisted pipeline by @dastratakos in #536
  • fix(conductor): read open workspaces from the filtered workspace listing by @dastratakos in #537
  • feat(desktop): narrow Luke's app guide to conversation needs and act bounds by @dastratakos in #538
  • feat(voice): keep the tracker's issue roster out of the conversation by @dastratakos in #539
  • feat(devtrace): export the attention review as the model received it by @dastratakos in #540
  • feat(desktop): speak the post-sign-in arrival beat by @dastratakos in #541
  • docs(readme): reword the tagline around the voice agent by @charleslpan in #544
  • docs: offer a contact address on the site and in the README by @charleslpan in #543
  • docs(readme): show the panel in place on a Mac desktop by @charleslpan in #545
  • docs: credit the maintainers in the README by @charleslpan in #546
  • feat(web): add an About page by @charleslpan in #542
  • v0.3.12 chore: prepare Luke release by @charleslpan in #547

Full Changelog: v0.3.11...v0.3.12

Luke 0.3.11

Choose a tag to compare

@charleslpan charleslpan released this 25 Aug 21:18
adc551f

What's Changed

  • docs(changelog): add onboarding image to v0.3.10 changelog by @dastratakos in #510
  • fix(voice): harden remote-audio playback against silent failure by @dastratakos in #477
  • fix(desktop): backfill introduction completion on signed-in launch by @dastratakos in #512
  • fix(voice): keep agent updates concise and work-specific by @charleslpan in #514
  • fix(admin): improve dashboard usability and hierarchy by @dastratakos in #511
  • fix(web): log the admin API's swallowed 503 causes by @dastratakos in #492
  • fix(voice): preserve useful updates through meeting quiet by @charleslpan in #515
  • feat(desktop): open Replicas sessions in the Replicas desktop app by @dastratakos in #516
  • v0.3.11 chore: prepare Luke release by @charleslpan in #518

Full Changelog: v0.3.10...v0.3.11

Luke 0.3.10

Choose a tag to compare

@charleslpan charleslpan released this 25 Aug 14:31
7917315

What's Changed

  • refactor(desktop): split the app guide into targeted facts by @dastratakos in #472
  • docs: simplify the README product overview by @charleslpan in #474
  • docs: tighten the privacy policy's wording by @charleslpan in #476
  • fix(realtime): carry the default workspace provider into creation asks by @dastratakos in #475
  • feat(sessions): keep a provider-asserted ask waiting until it is answered by @dastratakos in #444
  • refactor(superset): import the workspace provider id from its own vocabulary by @dastratakos in #479
  • refactor(session): share one agent identity table across hosting providers by @dastratakos in #480
  • refactor(session): house the workspace provider vocabulary with the session vocabulary by @dastratakos in #481
  • refactor(settings): fold the Superset agent default into the workspace agent defaults by @dastratakos in #483
  • refactor(providers): register workspace hosts behind one snapshot contract by @dastratakos in #484
  • fix(web): sign in on a Preview deployment by @replicas-connector[bot] in #408
  • refactor(ipc): consolidate the desktop bridge by @charleslpan in #486
  • refactor(settings): derive app settings from the schema by @charleslpan in #485
  • refactor(packages): import shared vocabulary from its defining packages by @dastratakos in #487
  • refactor: unify the act pipeline by @charleslpan in #490
  • refactor(session): separate attention from provider sessions by @charleslpan in #491
  • feat(web): add an animations reference page to the admin dashboard by @dastratakos in #488
  • refactor(providers): consolidate shared vocabulary by @charleslpan in #493
  • fix(web): give @sidecar/acts its door in server/core.ts by @dastratakos in #495
  • refactor: deepen shared package boundaries by @charleslpan in #494
  • revert(oauth): leave the connection tabs open by @dastratakos in #496
  • feat(desktop): draw loading rows while the roster is unread by @dastratakos in #498
  • Make Luke more conversational and proactive by @charleslpan in #500
  • feat(web): paint the notch mock's display with a live mesh gradient by @dastratakos in #499
  • feat(web): mint the onboarding introduction's voice without an account by @dastratakos in #497
  • Restyle OAuth connection pages by @dastratakos in #501
  • fix(web): let the mock's display end borderless on the page by @dastratakos in #503
  • feat(web): walk the hero mock open once and let it rest by @dastratakos in #502
  • feat(web): loop the hero mock through its presentations by @dastratakos in #504
  • fix(voice): diagnose a signed-out live run as missing credentials by @dastratakos in #505
  • Fix Superset workspace launches by @charleslpan in #507
  • Remove dead production code by @dastratakos in #506
  • feat(desktop): give Luke a spoken onboarding introduction by @dastratakos in #508
  • v0.3.10 chore: prepare Luke release by @charleslpan in #509

Full Changelog: v0.3.9...v0.3.10

Luke 0.3.9

Choose a tag to compare

@charleslpan charleslpan released this 23 Aug 22:21
f00dd16

What's Changed

  • fix(desktop): move the app marks below the timestamp on session rows by @dastratakos in #384
  • fix(providers): drop archived Cursor chats from the roster by @dastratakos in #385
  • feat(cursor): name the tool call an open local turn is running by @dastratakos in #382
  • feat(cursor): recap a settled local turn by its parting words by @dastratakos in #383
  • feat(web): add maintainer-only admin metrics dashboard by @dastratakos in #372
  • feat: give Luke the Updates row's button as a spoken tool by @dastratakos in #388
  • feat(cursor): merge the observation hook into Cursor's hooks.json by @dastratakos in #386
  • feat(cursor): message a settled local chat through the agents CLI resume by @dastratakos in #387
  • feat(web): add a hide-admins toggle to the admin dashboard by @dastratakos in #389
  • feat(web): add favicon and Open Graph card to the admin page by @dastratakos in #394
  • feat(web): ask the admin dashboard's first visit to sign in explicitly by @dastratakos in #391
  • refactor(providers): table the hook registry and share hook status refinement by @dastratakos in #393
  • feat(conductor): create local workspaces, distinguished from cloud by @dastratakos in #392
  • feat(gemini-cli): merge the observation hook into Gemini's settings.json by @dastratakos in #396
  • feat(opencode): install a managed observation plugin in OpenCode's plugin directory by @dastratakos in #397
  • feat: clear session filters from an X on the options button by @dastratakos in #399
  • feat(devin): merge the observation hook into Devin's hook configuration by @dastratakos in #398
  • feat(cursor): draw local chats by Cursor's own names, branches, and changes by @dastratakos in #390
  • fix(superset): match OpenCode chats by worktree when Superset records no session id by @dastratakos in #395
  • fix: seat the filter clear X as a hairline-split segment of the options pill by @dastratakos in #403
  • fix(settings): open the provider's key page on the Connect press by @dastratakos in #405
  • fix(cursor): observe the CLI's chat store beside the transcripts by @dastratakos in #400
  • feat(admin): draw the signed-in account as an avatar menu by @replicas-connector[bot] in #406
  • feat(admin): keep the dashboard readable while it refetches, and say which way it is going by @replicas-connector[bot] in #404
  • fix(admin): put Google above GitHub on the sign-in card by @dastratakos in #411
  • feat(oauth): close the successful connection tabs on their own after 5 seconds by @dastratakos in #413
  • feat(oauth): count down on the connection pages that close themselves by @dastratakos in #414
  • feat(admin): rank accounts by days present and give each its own page by @dastratakos in #412
  • feat(panel): keep the session search standing like the filter chips by @dastratakos in #415
  • feat(admin): hang the views on a collapsible sidebar and add a Users roster by @dastratakos in #416
  • feat(admin): let the Users roster sort by any column by @dastratakos in #418
  • fix(voice): open recent chats across providers by @dastratakos in #420
  • fix(conductor): keep a walked-away cloud chat stale across a VM wake by @dastratakos in #419
  • fix(panel): sign filter errands on the split options pill, and clears on its X by @dastratakos in #421
  • feat(admin): add a last-seen column to the Users roster by @dastratakos in #417
  • feat(admin): redraw the dashboard's charts on shadcn/ui and recharts by @dastratakos in #422
  • feat(panel): say a workspace's shared pull request once on its tray header by @dastratakos in #423
  • feat(panel): lead the wing's marks with the app holding each chat by @dastratakos in #424
  • feat(admin): remember the Users roster's sort across a refresh by @dastratakos in #425
  • test(analytics): lock the erasure request the account delete sends by @dastratakos in #410
  • feat(analytics): full PostHog coverage — event widening and unmasked session replay by @charleslpan in #409
  • feat(admin): draw profile photos beside names in the Users roster by @dastratakos in #428
  • fix(admin): scope the account page's usage chart heading to the account by @dastratakos in #429
  • feat(admin): let an admin star accounts on the Users roster by @dastratakos in #426
  • fix(admin): remember the hide-admins choice across reloads by @dastratakos in #430
  • fix(admin): mark every admin response no-store by @dastratakos in #431
  • fix(admin): count accounts, not linked rows, in the sign-in methods chart by @dastratakos in #433
  • fix(admin): fall back to the email when an account has no name by @dastratakos in #432
  • feat(admin): pin favorited accounts to the top of the Users roster by @dastratakos in #436
  • fix(admin): keep the shown answer up when a refresh fails by @dastratakos in #434
  • fix(admin): treat a whitespace-only account name as no name by @dastratakos in #438
  • fix(admin): let the roster tables scroll instead of crushing on narrow viewports by @dastratakos in #435
  • feat(admin): link the reliability caption to the analytics project when configured by @dastratakos in #439
  • feat(admin): show weekly signup cohorts and whether they come back by @dastratakos in #442
  • feat(admin): let the window be 7, 30, or 90 days by @dastratakos in #441
  • fix(providers): draw no row for work the user filed away in cloud adapters by @dastratakos in #427
  • feat(admin): say when a chart has nothing yet, and mark today's partial bar by @dastratakos in #443
  • feat(replicas): observe Replicas cloud workspaces behind a user-supplied key by @dastratakos in #402
  • refactor(admin): draw both account tables through one component by @dastratakos in #437
  • feat(admin): say what a trend moved from, not just which way by @dastratakos in #445
  • fix(admin): validate chart config before it reaches the injected style block by @dastratakos in #446
  • fix(admin): fold the sidebar without flickering its labels by @dastratakos in #440
  • chore(admin): drop the cards and rows that cannot inform a decision by @dastratakos in #447
  • style(admin): lift card surfaces above the page ground by @dastratakos in #448
  • feat(providers): observe local Grok Build sessions by @dastratakos in #407
  • chore: adopt pnpm 10 and let packageManager name the version by @dastratakos in #449
  • fix(superset): open and message a chat's live terminal, not the binding its restart ended by @dastratakos in #450
  • fix(realtime): stop Luke narrating tool calls by @dastratakos in #451
  • fix(admin): give the sidebar hover a pill the fold cannot slice by @dastratakos in #452
  • feat(admin): sketch the page's own shape while it loads by @dastratakos in #454
  • feat(admin): make the admin surface work on a phone by @dastratakos in #453
  • feat(admin): search the whole roster, not the newest 200 by @dastratakos in #456
  • fix(admin): tick the clock only where time is drawn by @dastratakos in #457
  • feat(admin): give the account page the same window switcher by @dastratakos in #458
  • feat: filter sessions by app or provider on wing mark click by @dastratakos in #455
  • chore(admin): drop the window label the swi...
Read more

Luke 0.3.8

Choose a tag to compare

@charleslpan charleslpan released this 21 Aug 01:46
85999e2

What's Changed

Full Changelog: v0.3.7...v0.3.8

Luke 0.3.4

Choose a tag to compare

@charleslpan charleslpan released this 20 Aug 23:21
6ac244e

What's Changed

  • feat(voice): trail notice chips with their session's app marks by @dastratakos in #340
  • feat(desktop): read this Mac's own Calendar into the meeting quiet by @dastratakos in #311
  • fix(voice): keep the turn open when a reply's audio resumes after a drain by @dastratakos in #342
  • fix(web): restore the .js extensions the function sources need to load by @dastratakos in #343
  • feat(release): name the DMG volume Luke Installer by @dastratakos in #339
  • fix(sessions): report an unanswered cloud write as indeterminate by @dastratakos in #345
  • feat(desktop): add electron-builder release path by @dastratakos in #324
  • docs(providers): restructure around agents and apps with a read/write surface by @dastratakos in #341
  • fix(voice): pace unbidden speech around the developer's conversation by @dastratakos in #344
  • feat(providers): observe local Gemini CLI sessions by @dastratakos in #347
  • fix(voice): reteach show_panel the session-list filter and sort vocabulary by @dastratakos in #346
  • fix(voice): name the session in status-edge announcements by @dastratakos in #350
  • feat(voice): let a spoken ask combine session filters like the chips do by @dastratakos in #348
  • fix(realtime): route session-list asks to the panel filter by @dastratakos in #351
  • feat(sessions): open Conductor's local chats where its notifications point by @dastratakos in #349
  • fix(voice): name a session's app associations in the roster by @dastratakos in #352
  • fix(duck): ignore quit signals so the helper lives to restore by @dastratakos in #353
  • fix(providers): drop Conductor chats the user filed away locally by @dastratakos in #360
  • chore(release): prepare 0.3.4 by @charleslpan in #359

Full Changelog: v0.3.3...v0.3.4

Luke 0.3.3

Choose a tag to compare

@charleslpan charleslpan released this 20 Aug 20:52
26f9d08

What's Changed

  • fix(duck): recognize where Spotify actually landed so restore is never skipped by @dastratakos in #329
  • fix(voice): stop trimming a stopped reply past its audio's end by @dastratakos in #335
  • feat(orca): group local agent rows under their Orca worktrees by @dastratakos in #333
  • feat(sessions): persist the filter chips across closings and restarts by @dastratakos in #336
  • feat(sessions): mark the rows cmux holds and open their exact pane by @dastratakos in #332
  • chore(release): prepare 0.3.3 by @charleslpan in #338

Full Changelog: v0.3.2...v0.3.3