Skip to main content
Desktop Release Ledger

Changelog forBridgeSpace, BridgeVoice, and BridgeAgent

A public release page for the desktop apps builders install and update most often. Each entry mirrors the what’s-new card that shows up on the first launch after every update.

@bridgespace-tauri

BridgeSpace

Agentic desktop workspace release notes — terminal, swarm, Bridge Assistant, browser sidebar, and the rest of the BridgeSpace surface.

BridgeSpace application icon
Current
v3.4.15
Updated
July 17, 2026
Entries
25

@bridgevoice

BridgeVoice

Privacy-first dictation release notes — on-device Whisper, push-to-talk reliability, injection paths, and Sentry-driven hardening.

BridgeVoice application icon
Current
v2.5.3
Updated
June 12, 2026
Entries
11

@bridgeagent-desktop

BridgeAgent

Desktop release notes for the self-improving agent runtime — chat workspace, agent map, scheduled responsibilities, voice, and the guided runtime install.

BridgeAgent application icon
Current
v0.1.9
Updated
July 2, 2026
Entries
3
BridgeSpace application icon

@bridgespace-tauri

BridgeSpace

Agentic desktop workspace release notes — terminal, swarm, Bridge Assistant, browser sidebar, and the rest of the BridgeSpace surface.

Latest
v3.4.15

The right plan follows the right account

BridgeSpace 3.4.15 confirms the account before browser sign-in returns to the desktop. It also keeps paid workspaces available through token refreshes and stale browser cookies.

Confirm the account first

Browser sign-in now shows the account before BridgeSpace accepts it, with a direct path to switch accounts.

Subscription checks recover

Paid workspaces no longer fall into an upgrade screen when a startup verification is replayed or delayed.

Desktop sessions stay signed in

Refresh timing, per-session logout, and stale cookie handling no longer invalidate unrelated desktop sessions.

Fixed
  • Browser OAuth confirms the resolved account before handing credentials to BridgeSpace and lets builders restart with a different account.
  • Upgrade prompts name the signed-in account so a subscription tied to another login is immediately visible.
  • Bearer-authenticated desktop requests ignore stale web-session cookies instead of failing write requests at CSRF validation.
  • Web logout revokes only the current web session instead of signing BridgeSpace out on another device.
  • Access-token refresh uses the token's real lifetime, the correct Cognito client, and a forced retry after an API rejection.
v3.4.13

Startup recovery that stops looping

BridgeSpace 3.4.13 keeps Windows terminal failures, subscription checks, and agent resumes from turning into startup loops. Failed work stays visible, recovery stays explicit, and existing terminal layouts remain intact.

Windows terminals recover in place

Blocked shell aliases now fall back to real PowerShell or Command Prompt executables, while large restored layouts pause excess terminals without deleting their panes.

Subscription checks always finish

Verification now has a hard deadline. Temporary failures show Retry and Sign in again, while invalid credentials return directly to authentication.

Agent resumes return to their pane

Recovered Claude and Codex sessions now use durable workspace and pane identity, so a restart restores the conversation where it actually ran.

Changed
  • Deferred terminal panes keep their original split, folder, SSH context, and bound-agent actions until a builder chooses how to restore them.
Fixed
  • Windows System Default skips blocked WindowsApps shell aliases and retries canonical PowerShell and Command Prompt executables for recoverable CreateProcessW failures.
  • Cold-start terminal restore uses a bounded budget and circuit breaker instead of recreating every persisted PTY at once after a crash.
  • Subscription verification cannot spin forever, cannot grant paid access from cache, and cannot apply a late result from a previous account.
  • Agent sessions persist workspace and pane identity so relaunch recovery, History resume, account-limit switching, and BridgeSwarm launches target the original pane.
  • Claude Code mouse selections copy the text inside prompt boxes without border glyphs or padded cells, while deliberate box-art copies remain unchanged.
v3.2.2

Multi-account switching and resume that hold up

BridgeSpace 3.2.2 makes multi-account agents dependable: switching Claude accounts keeps you signed in, resumes run under the account profile the conversation belongs to, and session recovery is honest about what can and can't be resumed.

Connected accounts stay signed in

Switching to a connected Claude account no longer re-runs the first-run wizard and its login screen — onboarding state is seeded from the CLI's real state file at connect and self-heals on every switch.

Resume follows the right account

Resuming a recovered agent now runs under the account profile the conversation was created on. Previously the resume used whichever profile was active, so Claude answered "No conversation found" after an account switch.

Home-directory agents are recoverable

Agents launched in a workspace rooted at the home folder were invisible to crash recovery — an empty Claude settings file silently blocked hook installation. They now register like any other agent and are offered for resume.

Resume failures speak up

When a resumed agent can't start — wrong account, missing CLI — BridgeSpace surfaces a notification and keeps the session recoverable under Settings → History instead of losing it.

Added
  • Agent sessions record the Claude/Codex account profile and transcript path they ran under, powering profile-aware resume.
  • Claude sessions register the moment the CLI starts (SessionStart hook), so an agent closed before its first reply is still offered for resume.
  • Agents launched from the workspace UI are recorded at spawn time, so Codex agents no longer wait for their first turn to become recoverable.
Changed
  • The launch-time cleanup of user-level Claude hook entries now skips workspaces rooted at the home folder, whose project settings live in the same file.
Fixed
  • Switching to a connected Claude account forced a re-login: the onboarding self-heal read .claude.json from inside ~/.claude, where the CLI never writes it — it now reads the real home-root state file, and connects seed it up front.
  • Resumed agents launched under whichever account profile was active and failed with "No conversation found" when it differed — resume commands are now pinned to the conversation's own profile.
  • A successful resume could be misread as failed when the replayed conversation contained phrases like "command not found", re-offering a duplicate resume — failure detection now stands down once the CLI demonstrably booted.
  • Resuming a conversation whose transcript was never saved (closed before the first reply) typed a command guaranteed to fail; it is now blocked up front with a notification and the dead entry stops being re-offered on every boot.
  • The default (un-profiled) Claude sign-in is now detected via its real Keychain item and state file, so Connect Accounts reports it accurately.
  • An empty ~/.claude/settings.local.json permanently blocked hook installation for home-rooted workspaces; empty files are now treated as a fresh install, and refusals are logged where builders can find them.
  • A failed resume silently consumed the session's recoverability; the session now returns to recoverable and a notification explains what happened.
v3.2.1

Settings redesign, SSH presets, self-healing history

BridgeSpace 3.2.1 rebuilds Settings into focused sections, lets SSH profiles carry a default directory and startup command (plus one-click duplicate), keeps usage-limit switch offers from getting lost, and makes the command-history store heal itself.

Settings, redesigned

Settings is rebuilt into focused sections — Appearance, Terminal, Shortcuts, Agents, Accounts, API Keys, Billing, Notifications, About — with one consistent row layout, so you find, change, and leave faster.

SSH profiles carry their workspace

Profiles gain a default directory and a startup command that run right after connect, and a one-click Duplicate copies a profile — stored passwords included — without the password ever leaving the backend.

Command history heals itself

A broken autocomplete database now repairs or quarantines itself and recreates a fresh store instead of failing every launch — worst case it runs in-memory for the session.

