Repository navigation
Releases: ariso-ai/oats
Release list
v0.26.1
0.26.1 (2026-10-07)
Bug Fixes
- library: hide pending-uploads box on the local backend (ec31413)
- library: hide pending-uploads box on the local backend (388325c)
- upload: tag uploaded recordings with metadata source "oats" (418c088)
- upload: tag uploaded recordings with metadata source "oats" (278fd9a)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats
v0.26.0
0.26.0 (2026-09-30)
Features
- ariso-stt: Qwen3-ASR transcription with forced-aligned word timings (39f91c4)
- auto-resume pending recordings once their model finishes downloading (565d985)
- auto-resume pending recordings once their model finishes downloading (fa46b72)
- credentials: add JSON key-map helpers for the consolidated keychain item (adb618e)
- credentials: consolidate per-provider keychain items into one (2f624e2)
- credentials: migrate legacy per-provider keychain items on startup (1945dc6)
- credentials: store all remote-model API keys in one macOS Keychain item (e4fb8ef)
- credentials: store an optional API key for the custom endpoint (4b36390)
- LibraryView: show a distinct, unbounded row label while pending on a model (73bd26b)
- LibraryView: show a distinct, unbounded row label while pending on a model (e5c5974)
- MeetingDetailView: show a pending-on-model chip, no Retry (46985a4)
- MeetingDetailView: show a pending-on-model chip, no Retry (28e2433)
- model-catalog: add the custom endpoint row (9d65398)
- notes-model: add the Custom endpoint variant and its validation (7c27b0b)
- notes-models: add the custom endpoint kind (a743f41)
- notes: generate notes with a remote model, and record which wrote them (6081faa)
- notes: generate notes with a remote model, and record which wrote them (a2cd6b1)
- notes: resolve the custom endpoint's model from the server (e8863c9)
- remote-notes: add a Test Connection command for the custom endpoint (cb619e0)
- remote-notes: call a user-configured OpenAI-compatible endpoint (b2e9f57)
- settings: add a custom OpenAI-compatible LLM endpoint for notes (d1107ed)
- settings: add the custom endpoint form with test connection (6401822)
- settings: edit, remove, and select the custom endpoint (ee1765a)
- settings: let the model list's scrollbar be dragged (efcc47a)
- settings: load the custom endpoint's state into the model catalog (3ee5d53)
- settings: Qwen3-ASR speech row with per-model install and remove (ef706a7)
- settings: redesign models configuration for model selection (10b732e)
- settings: redesign models configuration for model selection (cd2d01c)
- settings: store remote model API keys in the OS keychain (011889e)
- settings: store remote model API keys in the OS keychain (7be0d90)
- settings: tweak models section (017d082)
- start local recording instantly instead of blocking on model downloads (7dd66be)
- stop blocking local recording on missing on-device models (9129acf)
- stop blocking local recording on missing on-device models (8f6501c)
- storage: add PendingModels/PendingModel status variants (edca4f6)
- storage: add PendingModels/PendingModel status variants (780ab38)
- stt: closed speech-model registry with persisted selection (0ae6901)
- stt: pass the selected speech model to the sidecar (9d9add5)
- stt: per-model speech install, readiness, size and delete (ca6cb5a)
- stt: Qwen3-ASR as a selectable on-device speech model (5a7203b)
- tauri.ts: add pending-models/pending-model to the local status types (4081140)
- tauri.ts: add pending-models/pending-model to the local status types (d142b8d)
- tauri: add wrappers for the custom endpoint commands (56a84ee)
- transcribe: generate notes through a configured custom endpoint (97cf982)
- transcribe: reclassify missing-model failures as pending, not failed (6aaedd5)
- transcribe: reclassify missing-model failures as pending, not failed (83353a3)
- useLocalRecordingProgress: add pending-models/notes-pending-model stages (afd36a7)
- useLocalRecordingProgress: add pending-models/notes-pending-model stages (8b4bc9c)
Bug Fixes
- ariso-stt: keep Qwen3 words that fall between diarization turns (83b87d7)
- ariso-stt: never drop Qwen3 text or audible audio silently (8fb7251)
- ariso-stt: stop Qwen3 decode loops from silently dropping speech (2db6ba6)
- close speaker-rename revert race with an in-flight clip append (30ab18c)
- close speaker-rename revert race with an in-flight clip append (41a35d3), closes #420
- correct custom-endpoint review findings (hint, disclosure, dead code, URL normalization) (6f2c3e1)
- credentials: defer legacy keychain item deletion until migration write succeeds (7e1964e)
- credentials: enforce Windows Credential Manager's size cap on the combined API-key item (926ac1f)
- credentials: enforce Windows Credential Manager's size cap on the combined key item (ec23aa8)
- notes: give the remote prompt the note format the vault renders (868aef8)
- notes: only treat a missing LLM as pending for on-device notes (d61fb9c)
- notes: only treat a missing LLM as pending for on-device notes (170081f)
- notes: surface custom...
v0.25.0
0.25.0 (2026-09-19)
Features
- add local speaker rename commands (2c342a7)
- add local speaker rename composable (cf0fea7)
- checkpoint a local recording every 5 minutes of captured audio (5d60ea3)
- derive mp3 chunk duration from frame headers (2cee0ad)
- drop preview state when finalize rewrites the recording (2eaa292)
- expose boundary-aligned encoded-audio slices from useRecorder (6fe5f9c)
- expose local speakers on the meeting detail (07efa20)
- expose local_checkpoint_recording over the raw IPC body (c3dd949)
- incremental local transcript checkpointing (#123) (dc75095)
- merge each checkpoint's chunk into the preview transcript (23715cb)
- persist checkpoint audio for an in-progress local recording (50f4ab0)
- refresh an open recording's transcript and notes on each checkpoint (025d65b)
- rename diarized speakers on local recordings (a86a42b)
- rename local speakers from the meeting detail (cf68ad9)
- set the speaker label apart from its words in the transcript (69a3916)
- settle interrupted local recordings at startup (c593a2e)
- sidecar: add --previous-notes merge mode to the Windows notes path (e2bd754)
- track notes_in_progress so notes status stays truthful (891fcbd)
Bug Fixes
- add missing localSpeakers to ShareMeetingPopover's MeetingDetail fixture (5072ec1)
- address final review wave for local notes checkpointing (#123) (c827154)
- apply CodeRabbit findings on local speaker rename (fe64eb4)
- close checkpoint-slice/loop contract gaps between Task 12 and 13 (6fd10ab)
- downmix stereo recordings to mono before handing them to FluidAudio (4365ce4)
- downmix stereo recordings to mono before handing them to FluidAudio (baba890), closes #413
- guard local speaker rename against a stale-recording race (7c24f1c)
- hide the speaker rename chip when a local transcript has no speech (44fba03)
- pass notes_in_progress to derive_notes_status in rename_local_speaker (8def64c)
- pass notes_in_progress to derive_notes_status in rename_local_speaker (22359c7)
- refuse a local speaker rename while the pipeline still owns the files (cc63143)
- render local transcripts through the Ariso transcript list (48ede69)
- render local transcripts through the Ariso transcript list (7c4f1a2), closes #400
- reset the local speaker rename panel on meeting switch (4281e41)
- scope rename errors to their meeting and warn that notes go stale (35c6d25)
- serialize recording writers and commit notes against fresh meta (879c5e8)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats
Windows — Download x64 installer
v0.24.0
0.24.0 (2026-09-13)
Features
- auth: hand back to oats from the sign-in callback page (51142b7)
- customizes the greeting UX (d1600e6)
- library: brand Up Next with the Ariso organization (3061c9c)
- library: discard an individual pending upload (96bc864)
- library: discard an individual pending upload (d74ebf3)
- make an in-progress impromptu recording discoverable and renamable (ba4a4f7)
- notes: follow up, reassign, and check off Ariso action items (266b1a1)
- notes: follow up, reassign, and check off Ariso action items (2b2c038)
- recorder-pill: draw the floating pill natively on macOS (e8d5a85)
- recorder-pill: draw the floating pill natively on macOS (#390) (de5fb98)
- recorder-pill: draw the floating pill natively on Windows (0563012)
- recorder-pill: draw the floating pill natively on Windows (#390) (fa30ea6)
- recorder-pill: platform-free pill layout for the Windows pill (07b72ab)
Bug Fixes
- close the recording-identity and tray-menu races structurally (f4ad182)
- keep note delete disabled while a recording is still capturing (fbe1ce1)
- library: keep org branding across same-account auth changes (552e1d1)
- notes: keep the reassign menu inside the detail pane (fee61c3)
- notes: read follow-up and participant bigint ids sent as strings (9526bde)
- recorder-pill: stop the macOS pill flapping on hover (ad6447f)
- recorder-pill: stop the macOS pill flapping on hover (8d82043)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats
Windows — Download x64 installer
v0.23.0
0.23.0 (2026-09-11)
Features
- add delete action for local meeting notes (251c51c)
- add delete action for local meeting notes (9bcf3fd), closes #360
- add list_vault_tasks command for vault-derived todos (c4537b0)
- add microsoft_sign_in command and provider-neutral cancel_sign_in (803ff81), closes #370
- auto-record: gate meeting detection on the Microphone toggle (7354be3)
- broadcast auth://changed and scope cancel_sign_in to its window (b777614), closes #370
- library: drop the signed-out dot from the backend indicator (de70d1b), closes #370
- library: gray the ariso.ai menu option until signed in (8e274e4), closes #370
- library: list vault Obsidian tasks in the offline Todos tab (5b6b8bd)
- library: make the backend indicator a backend menu (9a69b93), closes #370
- library: Meetings backend indicator (#370 part 3) (aa256a9)
- library: move the backend indicator next to the sidebar toggle (29e81ca), closes #370
- library: move the backend indicator to the bottom left, named after the backend (0394dd5), closes #370
- library: pin the backend indicator to the window's bottom-left corner (ba51bc4), closes #370
- library: show the backend and sign-in state in the Meetings titlebar (dbb2820), closes #370
- meeting-prompt: lead with Dismiss when auto-record is off (033322e)
- microphone activation always creates new recording (84b24f5)
- microphone activation always creates new recording (0c49034)
- Microphone gates meeting detection; auto-record sets the prompt's default (b9601f9)
- notes: hide Obsidian Tasks metadata in the in-app renderer (2373240)
- notes: surface a speechless recording as "Empty transcript" (6638d4a)
- notes: tick local AI-notes tasks to close their todos (64dddc4)
- notes: tick local AI-notes tasks to close their todos (7e9614d)
- onboarding: add Sign in with Microsoft (e75de1e), closes #370
- settings: add Sign in with Microsoft (e56e424), closes #370
- sign in with Microsoft (#370 part 1) (398f683)
- tray: move the sign-in rows into Quit's section (d1f41fb)
- tray: offer Sign in with Google/Microsoft while signed out (9641cfc)
- tray: Sign in with Google/Microsoft rows while signed out (3c0ddf5)
- tweak term (01bd679)
- vault: parse open Obsidian Tasks out of a vault note (155a007)
- vault: render local action items as Obsidian Tasks checkboxes (17fb670)
Bug Fixes
- address final review findings for vault todos (3f964f1)
- address review comments (04290f9)
- deliver browser-flow results only to the window that started them (cf68f88)
- library: keep nav pill bottom-anchored on empty sidebar states (fb99a1a)
- library: keep nav pill bottom-anchored on empty sidebar states (b6037a2), closes #383
- library: stop the list↔detail reload loop on an empty transcript (5740b41)
- library: stop the list↔detail reload loop on an empty transcript (1dbcd1d)
- notes: never generate notes from a speechless transcript (a695546)
- notes: never generate notes from a speechless transcript (969eeb8)
- vault: track fence delimiter and narrow placeholder heuristic (b85293e)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats
Windows — Download x64 installer
v0.22.0
0.22.0 (2026-09-10)
Features
- library: list meeting action items in the Todos tab (dd2ab37)
Bug Fixes
- close the device-change gap while capture is being built (182b0a4)
- follow output device and format changes mid-recording (8fe864b)
- resample system audio from the output device's real rate (15a6351)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats
Windows — Download x64 installer
v0.21.0
0.21.0 (2026-09-03)
Features
- add copy_recording_file command for exporting transcripts (0ed9f74)
- add Download transcript button to the Transcript tab (7499ef2)
- add save-dialog wrapper, copy IPC wrapper, and export filename helpers (da72aa5)
- download a local recording's transcript (#337) (8a0e997)
Bug Fixes
- ci: repoint the e2e smoke gate at the split sidecar tree and drop wait_for (2137f04)
- ci: wait for the main window, not just the socket, before asserting (58acc1f)
- clear stale download error on click, test the real invoke error shape (ae8b71e)
- dock the recording pill only on the meeting it was recording when it started (1feb474)
- guard copy_recording_file against self-overwrite and vault-note paths (9cf20b7)
- guard the transcript export against meeting switches; pin test TZ (46d1a8f)
- never dock a recording that belongs to no meeting (debe5ad)
- never dock a recording that belongs to no meeting (ec87484)
- report which recording blocks a new one, and in what state (d85436d)
- report which recording blocks a new one, and in what state (57a2764), closes #320
- reset transcript download error/state on meeting switch (c760281)
- residual cleanups for download-local-transcript review (3df84cb)
- stop the audio player overlapping Download in a narrow row (651070e)
- stop the overlap clip from swallowing the Play button's shadow (3f7d2d8)
- surface an error when a new recording can't start over a pending one (cce31d4)
- use the same-file crate for the export same-file guard (d93f2ef)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats
Windows — Download x64 installer
v0.20.0
0.20.0 (2026-08-26)
Features
- acquire Google Calendar via an additive second OAuth hop (6311459)
- adjusts tray icon (03b75d1)
- assign speakers to people on cloud audio meetings (7bbd55d)
- assign speakers to people on cloud audio meetings (f27aaf6)
Bug Fixes
- don't let two voice samples play over each other (7624314)
- give the calendar hop its own loopback success page (e1eb077)
- send recording audio over the raw IPC body instead of a JSON number[] (ba13203)
- send recording audio over the raw IPC body instead of a JSON number[] (439e2f4)
- tray: show the color logo in the menu bar while recording (5ff83b0)
- ui: make the meeting picker's meetings look clickable (835dec1)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats
Windows — Download x64 installer
v0.19.1
0.19.1 (2026-08-19)
Bug Fixes
- ci: don't post an empty triage comment on Task issues (#309) (848726d)
- ci: gate verify-published on !cancelled() rather than always() (4a5f068)
- ci: publish Windows artifacts to R2 instead of silently skipping (a4226ce)
- ci: publish Windows artifacts to R2 instead of silently skipping (5fabeec)
- ci: set and read issue type via REST, not gh-version-dependent flags (#305) (158931c)
- recorder: drop the queued re-open if the waveform label never frees (b3d0347)
- recorder: let a pending upload hand off the recorder window (0a035df)
- recorder: let a pending upload hand off the recorder window (#313) (334bb53)
- send fileSize with the audio upload presign request (11a8e39)
- send fileSize with the audio upload presign request (3573452), closes #321
- ui: make the recorder waveform actually react to audio (598c531)
- ui: make the recorder waveform actually react to audio (f731a3a)
- windows: enforce a single recorder pill (a77cca7)
- windows: guarantee a single recorder pill (91ad7e6)
- windows: guard recorder pill dev assets (0eb460f)
- windows: recover recording startup (c30ef17)
- windows: recover recording startup (08aaf9b)
- windows: reliably raise meetings from tray (e0b6fba)
- windows: serialize meetings window presentation (d98e7ef)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats
Windows — Download x64 installer
v0.19.0
0.19.0 (2026-08-02)
Features
- ci: Authenticode-sign Windows releases by default (3c7089d)
- opt-in upload diagnostic data to Sentry.io when using ariso.ai backend (1861e24)
- tag diagnostics with the host OS and ship the prod DSN (bf409a1)
Bug Fixes
- address CodeRabbit findings on the upload diagnostics path (bc457ee)
- ci: address CodeRabbit findings on the Windows release split (87f805d)
macOS — Download DMG
Homebrew: brew tap ariso-ai/oats https://github.com/ariso-ai/oats && brew trust ariso-ai/oats && brew install --cask oats