Changelog

What's new in Whimbrel

Whimbrel ships often during early access. Here's every release, newest first. The app updates itself in the background, so you're usually on the latest one. Mac and Windows builds of a release can arrive a few hours apart.

Version 0.9.29

· Release on GitHub

  • Fixed: Meeting snapshots follow-ups #368
  • Fixed: Sync skins version in Cargo.lock #369
  • Windows Load and apply skins #362
  • Windows Six Today archetypes and skin decoration #363
  • Windows Skin gallery in Appearance #364
  • Fixed: Unit-test host launches an empty app #372
  • Windows Skin no-overrun matrix in CI #367

Version 0.9.27

· Release on GitHub

  • Mac Settings no longer freezes when a skin change rebuilds it #353

Version 0.9.26

· Release on GitHub

  • Clear the fixable Dependabot alerts; record the rest in deny.toml #348
  • Mac The Daily Brief's Today line lists only today's meetings #350

Version 0.9.25

· Release on GitHub

  • Windows Today refresh 4/4, schedule card #334
  • Apache-2.0 license, dependency license audit, un-vendor the MCP test fixture #337
  • Relay config without personal values, fork-safe CI, self-hosting guide, Workers CI #338
  • Docs say what the tree does: README, SECURITY.md, competitive table, contributing #339
  • Mac Skins follow-ups (Appearance caption, live Ask survives skin switch, test isolation) #336
  • Windows Settings tests start from a clean temp directory #341
  • Mac The updater accepts a renamed bundle and installs it at the new path #344
  • Skins Release 2: make a skin by talking to Kestrel (Mac) #343

Version 0.9.24

· Release on GitHub

  • Windows Meeting Prep source chips on Today #299
  • Fixed: A synced Meeting Prep brief no longer cites another device's meeting row id #300
  • Windows Today recap shows the synced Daily Brief #302
  • Mac Today refresh: greeting, Ask composer, schedule card, type scale #319
  • Group short copies of one calendar event (duplicate meeting rows) #321
  • Set up an AI provider state for the Ask composer #322
  • Fixed: Clean Up Meetings Without Audio deleted synced meetings from other devices #324
  • Windows Today refresh 1/4, type scale, flat cards and one reading width #329
  • Mac Skins Release 1 (built-in gallery) #328
  • Windows Today refresh 2/4, greeting and date #330
  • Windows Today refresh 3/4, Ask composer #332

Version 0.9.23

· Release on GitHub

  • Fixed: Meetings list shows a spinner until its first fetch returns #295
  • Fixed: Log why content sync fails, and back off after repeated failures #296
  • Fixed: Sync no longer scans the whole remote sync_row table every round #297

Version 0.9.22

· Release on GitHub

  • Windows Meeting Prep, following the primary device #285
  • Windows The updater keeps checking after it has downloaded one #292

Version 0.9.21

· Release on GitHub

  • Windows Daily profile suggestions follow the primary device #281

Version 0.9.20

· Release on GitHub

  • Meeting Prep and profile suggestions follow the primary; Today's recap reads the synced brief (Mac + core) #279

Version 0.9.19

· Release on GitHub

Maintenance release: internal improvements.

Version 0.9.18

· Release on GitHub

  • Windows Let dev builds live on a bigger drive (KESTREL_TARGET_DIR) #273
  • Routines safety net: a secondary covers a missed day (Mac + core) #274
  • Windows Choose which device runs routines, and show where a run came from #275

Version 0.9.17

· Release on GitHub

  • AWS keys glued to preceding word characters #265
  • One device runs them, every device sees the results (Mac + core) #270

Version 0.9.16

· Release on GitHub

  • Windows Profile Task 2 — commands and the gated daily suggestion job #262
  • Windows Profile Task 3 — the Settings pane (stacked on Task 2) #263

Version 0.9.15