Added
  • SSH: per-profile default directory and startup command, applied automatically after the shell is ready.
  • SSH: duplicate a connection profile in one click; stored passwords are copied keychain-to-keychain and never cross IPC.
  • Connect Accounts: a redesigned settings surface for linking Claude and Codex accounts, with per-profile sign-in progress.
Changed
  • Settings rebuilt into focused sections with a shared design kit; the History & Autocomplete area gets the same treatment.
  • Usage-limit account switching is explicitly user-initiated — BridgeSpace offers, you decide. Offers from multiple limited panes now queue instead of being dropped.
Fixed
  • Command-history store self-heals: migration bookkeeping repairs, broken databases are quarantined and recreated, and a last-resort in-memory store keeps autocomplete commands functional.
  • Codex sign-in flows are isolated per account profile, and a signed-out CLI is no longer reported as connected.
  • Relaunching BridgeSpace while a wedged window is open now recovers or reloads it instead of just focusing the broken window.
  • Removing an account profile cancels its in-flight sign-in and can no longer delete directories outside the profiles root.
v3.1.13

Max-effort Claude agents + Windows terminal refocus

BridgeSpace 3.1.13 starts Claude agents at maximum reasoning effort by default, and fixes a Windows issue where the active terminal lost keyboard focus after you Alt-Tabbed back into the app.

Claude agents reason at max effort

Claude now starts with --effort max by default, so agents you spawn from the swarm or the new-workspace wizard reason at full strength without extra flags.

Terminal refocus after Alt-Tab on Windows

Switching away from BridgeSpace and back now returns the cursor to the active terminal automatically, instead of making you click into the pane first.

Changed
  • Claude agents now start with --effort max by default, so swarm- and wizard-spawned Claude sessions run at maximum reasoning effort. Other agents are unaffected.
Fixed
  • Windows: the active terminal now regains keyboard focus automatically when you Alt-Tab back into BridgeSpace, instead of requiring a click into the pane.
v3.1.11

Terminal freeze root-cause fix

BridgeSpace 3.1.11 fixes the core cause of the multi-terminal freezing, lag, and cursor flicker: a focus-recovery feedback loop that pinned the renderer when switching panes or workspaces, refocusing the window, or pasting an image.

Focus-recovery loop eliminated

A programmatic input-recovery focus is no longer mistaken for a user pane switch, so it can no longer re-broadcast a focus recovery to every terminal and re-focus in a runaway loop.

No freeze on refocus, workspace switch, or image paste

Clicking back into the window, switching workspaces, or dropping a screenshot into a terminal no longer triggers the re-focus storm that pegged a CPU core until the app reloaded.

Cursor flicker gone

Terminals skip redundant focus calls once the textarea already owns focus, ending the recursive cursor and input flicker during heavy multi-agent sessions.

Fixed
  • Fixed the terminal freeze, lag, and cursor flicker caused by a focus-recovery feedback loop: a recovery focus fired a DOM focusin that was read as a user pane switch, which re-broadcast a pane-focus recovery to every mounted terminal and re-focused, escalating until the renderer was pinned and reloaded.
  • recoverInputSurface now skips re-focusing a terminal whose textarea already owns focus, matching the guards already used on the other focus paths.
  • Programmatic recovery focuses are marked so the active-pane focus sync ignores them; genuine user clicks and pane switches are unaffected.
v3.1.9

Terminal input freeze recovery

BridgeSpace 3.1.9 fixes a Windows terminal freeze where a stalled xterm write callback could leave an agent pane stuck after heavy output or image paste, and reduces redundant focus retries that made the cursor flicker.

Frozen terminal queues recover

If xterm loses a write callback, BridgeSpace now clears the stale in-flight write and resumes draining queued output instead of leaving the pane stuck.

Focused panes stop re-focusing

Active terminals now skip redundant focus calls once the helper textarea already owns focus, reducing cursor flicker during pane and workspace switches.

Fixed
  • Fixed a terminal freeze where a stalled or lost xterm.write callback could keep the renderer queue permanently in-flight after high-output agent activity or image paste.
  • Reduced cursor flicker by skipping redundant active-terminal focus retries once the xterm textarea is already focused.
v3.1.8

Windows terminal freeze hotfix

BridgeSpace 3.1.8 tightens terminal backpressure handling on Windows so high-output agent sessions do not overwhelm the renderer with hidden canvas work or concurrent xterm writes.

Terminal writes stay single-file

The xterm watchdog now reports stalled writes without pushing more output into xterm while a previous write is still draining.

PTY bursts are truly bounded

Rust now caps each visible terminal payload to the renderer's 256 KB budget instead of coalescing multi-megabyte bursts before sending.

Windows stops painting hidden warm workspaces

Inactive Windows workspaces now hibernate instead of live-rendering hidden xterm canvases in WebView2.

Changed
  • Windows now disables warm-workspace live rendering so inactive terminal canvases no longer compete with the visible workspace during heavy output.
  • Terminal diagnostics remain available when explicitly enabled, but release builds no longer send focus or resume debug events to local debug ingest endpoints from hot paths.
Fixed
  • Fixed a backpressure regression where the write watchdog could schedule another xterm.write while a slow write was still in flight, moving bounded queue pressure into xterm's internal buffer.
  • Fixed Rust terminal reader coalescing so visible IPC payloads are capped to the 256 KB renderer budget and preserve UTF-8 boundaries across flushes.
v3.1.7

Terminal backpressure and swarm recovery

BridgeSpace 3.1.7 hardens terminal output under sustained multi-agent load, adds safer swarm stop and resume handling, and keeps terminal reattach recovery moving when a renderer channel goes stale.

Terminals keep draining under heavy output

Terminal writes now recover if an xterm callback stalls, and oversized PTY bursts are split at safe boundaries before they reach the renderer.

Swarms stop and resume more cleanly

Swarm workspaces now have shared runtime cleanup for graceful stops, hard stops, completed swarms, and resumed integrations.

Terminal reattach recovers stale channels

Session attach now verifies the backend channel state and refreshes stale Tauri Channels instead of trusting a dead renderer cache.

Added
  • Swarm workspaces now support explicit resume and hard-stop paths so builders can restart integrations or tear down every agent runtime from one control flow.
Changed
  • Visible terminal output now flushes in renderer-sized bursts, with Rust large-flush pressure lowered to match the 256 KB xterm drain budget.
  • Completed swarms now share one cleanup path that unregisters monitors, stops or destroys terminal sessions, tears down mailbox watchers, and removes stale nudge state.
Fixed
  • Fixed terminal freezes caused by a stalled xterm.write callback leaving the renderer queue permanently scheduled and unable to drain.
  • Fixed oversized PTY chunks bypassing the per-frame drain limit by splitting queued output at ANSI, OSC, and UTF-16-safe boundaries.
  • Fixed stale terminal attach state by checking whether Rust still has a live data channel before skipping channel reattachment.
v3.1.6

Freeze fix under heavy multi-agent load

BridgeSpace 3.1.6 fixes a freeze that could pin the app at full CPU when many agent terminals were open and you switched panes or apps, and now reclaims memory by automatically cleaning up finished agents in idle background workspaces.

No more freeze under heavy swarm load

Fixed a focus loop that could pin the renderer at full CPU when many agent terminals were open and you switched panes or switched back to the app.

Background agents clean themselves up

Finished agents in idle background workspaces are now reaped automatically after 15 minutes to reclaim memory. Active and recently used workspaces are left alone, and you can turn it off in Settings.

Changed
  • Finished background agents are now cleaned up by default: after a workspace sits idle for 15 minutes, agents that are done or have exited are torn down to free their CLI and memory MCP server. Active and recently used workspaces are never touched, and the behavior is toggleable in Settings.
  • The floating terminal control bar now uses a lighter solid surface and the active-pane indicator animates more cheaply, cutting the rendering work done on every focus change.
Fixed
  • Fixed a freeze where switching focus under heavy multi-agent load could pin the renderer at full CPU: terminal panes no longer re-focus redundantly once focus has landed, and background workspaces no longer all grab focus on a single window or visibility event.
v3.1.1

Pre-ship diff review and a restored release pipeline

BridgeSpace 3.1.1 adds a read-only, pre-ship diff review that hands your local Git changes to an agent for a focused safety check, and restores the desktop release pipeline so builds ship reliably again.

Review local changes before you ship

The Git sidebar can package your staged, unstaged, and untracked changes into a read-only review prompt so an agent can flag bugs, regressions, and security issues before you commit or push.

Secrets stay out of the review

Diff review redacts secret-like content and blocks sensitive paths like env files, credentials, and private keys, so review packets never leak local secrets.

Added
  • Pre-ship diff review: send working-tree, staged, and untracked changes to an agent for a read-only correctness and security pass from the Git sidebar.
  • Diff review redacts secret-like values, blocks sensitive paths, and treats every diff line as untrusted input to resist prompt injection.
Fixed
  • Restored the desktop release pipeline by pinning the Tauri JavaScript API and global-shortcut plugin to the 2.10 line so they match the pinned Tauri Rust core; a drift to 2.11 had blocked the build on every platform.
v3.0.84

Detached panels, Git workflows, and Bridge widget polish

BridgeSpace 3.0.84 restores the newer workspace surface with detachable right-panel windows, Git and worktree controls, a floating Bridge Assistant widget with global push-to-talk, and safer session recovery for agent panes.

Right-panel views can float

Browser, editor, Git, Bridge, and other right-panel workflows can move into detached OS windows while staying synced with the active workspace.

Git work is closer to the terminal

The sidebar gains Git status, diff, branch, commit, and worktree flows so builders can manage repository changes without leaving BridgeSpace.

Bridge Assistant gets a floating voice widget

The Bridge widget can stay available outside the main window and now supports a global push-to-talk path for faster voice-driven work.

Added
  • Detached right-panel windows for browser, editor, Git, Bridge, and related workspace tools.
  • Git sidebar workflows for status review, file diffs, commits, branches, and worktree creation.
  • Floating Bridge Assistant widget support with global push-to-talk integration.
Changed
  • BridgeBoard and BridgeMemory are treated as workspace content surfaces instead of top-level app views.
  • Agent session recovery now prefers the restored pane for a session before creating a fresh workspace.
  • Swarm workspaces now track plan and completion events more explicitly to avoid noisy or duplicate follow-up activity.
Fixed
  • Removed deployment-blocking debug command logging from terminal command dispatch.
  • Restored release metadata alignment so the desktop app, Tauri config, npm lockfile, and Rust lockfile all ship as 3.0.84.
v3.0.83

Rollback to the stable terminal release

BridgeSpace 3.0.83 rolls the desktop app back to the known-good 3.0.72 code path while keeping the updater version moving forward, giving builders a stable release while the newer terminal and workspace changes are reworked.

Stable terminal behavior is restored

The app returns to the 3.0.72 terminal implementation that handled Claude and Codex panes without the recent rendering and PATH regressions.

Risky post-3.0.72 changes are held back

Newer terminal scheduler, shell startup, browser/sidebar, history, and workspace changes are removed from this release so builders can keep shipping while those branches are stabilized.

Changed
  • Rolled the BridgeSpace desktop source back to the stable 3.0.72 release while publishing it as 3.0.83 so updater clients receive it as a normal forward update.
  • Temporarily held back post-3.0.72 terminal, shell startup, browser/sidebar, history, and workspace changes until they can be reintroduced with stronger packaged-build coverage.
Fixed
  • Restored the terminal behavior builders had before the 3.0.74 regression window, avoiding the broken Claude/Codex rendering and macOS command lookup failures reported in later builds.
v3.0.82

Terminal rendering restored to the proven path

Reverts the multi-agent terminal renderer all the way back to the stable per-terminal approach used in 3.0.72, fully removing the global render scheduler, the single-write-in-flight gate, and frame-agnostic chunk splitting that caused agent panes to paint blank or partial after 3.0.74.

Agent terminals paint reliably again

Each visible terminal once again drains a full repaint per frame on its own animation loop, so Claude, Codex, and other full-screen agent panes no longer sit blank or partially painted under multi-agent load.

Fixed
  • Removed the global terminal render scheduler introduced in 3.0.74; rendering is back to the per-terminal animation-frame loop from 3.0.72 that handled multi-agent output without blank panes.
  • Removed the single-write-in-flight gate so a delayed or dropped xterm write callback can no longer leave a pane stuck on a blank frame.
  • Removed frame-agnostic chunk splitting so a full-screen agent repaint is applied in one frame instead of being sliced across many, eliminating partially painted frames.
v3.0.81

Terminal paint recovery on the stable renderer

Fixes the remaining blank/partial terminal paint that could still occur on 3.0.80 even with the global render scheduler disabled, by hardening the default per-terminal render path and the backend output flusher.

Agent panes recover instead of staying blank

A delayed or lost xterm write callback now self-recovers on the default renderer path, a single canvas error no longer permanently stops painting, and steady agent output flushes from the backend on time instead of buffering until a 1MB burst.

Fixed
  • Fixed a default-path render wedge where a delayed or dropped xterm write callback could leave Claude/Codex panes blank with no frame armed; queued output now re-arms the flush and retries even with the global scheduler disabled.
  • A canvas InvalidStateError no longer permanently neutralizes the renderer (which could blank every pane until remount); BridgeSpace now logs once and schedules a fit/refresh recovery.
  • Backend terminal output now flushes on a max-age deadline, so steady sub-frame agent streaming paints in real time instead of buffering until a large flush threshold.
v3.0.80

Terminal paint rollback

Turns the new global terminal render scheduler back into an opt-in path after 3.0.79 still allowed active Claude and Codex panes to sit blank or partially painted.

Agent panes return to the stable renderer path

BridgeSpace now defaults back to the per-terminal render loop used before 3.0.74, restoring the known-good terminal paint behavior from 3.0.72 while the scheduler is reworked behind an opt-in flag.

Changed
  • The global terminal render scheduler is now opt-in via `localStorage['bridgespace.terminalRenderScheduler.v1'] = 'on'`; default builds use the older per-terminal render loop until the scheduler has a dedicated xterm DOM regression harness.
Fixed
  • Fixed the remaining terminal paint regression where Claude, Codex, and other full-screen agent panes could keep running while the visible terminal stayed blank or only partially painted.
v3.0.79

Terminal painting recovery hotfix