· Release on GitHub

  • Meeting Prep: cited briefs before upcoming meetings #244
  • Meeting page refresh: day-grouped list, reading page and meeting Ask #248
  • Calendar meeting title check with TypeSafe (rework of #209) #249
  • Tests never touch the real Keychain #253
  • Live transcription during meetings (Mac) and in-call Ask #252
  • Shared theme files, token model, Appearance and Theme settings (Mac) #254
  • Today rework: agenda and catch-up (Mac) #255
  • Personal Profile: fields, facts and daily suggestions (Mac + core) #256
  • Windows Themes Task 1 — new tokens, stray colors fixed, color guard #257
  • Windows Themes Task 2 — port the loader and run the shared corpus #258
  • Windows Themes Task 3 — apply, remember and pick a theme (stacked on #258) #259
  • Windows Profile Task 1 — the model, the composer, and sending it with every prompt #260

Version 0.9.14

· Release on GitHub

  • Reply priorities: rank waiting email with TypeSafe (opt-in, Mac first) #236
  • Catch keys glued to preceding word characters #237
  • Windows Only auto-record a calendar event when this PC is in the call #238
  • Windows Don't re-transcribe silent recordings at every launch #239

Version 0.9.13

· Release on GitHub

  • Re-adding a connected Google account replaces its tokens #231
  • Stop burning retries when Ollama or its model is missing #232

Version 0.9.11

· Release on GitHub

  • Check the notary profile before building #225
  • Skip a message that 404s during sync #226

Version 0.9.10

· Release on GitHub

  • Treat bulk and automated mail as fyi, not waiting_on_me #223

Version 0.9.9

· Release on GitHub

  • Pinned wrangler, and publish an existing tag by input #220
  • Surface tool errors and flag Google accounts that need reconnecting #221

Version 0.9.8

· Release on GitHub

Maintenance release: internal improvements.

Version 0.9.7

· Release on GitHub

  • Don't send empty or one-glance episodes to the model #213
  • Redact stored secrets in episodes, revive a stuck sweep #215

Version 0.9.6

· Release on GitHub

  • Redact credentials before they're stored, synced or sent #211
  • Pack the question's matches before recent episodes and threads #212

Version 0.9.5

· Release on GitHub

  • Give manual and detected meetings a real title #206
  • Show one entry for a call recorded on several Macs #208
  • Windows Don't re-prompt a calendar event after a relaunch #207

Version 0.9.4

· Release on GitHub

  • Mac Only auto-record a calendar event when this Mac is in the call #203
  • Recreate items_vec_au in one write transaction #205

Version 0.9.3

· Release on GitHub

  • Mac No re-recording after relaunch; Meeting options visible in Meetings #200

Version 0.9.2

· Release on GitHub

  • Mac "Transcribe again" and honest no-transcript messages #198

Version 0.9.1

· Release on GitHub

  • Mac Run LLM calls on a slow-lane store so Ollama can't block the UI #196

Version 0.9.0

· Release on GitHub

  • Take the database path from the app #192
  • Rename littlebird.* keys, copying old values forward #193
  • Mac Move the data folder out of Littlebird's folder #194
  • Match bleed-through by span overlap and word containment #189
  • Rename the last non-data Littlebird identifiers to Kestrel #190
  • Littlebird → kestrel data migration #191

Version 0.8.0

· Release on GitHub

  • Prompt audit: MCP tool contracts, Claude pricing, Anthropic stop_reason #91
  • Match the episode-summary test to the "brief" wording #125
  • Windows A sign-in cancel can't be undone by a reply already in flight #135
  • Mac Never capture Kestrel's own windows #134
  • Mac Remove development leftovers from the UI #139
  • Mac Call Library "Library" everywhere #140
  • Mac Status colors and radii come from the design system #141
  • Mac Library and Today show loading, empty and error states #142
  • Mac Library groups Recent under day headings #143
  • Mac One device chip on Library rows and every detail view #144
  • Mac Split TimelineView and SettingsView into files by concern #147
  • Mac Today's open loops, approvals and device activity are actionable #148
  • Mac Ask keeps its conversation list, shows sources as chips and names the model #149
  • Windows Status, link and control-radius tokens matching the Mac #151
  • Mac Settings becomes seven card-based sections that open on General #152
  • Mac Keyboard shortcuts for tabs, search and new conversation; VoiceOver labels #153
  • Windows Today counts captures per device with the core query #154
  • Windows Captures and meetings show their date and time #157
  • Mac Renew the sync token before it expires, not only at launch #159
  • Saved conversations keep their citations and the model that answered #161
  • Mac End meetings by core's end rules #170
  • The two-connection stress test fails fast instead of hanging CI #172
  • Mac Detect Teams and Zoom web meetings, not only Google Meet #173
  • Mac End a detected meeting when its app stops using the mic #174
  • Mac Keep recording the mic through device changes and stalls #175
  • Mac Reopen system audio once after it stops mid-recording #177
  • Mac Log how long work waits on the shared store queue #178
  • Mac Take a full Google Calendar baseline on each account's first sync #181
  • Mac Build the Rust core wherever cargo is configured to #182
  • Windows Ask before the first retention sweep #185
  • Mac Put the cargo target-dir build step in project.yml #186

Version 0.7.6

· Release on GitHub

Maintenance release: internal improvements.

Version 0.7.5

· Release on GitHub

  • Sync hidden-episode state across devices #90
  • Per-surface prompt library #93

Version 0.7.4

· Release on GitHub

  • Gemini streaming adapter (#83) and live outbox dispatcher #88

Version 0.7.3

· Release on GitHub

  • Fix silent Ask-provider substitution; release 0.7.3 #87

Version 0.7.2

· Release on GitHub

  • Fix #64, #65, #75, #74: calendar events, meeting titles, Markdown chat, streaming Ask #85

Version 0.7.1

· Release on GitHub

  • Reliability refactor slice 1: shadow-mode outbox + streaming/cancellable inference #80

Version 0.7.0

· Release on GitHub

  • Fixed: Date-scope chat retrieval when the query names today/yesterday #73
  • Fixed: Run screen-text ingestion on a real periodic schedule #76
  • Add Google (Gemini) as a fourth LLM provider #77

Version 0.6.0

· Release on GitHub

  • Fixed: Make EOD recap emails detailed instead of one-line summaries #70
  • Add a WeeklyDigest routine (weekly reflection) #71

Version 0.5.5

· Release on GitHub

  • Fixed: Defer hover-row state updates to break AppKit layout reentrancy #67

Version 0.5.4

· Release on GitHub

  • Fixed: Decouple sync pull cursor from unresolved dependencies #53
  • Fixed: Stop EOD/Daily Brief digests from pulling in other days' content #55
  • Fixed: Run episode segmentation independent of AC power + idle #56
  • Fixed: Surface silent approval failures and stop duplicate drafts #54
  • Fixed: Today page fills the window instead of a narrow centered column #57
  • Fixed: Always exclude lock-screen/screensaver chrome from capture #58
  • Fixed: Reap orphaned kestrel-mcp-server before starting a new one #60
  • Fixed: Hover-reveal the per-line reorder/delete controls on meeting summary rows #62

Version 0.5.3

· Release on GitHub

  • Fixed: Show update-ready banner regardless of active tab #43
  • Fixed: Bound content-sync pull to a fixed batch per pass #44

Version 0.5.2

· Release on GitHub

  • Fixed: Settings window nesting and self-test ingest batch size #41

Version 0.5.1

· Release on GitHub

  • Fixed: Whole-app freeze from unbounded sync call + per-visit self-test re-trigger #39

Version 0.5.0

· Release on GitHub

  • Fixed: Scope Keychain service strings to the running bundle identifier #35
  • Add transcript/summary reading font size preference #36
  • Meeting & episode lifecycle restoration #37

Version 0.4.0

· Release on GitHub

  • Meeting workspace redesign (v0.4.0): Before/During/After Granola-inspired UI #32

Version 0.3.12

· Release on GitHub

  • Requirements proposal: Littlebird-style ambient desktop assistant (macOS first) #1
  • Fixed: Stop building a cdylib alongside the staticlib (crash fix) #11
  • Fixed: Register a discarding .screen output for SCStream #12
  • Core+apps/macos: multi-turn chat history (FR-CHAT-1) #13
  • Core+apps/macos: wire whisper.cpp transcription into the app (FR-MTG-4) #15
  • Core+apps/macos: calendar-triggered meeting detection (FR-MTG-1) #16
  • Apps/macos: restructure into a real Settings window + FR-CAP-4 exclusions #19
  • Apps/macos: rename app from LBCaptureSpike to Kestrel #20
  • Apps/macos: restrict to arm64 to fix Archive/Release builds #21
  • Audio/app heuristic meeting detection #22
  • Finish Google Calendar MCP connector: OAuth, Settings UI, bundling, CI #24
  • Assemble_context Slice 3: migrate daily brief / EOD recap onto unified retrieval #27

Give your assistant a memory.

Install Whimbrel in two minutes. Your first meeting summary arrives the same day.