Fixes a scheduler edge case where Claude, Codex, and other full-screen terminal apps could keep running while the pane stayed blank or partially painted after a delayed xterm write callback.

Agent terminals paint again

Queued output now re-arms the render scheduler when an earlier xterm write is still marked scheduled, so active agent panes recover instead of sitting behind a blank alternate-screen frame.

Fixed
  • Fixed a terminal rendering wedge introduced after 3.0.72: if a small immediate xterm write delayed or lost its callback while the global render scheduler was enabled, later Claude/Codex TUI output could queue without re-arming the scheduler. New queued output now kicks the scheduler idempotently so the existing watchdog can recover the pane.
v3.0.78

Terminal freeze fix, drag-to-reorder restored, and recents cleanup

Fixes the freeze where clicking between terminal panes pegged the app in an endless re-render, restores drag-and-drop reordering of workspaces and panes on macOS (a 3.0.73 regression), lets builders remove stale Recents entries, and stops deleted workspace folders from being silently recreated.

Clicking between panes no longer freezes the app

An infinite focus↔active-pane feedback loop that pinned the renderer at 100% CPU when switching terminal panes is resolved; programmatic focus no longer fights the active-pane reconciler.

Reordering works again on macOS

Builders can once more drag to reorder workspaces in the sidebar and rearrange terminal panes; enabling Tauri's native file-drop in 3.0.73 had disabled in-app HTML5 drag-and-drop on macOS.

No more resurrected folders

Opening or syncing a deleted or moved workspace root no longer recreates the folder and a phantom .claude/ directory, which had broken OneDrive sync.

Added
  • Recent workspaces can be removed individually from the new-workspace screen, and dead entries are pruned automatically when their folder no longer exists.
Fixed
  • Fixed an infinite re-render loop when clicking between terminal panes: the focus reconciler treated our own programmatic focus as a user action and ping-ponged the active pane, pegging the renderer's main thread and freezing the app. Programmatic focus echoes are now ignored while genuine clicks are still honored.
  • Restored in-app drag-and-drop on macOS: reordering workspaces in the sidebar and rearranging terminal panes works again. Enabling Tauri's native file-drop in 3.0.73 turned the WKWebView into a native drag destination that swallowed WebKit's own HTML5 drag events; the vendored wry now defers path-less (internal) drags to WebKit while still routing real OS file drops for absolute paths.
  • Opening or hook-syncing a workspace whose folder was deleted or moved no longer recreates the directory and a phantom .claude/ folder, which previously corrupted OneDrive sync; the stale folder is dropped from Recents instead.
v3.0.77

Multi-agent terminal freeze fix

Fixes terminals freezing on a blank or partially-painted frame when a workspace full of agents streams output at once, by bounding how much the renderer does per frame and never handing xterm one giant write.

Terminals stay alive under a full swarm

A single huge burst of output is now split into bounded slices and the render scheduler caps per-frame work, so spawning a grid of agents no longer saturates the main thread and freezes panes blank.

Changed
  • Lowered the global per-frame render budget and per-background-terminal slice so a grid of streaming agents can't saturate a single frame; background panes round-robin and catch up across frames instead of blocking the focused terminal and keystroke echo.
Fixed
  • Oversized single output chunks (e.g. a 1MB full-screen TUI repaint arriving in one read) are now split at a safe boundary instead of being handed to xterm in one write, which previously blocked the main thread for hundreds of milliseconds and could wedge a pane — or the whole app — for seconds during a multi-agent spawn storm.
  • Re-tuned the stuck-write watchdog timeout above the worst-case legitimate write time so it no longer fires mid-write under heavy load (which could have re-introduced partial-frame painting).
v3.0.76

Terminal freeze hotfix

Fixes a regression in 3.0.75 where terminal panes — especially freshly spawned agent panes under heavy output — could freeze on a blank or partially-painted frame and never recover.

Terminals no longer freeze blank

Terminal liveness no longer depends on xterm's async write callback, so a delayed or dropped callback can't leave a pane stuck on a blank or half-drawn frame; a watchdog reclaims any stuck write.

Fixed
  • Decoupled the render scheduler's liveness check from xterm's in-flight write flag so a delayed or dropped write callback can no longer stop the scheduler from repainting a terminal, which in 3.0.75 could freeze panes (notably freshly spawned agent panes) on a blank or partially-painted frame.
  • Added a watchdog that reclaims a stuck in-flight xterm write after a short timeout, so a lost write callback recovers on the next frame instead of wedging the pane permanently.
v3.0.75

Terminal repaint, native file drops, and a resilient file tree

Fixes stale or partial repaints in Claude, Codex, and other alternate-screen terminal apps, makes files dragged in from Finder keep their real source path, and keeps the file tree readable when a folder contains broken symlinks or unreadable entries.

Agent terminals repaint correctly

Terminal output now waits for xterm to finish parsing and painting each slice before the scheduler feeds the next one, restoring clean Claude and Codex TUI rendering.

Dropped files keep their real path

Files dragged in from Finder now arrive with their true source path instead of being silently copied into the terminal's working directory.

File tree survives unreadable entries

A single broken symlink or unreadable item no longer hides the rest of a folder, and the sidebar now shows an "Unable to read folder" notice when a directory genuinely can't be read.

Fixed
  • Serialized per-terminal xterm writes inside the global render scheduler so alternate-screen TUIs no longer render from partially-applied output frames.
  • Files dropped in from Finder now insert their real source path through Tauri's native drag-drop instead of being silently copied into the terminal's working directory.
  • A single unreadable entry such as a broken symlink no longer hides the rest of a folder in the file tree, which now surfaces an "Unable to read folder" notice when a directory truly can't be read.
v3.0.74

Responsive terminals, SSH reconnect, and out-of-memory crash insight

The terminal stays responsive when many agents stream output at once, dropped SSH sessions can reconnect in place, agents that were alive at quit or crash are offered for resume, and crash reports now capture a memory trajectory to pinpoint out-of-memory exits.

Terminals keep up with many agents

A single global render scheduler serves the focused terminal first and round-robins background panes, so typing stays instant even while a swarm of agents streams output, fixing the multi-agent freeze on Apple Silicon.

Resume agents after a crash or quit

Agents still running when BridgeSpace exits are now offered for resume into their original terminal on next launch; explicit closes still end the session.

Reconnect dropped SSH terminals

A dropped SSH session rebuilds in place under the same terminal, recovering saved passwords from the keychain, with TCP no-delay for lower typing latency.

Added
  • Reconnect a dropped SSH terminal in place under the same session, with saved-password recovery from the keychain and TCP no-delay for lower interactive latency.
  • Crash reports now include a resident-memory trajectory (RSS, peak RSS, thread count, and terminal count) to pinpoint out-of-memory and jetsam exits.
Changed
  • Terminal rendering is coordinated by one global scheduler that serves the focused terminal first and round-robins background panes, eliminating the multi-agent typing freeze on Apple Silicon. A rollback flag restores the previous behavior if needed.
  • Terminal output streams as raw bytes with streaming UTF-8 decode, so high-throughput and multi-byte output such as emoji and CJK render correctly without per-byte escaping overhead.
  • Rapid keystrokes preserve byte order through a per-terminal write gate.
Fixed
  • Agent sessions are no longer ended when BridgeSpace quits, so agents alive at exit are correctly offered for resume instead of being discarded.
  • Resume restores an agent into its original terminal by matching its session, falling back to its working directory or a fresh workspace.
  • Zoom in, out, and reset shortcuts (⌘/Ctrl with the plus, minus, or zero key) now work on non-US keyboard layouts such as Swedish, German, and AZERTY, and over remote desktop, where the expected key could previously zoom the wrong way or not register.
Removed
  • Removed the discontinued BridgeCode agent integration.
v3.0.72

Terminal polish and Windows reliability

Tightens terminal output handling around ANSI escapes and UTF-8 boundaries, makes the Windows Codex hook more resilient, and adds crash-reporting and slow-path telemetry to catch regressions earlier.

Cleaner terminal output

Large pastes and high-throughput agent output no longer split inside escape sequences or surrogate pairs, so colors, hyperlinks, and emoji render cleanly after trims and replays.

Windows Codex hook resilience

Rebuilt the Codex notification hook in cmd-native form so it no longer chokes on quoting or stale multi-line notify entries in the Codex config.

Better crash reporting

Sentry now initializes the renderer directly from the host so we catch errors that previously slipped past the auto-injector, with tighter filters to keep the signal clean.

Added
  • Slow-path telemetry on terminal scrollback reads and process-status checks so regressions surface in logs before they reach users.
Changed
  • Cmd+C / Ctrl+C with a terminal selection now copies via the renderer instead of relying on the OS Edit menu, fixing inconsistent behavior on macOS.
  • Sentry drop patterns now scope to known noise sources only, so genuine runtime errors stop being suppressed.
Fixed
  • Terminal scrollback no longer leaves stray escape fragments after a buffer trim.
  • Swarm activity monitor is SSR-safe and ignores empty/whitespace-only lines when detecting agent activity.
  • Vendored wry patch guards against null dispatch targets in synthetic mouse events on both macOS and Linux.
v3.0.71

What's New release notes, in-app and on the web

BridgeSpace now shows a what's-new card on the first launch after every update, and the full release ledger now lives at bridgemind.ai/changelog so builders can see exactly what shipped before deciding whether to update.

What's New on every update

The first time you open BridgeSpace after upgrading, you see a card listing what's new in that version. Acknowledge once and it goes away until the next update.

Public release ledger

Every shipped BridgeSpace version is now archived at bridgemind.ai/changelog with per-version deep links.

Carries the 3.0.70 fixes

Grok Build agent, Windows clipboard image-paste dedupe, Windows Codex multiline prompt filing, and the dropped on-launch keychain prompt.

Added
  • What's New modal — surfaces release highlights on the first launch after every update, gated by an explicit Acknowledge action and persisted per install.
  • Public release ledger at bridgemind.ai/changelog with per-version deep links.
Changed
  • Release pipeline now publishes the canonical changelog JSON alongside the desktop bundle so the in-app and website surfaces never drift.
v3.0.70

Grok Build agent and Windows reliability

Adds Grok Build to the supported agent roster and clears the last batch of Windows-side rough edges around clipboard, Codex prompts, and on-launch auth.

Grok Build agent

Grok Build now ships in the swarm alongside Claude, Codex, and the rest of the roster.

Windows clipboard dedupe

Image pastes on Windows no longer arrive twice.

Windows Codex multiline

Codex now correctly files multi-line prompts on Windows instead of fragmenting them.

Added
  • Grok Build agent support across swarm + standalone spawn paths.3fe34ed
Changed
  • Swarm and agent ergonomics polish on the launch-and-recover paths.5ec31f6
Fixed
  • Windows clipboard now dedupes repeated image pastes.357e870
  • Windows Codex correctly files multi-line prompts.d439fc6
  • Dropped the on-launch keychain prompt that some builders saw on cold start.5ec31f6
  • Release jobs now have contents:write so artifact upload no longer fails the release.2d0292e
BridgeVoice application icon

@bridgevoice

BridgeVoice

Privacy-first dictation release notes — on-device Whisper, push-to-talk reliability, injection paths, and Sentry-driven hardening.

Latest
v2.5.3

Session loops ended, mic auto-recovery, steadier push-to-talk

BridgeVoice 2.5.3 stops expired sessions from silently retrying forever and prompts re-login instead, rebuilds silent microphone streams before giving up, and hardens push-to-talk against phantom releases and macOS event-tap drops.

Expired sessions now ask for re-login

Permanently dead refresh tokens end the background retry loop, clear themselves, and surface the sign-in prompt instead of silently hammering the API.

Silent mics recover on their own

A stream that delivers no audio rebuilds on the same device, then fails over to the next mic before the no-audio banner appears.

Push-to-talk holds its ground

Recordings can no longer be cut by a phantom release in the first 150ms, and macOS event-tap drops self-heal with one aggregated diagnostic.

Added
  • Silent microphone streams now run a two-stage recovery — rebuild on the same device, then fail over to the next candidate — before the no-audio banner shows.
  • Update checks identify themselves to the edge and retry once after 30 seconds; a scheduled canary now watches the update feed every 30 minutes.
  • Switching to local transcription with a missing model falls back to the best downloaded model and says so, instead of erroring.
Changed
  • Audio capture moved to a wait-free ring buffer, so the realtime callback no longer drops samples under lock contention.
  • Loopback devices (Stereo Mix, Line In, virtual cables) are excluded from automatic microphone fallback unless explicitly selected.
  • Error reports truncate embedded HTML bodies, consolidate fragmented groupings, and skip known no-op messages.
Fixed
  • Permanently expired sessions (invalid or 30-day-old refresh tokens) stop retry-looping, clear the dead token, and prompt re-login; flaky networks can no longer bypass the auth failure hard-stop.
  • Push-to-talk requires a real key-up during the first 150ms of a hold, ending sub-100ms phantom stops on virtual audio setups.
  • Dictated text re-resolves its target window when the saved one is destroyed on Windows, and frontmost-app lookup runs in-process on macOS instead of shelling out to AppleScript.
  • Command panics are caught and reported instead of aborting the app on Linux.
  • Model downloads tolerate antivirus stat races on Windows with a short retry.
v2.5.2

Windows mic reliability + quit from the dashboard

BridgeVoice 2.5.2 repairs silently dead Windows mic streams while the app is idle, stops sending builders to privacy settings they already fixed, and adds an explicit Quit so exiting never depends on finding the tray icon.

Dead mic streams heal before you dictate

A Windows watchdog now detects a silently dead microphone stream while BridgeVoice is idle and rebuilds it before your next push-to-talk — and fails over to another microphone if the device stays silent.

No more false microphone setup warnings

The dashboard banner now trusts Windows' own permission registry and live capture state, so it only appears for a real privacy block or a genuinely missing microphone.

Quit BridgeVoice from the dashboard

Closing the dashboard now explains that BridgeVoice keeps running in the tray, and both the dialog and the account menu offer a real Quit.

Added
  • One-time notice after the first dashboard close explaining that BridgeVoice keeps running in the system tray, with a Quit BridgeVoice button.
  • Quit BridgeVoice item in the account menu, mirroring the tray quit teardown exactly.
Fixed
  • Windows: an idle watchdog now rebuilds a microphone stream that silently died between recordings, so the first dictation after a driver or audio-engine hiccup is no longer lost.
  • Windows: when a rebuilt stream stays silent, BridgeVoice fails over once to a different microphone for that recording instead of giving up.
  • Windows: the 'Microphone setup needed' banner no longer fires on flaky device probes — a real privacy block shows 'Microphone access blocked by Windows', zero devices shows 'No microphone detected', and a working mic never banners.
v2.5.1

Credit-powered rewrites, auto-enhance, and a theme-true widget

Polish and Enhance Prompt now run on BridgeMind credits with a live balance in the dashboard, a new setting rewrites every dictation into a polished AI prompt automatically, and the floating widget follows your theme.

Polish + Enhance Prompt on credits

Cloud rewrites now charge BridgeMind credits per use, and the dashboard sidebar shows your live balance.

Auto Enhance Prompt

Builders can flip one setting and every dictation pastes as a polished AI prompt - no button click.

Windows 11 push-to-talk fixed

Push-to-talk no longer goes dead after updating - the broken readiness gate is gone.

Added
  • Polish and Enhance Prompt are wired into the BridgeMind credits system: each rewrite reserves, settles to actual usage, and refunds on failure.
  • Credits balance now shows in the dashboard sidebar, account menu, and Subscription page, updating live after every rewrite.
  • Auto Enhance Prompt setting (Settings -> Recording Behavior): every dictation is rewritten into a polished AI prompt before pasting, with fallback to your exact words if enhancing fails.
  • Parakeet V3 local model: on-device multilingual transcription across 25 languages with auto-detect.
  • Optional recording start/stop chimes (Settings -> Behavior).
  • Widget quick-action buttons now show a pointer cursor and hover styling on macOS.
Changed
  • The floating widget now follows your theme: pure-black capsules with white text on Black, the inverse on Light - pill, toast, and quick actions included.
  • Polish and Enhance Prompt return only the rewritten text - no chatty preamble, options, or commentary - backed by a rebuilt rewrite engine.
  • Theme system consolidated to two themes, Black and Light; legacy theme choices migrate automatically.
Fixed
  • Windows 11 push-to-talk no longer goes dead after updating the app.
  • Releasing the push-to-talk key now stops recording instantly instead of hanging until a watchdog timer.
  • Double tray icons on macOS and Windows.
  • Shortcuts page no longer sticks on 'Waiting for system access' after saving.
  • White-on-white button text on the Black theme.
  • Startup crash 'Importing a module script failed' from stale dev chunks.
v2.2.57

Auth-hiccup recording grace, harder Windows focus restore, faster startup

Paying builders keep push-to-talk through token-refresh hiccups, Windows focus restore escalates before falling back to manual paste, and both webviews start faster with per-window code splitting and a leaner widget render path.

Recording survives sign-in hiccups

A session waiting on token refresh no longer locks the recording shortcuts for paying builders — the gate honors the cached subscription while sign-in self-heals in the background.

Windows: focus restore retries harder

When Windows refuses to return focus to the target app, BridgeVoice now escalates with an input-state nudge and retries before falling back to clipboard paste.

Faster widget and dashboard startup

Each webview now loads only its own code, fonts are self-hosted, and the live waveform renders in an isolated frame-coalesced island.

Added
  • Hotkey self-diagnostics: BridgeVoice now detects the instant-stop failure signature (recordings ended by the release watchdog within 100 ms, repeatedly) and reports it automatically, so a regression of the v2.2.53 class surfaces in hours instead of via bug reports.
Changed
  • Widget and dashboard load as separate lazy chunks — the always-on pill no longer parses the dashboard's entire module graph at launch, and vice versa.
  • The live waveform is an isolated, memoized component with frame-coalesced updates, so audio levels no longer re-render the whole widget ~33 times per second.
  • Fonts are self-hosted via @fontsource; the webview no longer blocks on a Google Fonts stylesheet at launch.
  • Dictionary, statistics, and audio-device commands moved off the main/UI thread, removing event-loop freezes during dictation and dashboard refreshes.
  • Release hardening: builds now refuse to ship a consuming keyboard hook (CI guard), and the release pipeline pushes tags atomically and verifies the build workflow actually starts — closing the gap that silently skipped v2.2.55.
Fixed
  • A paying builder whose token refresh failed transiently saw "Pro subscription required" on every shortcut press until the background refresher recovered. The recording gate now stays open while the session is merely expired with a valid refresh token and the cached subscription is inside its paid period; each press also doubles as a recovery attempt.
  • Windows: focus restore failures (the "paste manually" fallback) now retry once after a benign Alt tap that lifts the foreground lock — the same escalation AutoHotkey uses — and remaining failures are tagged with the refusing app so they can be fixed per-target.
  • macOS: hotkey dispatch moved off the event-tap callback onto a worker thread, so showing windows or emitting events can no longer stall the tap into a system-disabled state mid-hold.
  • Startup: the Whisper model probe hashes candidate files on the blocking pool and no longer holds the model-manager lock, so other commands aren't blocked while models verify.
  • Recording start latency: the post-start capture probe no longer adds 25-50 ms of perceived delay on healthy recordings.
v2.2.56

Windows push-to-talk fix, native recording chimes, readable widget errors

Recording no longer stops itself on the recommended Ctrl + Win shortcut on Windows, recording start and stop get an optional native chime, and the floating widget now shows error toasts at full size with terser messages.

Windows: Ctrl + Win push-to-talk works again

On fresh installs the managed Ctrl + Win shortcut stopped recording the instant it started. The keyboard hook is now listen-only, and the Start Menu is suppressed with a masking keystroke instead.

Recording start/stop chimes

An optional soft chime confirms the mic opened and closed — synthesized natively so it plays even while the widget is hidden. Toggle and preview in Settings → Behavior.

Widget errors are readable and visible

The widget window now resizes to fit its toast, reveals itself when auto-hidden, and shows one terse action-first line instead of a clipped paragraph.

Added
  • Recording cues: a soft rising chime when recording starts and the mirrored falling chime when it stops, synthesized Rust-side so playback works even while the widget webview is hidden or still booting. Toggle and audition preview live in Settings → Behavior.
Changed
  • Widget toast messages are compacted to one terse, action-first line (daily limit, sign-in, mic, clipboard, and timeout cases); the full diagnostic stays available on hover.
Fixed
  • Windows: push-to-talk on the managed Ctrl + Win shortcut stopped recording about 25 ms after it started on fresh installs. The low-level hook consumed the combo's key events to keep the Start Menu closed, which also hid them from the physical-release watchdog. The hook is now listen-only and a benign masking keystroke suppresses the Start Menu instead.
  • Widget: error toasts no longer clip — the window resizes from Rust with bottom-anchored growth clamped to the monitor work area, replacing renderer resize calls that had silently failed since v2.2.53.
  • Widget: an auto-hidden pill now reveals itself when an error toast needs to be shown.
  • Injection: text insertion waits for the in-flight foreground-app capture instead of racing it, so a very fast tap can no longer paste into the previous recording's target window.
  • Settings: concurrent writes (widget position persistence vs. a Settings toggle) no longer silently revert each other — config mutations now run as serialized transactions.
  • Pausing or rebinding shortcuts mid-recording now ends the recording cleanly instead of leaving the widget stuck on listening until the safety timer.
v2.2.55

One-click recommended push-to-talk setup

The Shortcuts page now makes the recommended push-to-talk key a one-click choice on each device, keeps setup verification obvious, and improves Windows text insertion when BridgeSpace is nearby.

Use the recommended shortcut in one click

Shortcuts now shows the managed push-to-talk recommendation for this device and a Use Recommended button that sets it immediately.

Setup stays visible until verified

After selecting the recommended key, the page shows Run Setup until BridgeVoice verifies a native global press and release.

Safer Windows insertion

Windows dictation no longer falls back into BridgeSpace unless BridgeSpace was the actual target, and failed focus restores leave text on the clipboard for manual paste.

Added
  • Shortcuts now shows a prominent recommended push-to-talk callout with a one-click Use Recommended action. The key resolves from the native per-device recommendation: Fn / Globe on healthy Macs, Control + Option after macOS fallback, Ctrl + Win on Windows, and Ctrl + Alt on Linux.
Changed
  • When the recommended push-to-talk key is selected but not verified, the callout shows Run Setup until onboarding proves a native global press and release.
  • Push-to-talk can now use a single held modifier such as Alt. Toggle recording remains press-once and still rejects modifier-only shortcuts.
Fixed
  • Windows: click-to-record now captures the target window before recording, BridgeVoice-owned windows are ignored as insertion targets, and BridgeSpace IPC handoff is used only when BridgeSpace was the saved target.
  • Windows: failed foreground restores leave the transcript on the clipboard for manual paste instead of writing it to the BridgeSpace handoff file, and synthetic paste now requires foreground readback confirmation.
v2.2.54

macOS push-to-talk moves to the Fn / Globe key, and Shortcuts is back

On macOS, managed push-to-talk now uses the Fn (Globe) key by default — with an automatic Control + Option fallback for Macs that can't deliver Fn — and the standalone Shortcuts page returns to the sidebar.

Push-to-talk on the Fn / Globe key (macOS)

Managed push-to-talk now defaults to the Fn (Globe) key on macOS. Existing setups migrate automatically and re-run the quick setup test once.

Automatic Control + Option fallback

If your Mac can't reliably deliver the Fn key during setup, that device falls back to Control + Option on its own — without changing the default for everyone else.

Shortcuts page is back

The standalone Shortcuts page returns to the sidebar after being folded into Settings.

Changed
  • macOS: managed push-to-talk now defaults to the Fn (Globe) key instead of Control + Option. Existing macOS setups migrate automatically and re-verify with the one-time setup test before recording.
  • macOS: a Mac that can't reliably deliver the Fn key during setup now falls back to Control + Option on just that device, without changing the default for other Macs. Onboarding also sets the system "Press Globe key to: Do Nothing" preference so Fn is free for push-to-talk.
  • The standalone Shortcuts page is back in the sidebar; it was folded into Settings in 2.2.53.
v2.2.53

Refreshed dashboard, auto-hiding widget, and steadier push-to-talk

The dashboard gets a cleaner, more consistent look, the floating widget can now stay hidden until you hold push-to-talk, and a macOS fix keeps push-to-talk from getting stuck on.

Refreshed dashboard UI

A tighter, more consistent dashboard with a unified type scale and shared controls across Settings, Stats, History, and more. Shortcuts now live inside Settings.

Auto-hide widget when not recording

New Settings toggle keeps the floating pill hidden at idle and reveals it only while you hold push-to-talk. Push-to-talk mode only; toggle and click-to-record keep the pill visible.

Push-to-talk no longer gets stuck on (macOS)

Diagnostics writes were moved off the macOS event tap so a busy disk can't stall it and drop a key-up, which previously left recording stuck on.

Added
  • "Auto-hide widget when not recording" setting (Settings → Widget Appearance): keeps the floating pill hidden at idle and reveals it only while push-to-talk is held. Push-to-talk mode only.
  • A persistent "Finish push-to-talk setup" reminder on the dashboard when a managed hotkey exists but hasn't passed its global press/release verification, with a button to re-open setup.
Changed
  • Rebuilt dashboard UI with a named typography scale and shared primitives (segmented control, option card, select, switch, banner, empty state, setting row) for consistent spacing across Settings, Stats, History, Dictionary, Subscription, and Suggestions; the standalone Shortcuts page is now part of Settings, and the auth, welcome, and onboarding screens were redesigned to match.
  • macOS managed push-to-talk now uses Fn / Globe by default, with a per-device Control + Option fallback when Fn is not delivered reliably. Existing configs on the previous managed Control + Option value migrate to Fn and must re-verify the press/release test before recording.
Fixed
  • macOS: push-to-talk could get stuck on because diagnostics writes ran inside the event tap and a busy disk could stall it long enough for macOS to disable the tap and drop a key-up. Diagnostics now run on a dedicated writer thread, and the hands-free double-tap latch resets on any stop, pause, or shortcut rebind.
v2.2.52

Copy to clipboard, Traditional Chinese, and a paying-Pro reconnect fix

Transcripts can now be copied to your clipboard to paste manually instead of auto-inserted, cloud dictation adds Traditional Chinese, and paying Pro builders no longer see a false "Pro Required" lock during a brief reconnect.

Copy to clipboard instead of pasting

Builders can now send a finished transcript to the clipboard to paste wherever they want with Cmd+V / Ctrl+V, instead of auto-inserting it into the focused field. Opt-in from Settings, off by default.

No false "Pro Required" on reconnect

A token refresh or brief network drop no longer flashes the upgrade lock at paying Pro builders. The widget now shows a neutral "Reconnecting…" state and recovers on its own.

Traditional Chinese dictation

The cloud language picker now offers Chinese (Traditional), converting transcription output to Taiwan-standard Traditional characters.

Added
  • Copy-to-clipboard output mode (Settings → Recording Behavior): finished transcripts are placed on the clipboard for manual paste instead of auto-inserted into the focused field. Off by default.
  • Chinese (Traditional) cloud dictation, alongside the renamed Chinese (Simplified); output is converted to Taiwan-standard Traditional characters.
Fixed
  • Paying Pro builders no longer briefly saw a "Pro Required" lock during a token refresh or transient network drop — the widget now shows a neutral "Reconnecting…" state and self-heals on the next successful refresh.
  • A flaky network can no longer end your session: only genuine auth failures (not timeouts, 5xx, or rate limits) count toward the background-refresh hard stop, so a connectivity blip won't force a re-login.
  • Linux: short dictations containing non-ASCII characters (accents, Turkish, CJK, emoji) are no longer dropped or mangled — they now use the Unicode-safe clipboard paste path on X11.
v2.2.51

What's New release notes refresh

BridgeVoice's what's-new card is now powered by the same release ledger that lives on bridgemind.ai, so the same release notes are visible inside the dashboard, on the web, and at every future update.

Release notes on every update

The dashboard now shows a what's-new card the first time you open it after upgrading, with the same content that ships on bridgemind.ai/changelog.

Public release ledger

Every shipped BridgeVoice version is now archived at bridgemind.ai/changelog with per-version deep links.

Carries the 2.2.50 fixes

Auth refresh storm is fully resolved, the server-driven update gate is live, and Windows mic permission diagnostics now deep-link to the OS toggle.

Added
  • What's New modal in the dashboard, driven by the canonical changelog JSON.
  • Public release ledger at bridgemind.ai/changelog with per-version deep links.
Changed
  • Release pipeline now publishes the canonical changelog JSON alongside the desktop bundle so the in-app and website surfaces never drift.
v2.2.50

Auth refresh storm fix + server-driven update gate

Closes the loop on the BRIDGEVOICE-R auth refresh event storm, adds a server-driven update gate so stuck clients can be moved forward, and ships better Windows microphone diagnostics.

Auth refresh now stops cleanly

When your session is revoked, BridgeVoice stops retrying and prompts you to sign in again instead of looping forever.

Server-driven update prompt

Older clients stuck on a buggy build now see a blocking update overlay so the fix can land.

Better Windows mic diagnostics

When Windows mic privacy is denied, BridgeVoice now tells you exactly that and the dashboard banner has an "Open Microphone Settings" button that jumps straight to the Windows privacy toggle.

Windows clipboard now keeps the transcript

After dictation on Windows, the transcript stays on your clipboard. Previously BridgeVoice restored your prior clipboard contents ~500 ms later, which could re-expose passwords or 2FA codes to background apps that read the clipboard on a delay.

Added
  • Server-driven X-App-Min-Version / X-App-Update-Required headers with a new in-app UpdateRequiredOverlay.
  • Per-candidate microphone enumeration diagnostics; Windows ConsentStore registry probe with a deep-link to ms-settings:privacy-microphone.
Changed
  • Aligned the renderer and Rust HTTP endpoint classifiers so future auth route 404s surface as a specific bucket.
  • Demoted recoverable conditions (get_access_token empty, automatic refresh failed) from log::warn to log::info to stop Sentry promotion.
  • Windows clipboard is no longer restored to its prior contents after dictation. The transcript stays on the clipboard so previously-copied secrets are not re-exposed to delayed clipboard readers.
Fixed
  • BRIDGEVOICE-R: terminal revocation codes (AUTH_REFRESH_REVOKED / invalid_grant / NotAuthorizedException) stop the background refresh loop on revoked sessions; plain 401/403 stays retryable so a brief Cognito blip will not sign healthy users out, with a 6-failure hard cap as belt-and-suspenders.
  • BRIDGEVOICE-2X / -2Z: auth.other -> 404 traced to graceful-degradation /auth/desktop/login-init fallback.
  • BRIDGEVOICE-2V: Windows __chkstk guard for the last sync Tauri command (get_models is now async + spawn_blocking); 4 MiB RUST_MIN_STACK default.
  • BRIDGEVOICE-H / -5: shrunk the audio buffer mutex critical section to a memcpy.
  • BRIDGEVOICE-1D / -1E: split mic enumeration failures into actionable sub-types.
BridgeAgent application icon

@bridgeagent-desktop

BridgeAgent

Desktop release notes for the self-improving agent runtime — chat workspace, agent map, scheduled responsibilities, voice, and the guided runtime install.

Latest
v0.1.9

A runtime that updates itself

No more running bridge update by hand: the app now watches the bridge CLI, brings its own installs current in place, and hands you the exact command when the install is yours.

Runtime updates, handled

The app checks the installed bridge CLI 20 seconds after launch and then hourly. An app-managed install behind the version this build expects updates in place, and the agent picks up the new code on its next message. No restart, no terminal.

Your install stays yours

Installed the CLI yourself, via pipx, git, or your own PATH? The app never touches it. A toast surfaces the bridge update command to copy, and a runtime newer than the pin is always left alone.

See exactly what's installed

Settings → About gains a runtime card: the installed CLI version next to the one this build expects, a check button in packaged builds, and a clear error strip when an update can't land.

Added
  • Background runtime reconciliation: the bridge CLI is checked 20 seconds after launch and then hourly, and app-managed installs behind the build's pinned runtime (0.17.3) update in place. The gateway restarts on the next message, so the update needs no app restart.
  • Runtime update toast: managed installs announce when they've been brought current; self-managed installs get the exact bridge update command to copy instead of being touched. The app never downgrades a runtime you've updated past the pin.
  • Settings → About runtime card showing the installed CLI version against the version this build expects, with a manual check in packaged builds.
v0.1.8

Sessions that stay signed in

Session refresh now recovers from expired tokens instead of dead-ending in 401s, Codex sign-in runs right in Settings, and realtime voice replies get a speaking-speed picker.

Session refresh that recovers

An expired access token no longer strands the app: the API proxy force-refreshes and retries once, and the launch-time session check heals a drifted token instead of silently failing.

Codex sign-in from Settings

OpenAI Codex OAuth now runs the CLI's device-code flow inside the app — it shows the code, opens the browser, and confirms when the sign-in lands. No terminal detour.

Voice replies at your speed

Pick how fast realtime voice answers speak, from 0.25x to 1.5x. The choice applies on the next connect.

Added
  • Device-code OAuth sign-in for OpenAI Codex in Settings and onboarding: start the flow, get the verification code, and the app confirms when the browser sign-in lands. Replaces the dead end where an expired Codex session had no re-auth path.
  • Speaking-speed picker for realtime voice replies (0.25x-1.5x), applied at connect time and clamped so a hand-edited preference can't break the session.
Changed
  • Loops board rework: tone-colored progress rings with state glyphs, a stalled indicator, and every non-running loop can be restarted.
  • Bundled runtime pin bumped to 0.17.3.
Fixed
  • Expired-session 401 loop: a rejected access token now forces a real refresh (bypassing the local freshness check that made retries a no-op) and retries the request once. Applies to voice session minting and profile loads.
  • Parallel requests that hit a 401 at the same time now share one refresh instead of firing several back-to-back.
v0.1.0

BridgeAgent Desktop ships

The first desktop build of BridgeAgent: a native control surface for the self-improving agent runtime with guided install, chat, the agent map, scheduled responsibilities, voice, and signed auto-updates from day one.

A native home for the agent

Chat with streaming sessions, browse the agent map, and schedule responsibilities — the desktop app drives the locally installed bridge CLI without embedding it.

Guided runtime install

The app detects an existing bridge CLI across install layouts, or walks builders through installing the runtime with live stage-by-stage progress.

Signed auto-updates

Updates download in the background from downloads.bridgemind.ai and are cryptographically verified before install — restart when ready and keep working.

Added
  • Chat workspace with streaming sessions, split panes, drag-and-drop image attachments, and a fast SQLite session list that opens chats without waiting on the CLI.
  • Agent map and responsibilities: browse what the agent knows and schedule recurring jobs with cron-backed delivery.
  • Voice input and live conversation — spoken prompts become text, and a realtime voice dock can drive the agent hands-free.
  • Onboarding that detects an existing bridge CLI (PATH, installer layouts, legacy locations) or installs the runtime step by step.
  • Auto-update pipeline: background checks shortly after launch and hourly, signature-verified downloads, and a restart prompt when an update is staged. Linux deb/rpm installs get a manual download path in Settings → About.
Release Notes

Same source on every surface: this page, the in-app what’s-new card, and the desktop bundle are all built from one canonical changelog JSON per product.