Changelog

Updates

Unreleased

Current beta

Added

  • Mermaid diagrams: displays generated Mermaid diagrams.
  • Site skills: enables the agent to use site-specific skills.

Changed

  • Desktop interface: cleans up the desktop application interface.

Added

  • Mobile history: prompts sent from the phone include the history page's context.
  • Mobile attachments: files sent from the phone reach the agent in the best format it supports.
  • Newer MCP protocol for agents, by choice: Settings → Network → Bridge can offer new chats MCP 2026-07-28 as well as 2025-11-25. Agents that support the newer revision use it; the rest connect as before. A chat keeps the choice it started with.
  • Newer MCP protocol for servers: an MCP server that supports MCP 2026-07-28 is opened with it, unless it could not send its updates that way; every other server connects with 2025-11-25 as before. What each server negotiated is remembered and shown in its settings, where the Protocol menu can pin either revision or probe the server again.
  • Long tool calls as tasks: an agent that supports MCP tasks gets a task for a tool call still running after two seconds, so its own timeout no longer cuts the call short. When a server answers a call with a task of its own, the app follows it to the result for every agent.
  • Reorder from the keyboard: Composers and the PATH editor's paths can be reordered without a mouse: focus one, press Space to pick it up, move it with the arrow keys, and press Space to drop it. Escape puts it back.
  • Calendars and reminders as resources: the Calendar & Reminders built-in (formerly EventKit) now offers your calendars, upcoming events, reminder lists and open reminders as resources as well as tools, so they can be attached as context and kept for a minute without asking again. An agent that subscribes to one is told the moment it changes, whether the change was made in Calendar, in Reminders, on another device or by an agent. It never asks for calendar access just to list or watch them.
  • Reset to theme default: Settings → Display → Glass color has a Reset to theme default button. Every glass dial and toggle goes back to your theme's own: hue, chroma, Lightness by day and by night, opacity, diffusion, stain, accent, outline and gloss. Your theme, glass style and wallpaper stay as they are.

Changed

  • File encoding: text files edited by the agent keep their original encoding.

Fixed

  • Agents installing JavaScript packages: when an agent runs `bun install` in your project, the packages land in the project's own `node_modules`, the way your terminal installs them, so the agent's type checks match yours. A project already installed this way by an agent needs one fresh `bun install`.
  • Long tool names: a tool name that would pass 128 characters with an agent's own prefix is shortened (its server's prefix gives way first, the tool's own words stay). No current tool is that long, so no name changes. Antigravity allows only 64, so it leaves out the rare longer tool: today one, `LitigationLegalCourtlistenerUnsubscribeFromDocketAlert`.
  • Database size: what MCP servers send over and over (their lists of tools, prompts and resources, and their handshakes) is stored once instead of with every request that saw it. On a profile measured before the change that freed about 700 MB. The first launch after updating spends a few seconds converting the existing history; Settings → Reclaim space returns the freed space to the disk.
  • Faster reads: opening a chat, loading its earlier messages and the Wire panel read the database faster: a page of a chat in 13–22% less time, the Wire panel's list in about a third of it. Reads that overlap, such as one chat loading while another streams, slow each other down far less.
  • Server updates after a reconnect: an agent whose connection to an MCP server reconnected could stop hearing that the server's tools or resources had changed, once the old connection was cleaned up. Each connection now keeps its own updates.
  • Questions from a restarted server: when an MCP server restarts while its question is open in the app, the question closes, instead of staying up with nowhere for the answer to go.
  • MCP server status: a server that refuses a request with an error of its own, or cannot finish one (it keeps asking for input, or cancels its own long-running task), no longer turns its status card red. The connection was fine; the agent now gets the server's own error, or what the server did, instead of "backend connection failed".
  • MCP server errors: when a server that connected before fails to start (a setting it needs is missing, say), its status and Test connection show the server's own error, not "no compatible protocol version" from the retry that followed.
  • Restarting a session: sends the system prompt chosen for it at setup. It could relaunch with an earlier choice.
  • A message that fails to draw: shows an error card in its place instead of breaking the whole conversation.
  • Artifacts: Download works for every kind of file, not just images, and the gallery asks for each image's preview once instead of again every time one arrives.
  • Switching items: the details of a plugin, a policy, an environment or a wire-log class, a project's extra folders and an agent's providers no longer show the previous item's while the new one loads.
  • Phone pairing: a pairing request that runs out of time is declined once; it could be declined twice.
  • Scene wallpapers: dune, aurora, clouds and forest no longer slow the window down. Each drew dozens of separate layers that were redrawn whenever anything on screen changed; they now draw as a handful, and an animated dune takes about a third of the graphics time it did. They look exactly the same.
  • Scrolling and switching tabs: no longer stall. A few style rules made the window re-check the styles of everything on screen whenever a tool, reasoning or permission card scrolled into view, and on every tab switch; tab switches are now about seven times faster.
  • Global permissions: a change in Settings → Permissions is saved as you make it. It was saved only when you switched Settings tabs, so leaving Settings any other way lost it, and switching tabs just after opening Settings could clear every permission set there.
  • Composer, Muse and subagent permissions: a permissions grid that could not load says so and stays locked, instead of letting a change replace everything that was saved.
  • Calendar and Reminders prompts: a Reminders prompt no longer opens a connection of its own to the calendar service, the path to the "too many event stores" refusal; prompts now share the one connection tool calls use.
  • Server runtime: the Runtime menu in an MCP server's settings shows the runtime you chose; it showed Automatic whatever was saved.
  • Mail accounts: editing a mail account reconnects only AgentMail; every other MCP server stays connected.
  • MCP server keys and redirects: when an MCP server redirects a request to another site, the API key configured for that server is no longer sent along. The redirect now shows as an error on the server instead.
  • Signing in to MCP servers: more servers can be signed in to: those that accept the app's credentials only in the form a server lists for them (HTTP Basic), those whose sign-in names their address slightly differently from the URL you added, and older servers (MCP 2025-03-26) that publish no sign-in details.
  • Servers that want more access: a server that connects without a sign-in but needs one for its tools now asks you to sign in, instead of showing as connected with no tools. When a server needs more access for a tool, re-authorizing asks for that access along with what you already had, instead of the same access again.
  • Sign-in safety: the app refuses a sign-in whose response comes from a different authorization server than the one it went to, and does not use sign-in details that name another server.
  • Mobile connection: the phone app detects network changes in one second instead of fifteen.
  • Image visibility: an image the agent cannot view appears as a clickable file link rather than unreadable data.
  • Mobile attachments: phone uploads save correctly to the session folder without hanging.
  • Session names on the phone: the phone shows each session by the name the desktop shows: your title, else the one the agent gave it, else its Muse's or agent's name. It showed the first message you sent instead. A rename on the desktop now reaches the phone right away, as does a session you start, delete or fetch there.
  • Diagrams on the phone: a diagram that ran out of time while drawing (the phone was busy, or the app was in the background) is drawn again when it comes back into view or the app returns, and its caption offers Try Again. It stayed as source until the app restarted.
  • The Opaque style's sidebar: the sidebar is opaque on the Opaque style: the wallpaper no longer shows through it, and at night it is the same colour as the bars at its top and bottom.
  • The sidebar's bars by day: the bars at the top and bottom of the sidebar, and the search fields' magnifier and the compact page header, which share their look, are what they are at night: the Lightness you set for night, and your theme's own night colours. Moonstone's were tan by day instead of its grey stone, and the jewel themes' lacked their night wash.
  • The jewel themes at night: Rose, Goldstone, Carnelian, Amber, Peridot, Aventurine, Turquoise, Aquamarine, Sapphire, Lapis, Amethyst and Tourmaline each have their own strength of colour at night, and now show it. They used their daytime strength at night: a quarter of their own for Lapis and Amethyst, and up to twice their own for Peridot, Aventurine, Turquoise and Aquamarine, which the themes hold back at night to keep text readable.
  • Moonstone's gloss: the crystal highlight on Moonstone is its own pale stone instead of the jewel themes' strong tint, which turned it amber at night. The Gloss tint dial shows the theme's own value until you set one.
  • The Lightness dial's default: with no Lightness set, the dial shows the value your theme actually uses (93% by day and 33% at night, Moonstone 95% and 49%). It showed 94% and 32%.
  • Diagram errors sent to the agent: a diagram that was still arriving when the reply finished is no longer reported to the agent as broken along with your next message.
  • Calendar & Reminders results: listing reminders and reminder lists, searching, and batch changes no longer fail in agents that check a tool's results against the shape it declares. A reminder or event with no alarms, repeats or attachments left out fields the tool said would always be there, and such an agent rejected the whole result.
  • Calendar & Reminders guidance: agents are told to look an event or reminder up before changing it instead of guessing its id, and to write titles and notes as plain text.
  • Expired MCP sign-ins: a server that turns down an expired or revoked sign-in with an error message in its reply now has the sign-in refreshed, or shows Re-authorize, instead of failing with an unclear error.

Added

  • Playlists: replace Tool Groups: a playlist is a named set of servers, tools, surfaces, plugins, skills and documents, edited in Bridge → Playlists; a Muse, a subagent or a session picks playlists, and an edit reaches every open session that picked it.
  • Plugins in scope: a plugin is picked whole, and each of its parts (a server, a skill, a document, a subagent, a hook, its commands) can be switched off for a Muse, a subagent or a session.
  • One scope selector: the setup view, the Muse editor, the subagent editor and the Context shelf share one picker for playlists, plugins, the tool scope, skills, documents, subagents and hooks.
  • MCP Bundle signatures: a bundle's signature is verified on install (`signed`, `untrusted-signature`, `invalid-signature`), and an installed bundle wears a seal naming who signed it.
  • Bridge Status: the Status card counts what each server has, with totals in the header.

Changed

  • Tool Groups became playlists: each Tool Group became a playlist of its name; a group that covered every tool of a server now follows the server, including tools it adds later. Grouped Muses, subagents and sessions are "Picked tools" with those playlists; None is Picked with nothing.
  • Skills: update and audit state is saved; installs from skills.sh and GitHub are rate-gated and never destroy a local edit without asking.
  • Plugin updates: decided in lanes (pin, version, content) and saved; a check waits for a running one instead of answering with stale rows.
  • Composer updates: only a strictly newer version from the composer's own marketplace counts as an update.
  • Playlist saves: answer at once; the open sessions that picked the playlist take the edit on its own task.
  • Browsers: the skills, plugins, tools and composer browsers show every match; the 200-card cap is gone.

Fixed

  • Sessions: a reopened session keeps the tools it had; a session whose scope or guards cannot be read refuses to start and says why, instead of starting wider than it was set; a scope change that fails leaves the session and its saved scope as they were, and says so on the Context shelf.
  • Governance: a refresh that cannot read a plugin's parts keeps every session's previous policy, instead of re-enabling switched-off servers and dropping plugin admissions; a session a governance change left on its previous policy is named in the activity log, with a way to apply the change again.
  • Sign-in: a remote server's sign-in reconnects the server it was for without a restart, and a signed-in server says so; a sign-in the server rejects shows on the Tools table with a way to fix it; a refused sign-in ends the editor's wait with the reason, and the browser tab says how it ended; sign-ins to one or several servers share the callback port, and a callback carrying a state no sign-in sent is refused.
  • Skills: a replaced skill is never removed before its replacement is in place; an adopted CLI skill asks before writing over a folder no install recorded.
  • Plugin updates: a check that straddles an install no longer resurrects the pre-install verdict.

Security

  • GitHub token: `GITHUB_TOKEN` (or `GH_TOKEN`) is sent only to the GitHub API, never to skills.sh, the audit service, the raw host or a URL override.

Added

  • Plugin details: displays plugin identity information directly on the detail card.
  • Session inspector: introduces content search, faceted filtering, and the ability to export transcripts.

Changed

  • Plugin catalog: speeds up browsing by caching search results.
  • Session inspector: improves readability by formatting long JSON strings across multiple lines.

Fixed

  • Authentication: ensures reliable sign-in flows by fixing redirect mismatches.
  • Interface: corrects the visibility of empty states and updates the color of search chips.
  • Nutrition cards: fixes layout issues by wrapping titles, hiding scrollbars, and properly rendering instructions.
  • Plugin updates: ensures accurate update availability by correctly comparing pre-release versions.
  • Sessions: eliminates a 10-second delay when starting a session with a custom configuration.
  • Skills: resolves an issue where commands stored in nested directories were missing.

Changed

  • Notifications: replaces toast popups with inline alerts and an Activity Center.
  • Server editor: keeps drafts open after their first save.

Fixed

  • App stability: prevents application deadlocks when fetching the server catalog.
  • Connections: automatically detects and repairs unresponsive server connections.
  • Interface: prevents the search backdrop from dismissing accidentally when dragging text.
  • MCP updates: ensures update checks reliably identify installed servers.

Changed

  • JSON viewer: formats raw data arrays more compactly to improve readability.
  • Performance: drastically reduces CPU and system resource usage when streaming chat responses and rendering animations.
  • Startup: speeds up the initial application launch sequence.

Fixed

  • Background stability: improves application reliability when running in the background.

Added

  • Context shelf: introduces a mobile UI for managing Library documents and skills.

Changed

  • Message actions: consolidates copy actions to a single button per response.
  • Mobile interface: refines floating cards on iOS with polished corners, adjusted margins, and pinstripe borders.
  • Navigation: replaces the overflow session menu with a hold-to-close action on the toolbar icon.
  • Session presence: synchronizes active session status reliably across desktop and mobile devices.

Fixed

  • Chat rendering: prevents internal sub-session traffic from appearing as user messages in the transcript.
  • Connectivity: prevents the mobile app from disconnecting every 60 seconds.

Added

  • File reading: restores a built-in tool for reading local files and resources.

Changed

  • Sandbox permissions: prompts for confirmation before allowing out-of-sandbox file writes or terminal directory changes.

Fixed

  • Chat rendering: displays attached files correctly on user messages, preserves single newlines in text, prevents display issues from out-of-order text streaming, and fixes delayed widgets.

Security

  • Resource links: enforces sandbox capability rules before opening external URLs or local files.

Added

  • Document configuration: introduces a visual frontmatter editor to modify YAML metadata without manual coding.
  • Plugin updates: introduces update detection, one-click updates, and an "Update All" capability for installed plugins and tool servers.

Changed

  • Performance: reduces memory usage and application startup time via paged transcripts and process sweeps.
  • Plugin discovery: rebuilds the browsing experience for skills, plugins, and tools with visual cards, ranked search, category chips, and trust summary badges.
  • Theme: refines visual aesthetics including aurora and starfield effects, improves contrast on transparent elements, and splits gloss lightness into distinct light and dark mode settings.
  • Library documents: optimizes context limits by linking documents as short teasers rather than embedding full text in every turn.
  • Plugin management: upgrades installed plugin lists to use striped, fixed-header tables and standardizes plugin icons.
  • Detail cards: unifies the visual language and layout of information cards across the application.
  • Tool servers: displays built-in tool servers in the main servers table and adds bulk update actions.
  • Windows install (one-time): each release channel now runs under its own executable name. Because Windows stores some browser-backed interface data next to that executable, this upgrade clears your open tabs and a few interface preferences once, per channel. Your settings, sessions, and credentials are stored separately and are not affected.

Fixed

  • Markdown links: preserves local file links to remain clickable instead of being silently removed.
  • File parsing: resolves cross-platform parsing issues for file paths, ensuring reliable handling of Windows drive letters and special characters.
  • Background processes: prevents background processes from leaking after closing the application and properly cleans up unexpectedly closed sessions.
  • Updates: resolves an issue where application updates could fail during network interruptions by adding automatic retries.
  • Settings: prevents application settings from being lost or dropped across restarts.
  • Typography: fixes clipped text edges and incorrect font weights on page headers.
  • Windows channels: installing or updating one channel no longer closes the others. Every channel shipped the same executable name, so the installer's "close the running app" step matched all of them — silently during a background update — and could leave the new install incomplete.

Security

  • Network paths: mitigates a potential credential leak on Windows by rejecting remote network paths for file operations.
  • File operations: hardens image saving to prevent arbitrary file read vulnerabilities.

Added

  • Server settings: displays a health warning on tool groups when a server is disconnected.

Changed

  • Permissions: removes redundant consent dialogs for individual widgets in favor of connection-level visibility rules.
  • Developer tools: displays images directly in the wire log instead of showing unreadable text strings.

Fixed

  • Widgets: preserves the state of form submissions even if the application is restarted or the view changes.
  • Icons: ensures custom icon choices are correctly saved and rendered instead of reverting to defaults.
  • Search: resolves an issue that caused the application to crash when navigating certain search results.
  • Widget forms: displays an accurate "Form shown" status on tool bubbles rather than incorrectly showing a failure state.
  • Diagnostic overlays: prevents spurious error messages from appearing by correctly handling background requests.

Added

  • Toolchains: introduces a dedicated settings pane to inspect managed toolchains, displaying installation timestamps, update checks, and recent failure reasons.

Changed

  • Plugin installation: presents a consistent list of components before and after consent.
  • Skill tree: groups a plugin's skills into a unified folder sorted alongside directories.
  • Command inputs: allows safely pasting full shell commands, automatically extracting the executable and properly quoting arguments.
  • Environment previews: explicitly states the origin of the spawned toolchain binary.

Fixed

  • Marketplaces: improves stability when browsing catalogs by better handling network rate limits and caching.

Added

  • Agent prompts: supports multi-select options and toggle switches when agents ask for your input.

Fixed

  • Developer tools: prevents the Inspector from freezing when viewing extremely large data payloads.
  • Performance: speeds up the sidebar loading time for agent sessions and usage metrics.
  • Connection tags: ensures accurate tags are displayed when reconnecting to an agent, preventing stale information from appearing.

Security

  • Activity logs: automatically redacts registered sensitive credentials from your local history logs.

Fixed

  • Windows app loading: resolves an issue where the app could freeze during startup.
  • Sign-in: preserves your login session if the initial connection fails.
  • Connection status: displays accurate network states while loading and preserves exact error messages if setup stops unexpectedly.

Added

  • Marketplaces: introduces a new tab to browse and manage all external catalogs and built-in servers in one place.
  • Tool permissions: adds a nutrition label to the session setup and context shelf, making it easy to see exactly which tools an agent can access.
  • Skill previews: introduces an interactive dialog for viewing skills, allowing you to read multiple documents, follow links, and navigate back through your history.

Fixed

  • File reading: automatically skips unnecessary permission prompts by preventing text reads of binary files outside the sandbox.
  • Token usage: ensures accurate usage counts are displayed for agents that report their metrics in non-standard formats.
  • Windows app loading: fixes an issue that could prevent the app from loading or navigating correctly on Windows.
  • Session recovery: reconnects to active agent sessions smoothly without launching duplicate background processes, and ensures available slash commands are preserved.
  • Integration credentials: saves configuration changes reliably without overwriting previously stored OAuth data.
  • Phone reconnects on its own: the iOS app now recovers automatically when its private link gets stuck after the phone sat idle, instead of needing to be force-quit and reopened. The "Try again" button on the connection card also performs a full link reset immediately.
  • Quieter error log: the harmless "ResizeObserver loop" browser notice no longer floods the app's error log several times a second, and the tab bar's fit-to-width measuring no longer triggers it.

Added

  • Browse conversations offline: the iOS app shows your cached conversations even when the desktop can't be reached.
  • Quieter desktop discovery: the iOS app stops repeatedly probing tailnet devices that can't be desktops, pauses scanning while its own link is down, and backs off devices that keep not answering.
  • Tailscale version in Settings: both the desktop's Private link card and the iPhone's Connection screen now show the running Tailscale version, and the phone's Advanced screen keeps a copyable connection log for troubleshooting.
  • One-step tailnet provisioning: saving a Tailscale credential now restarts the private link automatically, so automatic networking applies immediately with no manual off/on toggle.
  • Far From Home readiness checklist: the Private link card now shows each provisioning step (MagicDNS, HTTPS, policy, service, tagged key) with a check and a plain-language reason when one fails, plus live rows for whether the node is tagged and the stable address is serving.
  • Desktop network identity encrypted at rest: the private link's on-disk Tailscale identity is now sealed with a key kept in the OS keychain (existing installs migrate automatically and safely), a new readiness row shows it, and the device reports it to the tailnet so access policy can require encrypted desktops.
  • One paste finishes Far From Home setup: paste a 1-day Tailscale API key once: the app mints its own narrowly-scoped credential, tags this machine in place (no sign-out or reconnect needed), and then revokes the pasted key in Tailscale for you. Nothing long-lived to clean up, and the Settings guidance now recommends the 1-day expiry.
  • Network details on the Private link card: a new collapsible section shows this desktop's Tailscale IPv4/IPv6, short and full domain (each with its own copy button), a ready-to-use `https://` URL, and the three connection paths a phone can arrive by: Direct (the dialable endpoints), Peer relay, and DERP — with a plain-language note that https works with the full domain because that's the name the certificate is issued for.
  • Mermaid diagrams in chat: fenced `mermaid` code blocks in agent messages now render as live diagrams instead of plain code.
  • Widget permissions: introduces explicit consent prompts and a new settings interface to manage camera and microphone access.

Changed

  • App name: updates the application name to Agent Muse across all interfaces.

Added

  • Connection warnings: displays clear "Unreachable" and "Needs re-authorization" alerts when integrations disconnect or lose access.

Changed

  • Selection styling: updates the active selection highlight to use a consistent, unified glow across the app.

Fixed

  • Tool counts: displays accurate tool totals by properly deduplicating shared tools when multiple tags are selected.

Added

  • Mobile skills: introduces a right-edge slide-over panel on iOS for managing skills with full drag-and-drop support.

Changed

  • Mobile forms: updates iOS input forms to fully support all field types and bring them to parity with the desktop app.
  • Mobile interactions: makes response text globally selectable and displays dictation errors directly inline.
  • Session presence: unifies active session indicators across desktop and mobile, displaying a single corner dot on session icons.

Fixed

  • Connection status: updates the mobile connection screen padlock to accurately reflect live network socket states.
  • Network connectivity: resolves wake-from-sleep connectivity issues to ensure reliable reconnections for paired devices.

Security

  • Link security: prevents the execution of malicious web links by restricting interactive URLs strictly to secure web protocols.

Added

  • Environment variables: introduces a unified system to view, edit, and securely lock environment variables across all system scopes.
  • Launch arguments: allows appending custom startup arguments to any integration and clearly displays the base requirements.
  • System paths: allows syncing command-line paths from the local shell so custom tools are available to agents.

Changed

  • Interactive prompts: waits indefinitely for your reply by default instead of silently cancelling unanswered questions after a timeout.
  • Interface styling: applies new diffused glass effects, widens dialog boxes, and refines scrollbars, dropdowns, and sidebar contrast.

Fixed

  • Configuration settings: fixes issues where unlocking secure values or saving empty variables could inadvertently delete them entirely.
  • Device pairing: prevents the application from incorrectly showing a new pairing prompt when internal storage is temporarily busy.
  • Registry integrations: ensures that installed integrations correctly receive all required startup parameters, automatically healing broken installations.

Security

  • Secret storage: securely scrubs credentials from the system keychain when an integration is deleted, resolving a potential credentials leak.

Added

  • Zero-install networking: ships a built-in secure networking node for macOS, eliminating the need to install a separate system client.
  • Tailscale sign-in: displays an interactive login button in Settings instead of stalling, and securely provisions the desktop using pasted single-use API keys.
  • Remote access settings: adds a "Far From Home" tab to view private link status, manage paired mobile devices, and track presence directly from the desktop.
  • Stable download links: introduces persistent download links for each release channel that always point to the latest version.
  • Window controls: replaces custom macOS window buttons with native traffic lights and makes the entire top edge draggable.
  • Terminal styling: renders ANSI color sequences correctly in chat terminal outputs for both light and dark modes.
  • Display settings: adds animated pattern backgrounds, wallpapers, and customizable glass aesthetics like diffusion and lightness.
  • Desktop identity: allows editing the desktop's display name directly in Settings, instantly syncing to connected mobile devices.
  • Mobile background sync: allows the iOS app to silently check for pending approvals without opening the application.
  • Interactive prompts: adds experimental support for inline user prompts and subagent spawns directly within the chat transcript.
  • Session status bubbles: displays non-intrusive timeline indicators when a chat session starts, resumes, or is canceled.
  • Network toggle: allows starting and stopping the remote access connection dynamically from Settings without relaunching the app.

Changed

  • App updates: significantly improves in-app update download speeds, keeps the UI responsive, and adds an "Update All" button for registry extensions.
  • Design system: updates the interface to a new material design system with an Amethyst crystal theme, tonal gloss, and moonrise wallpaper by default.
  • Chat UI: unifies tool cards with harmonic tinted glass, removes duplicate terminal commands from the output, and applies specific color accents to different types of tools.
  • App icon: updates the application icon with refined colors and new day/night figures for macOS and iOS.
  • Windows UI: uses opaque window surfaces for improved compatibility and moves window controls to the standard top-right position.
  • Session configuration: simplifies the interface by replacing legacy mode and model selectors with a unified settings picker.
  • Prompt cancellation: clicking the stop button now surgically interrupts the current request instead of ending the entire session.
  • Sign out: signing out now cleanly disconnects the network, forgets paired devices, and resets the connection history.
  • Mobile typography: updates the iOS app with a New York serif font toggle for message replies and a warmer visual style.

Fixed

  • Device pairing: recovers pending phone pairing prompts automatically if the app reloads or restarts.
  • Mobile connection: makes the iOS app connection more reliable with self-healing networks, accurate background status reporting, and a one-tap restart button for crashed sessions.
  • Window positioning: prevents the application window from restoring off-screen after changing monitors.
  • Video playback errors: translates unhelpful video error messages to standard codes during the startup intro.

Removed

  • Fluted glass: removes the fluted glass interface style across the application.
0.6.02026-06-29

0.6.0

Added

  • Glass UI system: refactors the frontend UI to use a new glass design system with advanced wallpaper modes and dynamic text contrast adjustments.
  • Pasted text handling: processes large pasted-text blocks as distinct embedded resources and renders them as collapsed chips.
  • Chat cards: builds specialized tool cards for rendering ask user, fetch, search, and subagent tools.
  • Image viewing components: adds lightbox, view, and grid components to display images.
  • Message tracking: adds wire message count tracking to the session repository.

Changed

  • Dependencies: pins `rmcp` and `rmcp-macros` to version 1.7.0.

Fixed

  • Shutdown warnings: suppresses expected agent stderr death-rattles during shutdown.
0.5.32026-06-23

0.5.3

Added

  • Subagents: introduces standalone subagents as a first-class entity with complete UI and backend wiring.
  • MCP task cards: implements universal inline cards bound to tool bubbles for tracking background tasks like subagent spawns.
  • Multi-select elicitations: adds multi-select checkbox support to the `ask_user` tool schema and frontend forms.
  • Built-in Muse gateway: surfaces a built-in Muse card in the Gateway Status UI to display native tools and protocol methods.
  • Skills audit pills: adds security audit pills and external repository links to the Skills UI.
  • In-place skill updates: adds an update button to fetch and install managed skill updates directly from the UI.

Changed

  • Elicitation proxying: routes `ask_user` prompts to the parent chat across all subagent modes to decouple autonomy from elicitations.

Fixed

  • ACP extension crashes: returns `method_not_found` instead of `null` for unknown extension methods to prevent crashes.
  • macOS binary crashes: implements code-signature repair to resolve AMFI SIGKILL vulnerabilities by cleanly re-extracting native binaries.
  • Launch symlink crashes: bypasses `npx` to launch installed entries directly via node, preventing `EEXIST` symlink loop crashes on version bumps.
  • Tab restoration: fixes a bug that dropped active ACP sessions and missing scope fields on reload.
  • Font clipping: adjusts line-height to fix cursive font clipping on Muses cards and sidebar tabs.
0.5.22026-06-20

0.5.2

Added

  • Skills repository: adds an in-app interface to browse, install, and audit skills from skills.sh and GitHub.

Changed

  • Tab restoration: hardens tab hydration on reboot and adds boot logging to prevent a single failed session from blocking initialization.

Fixed

  • Duplicate tabs: deduplicates tabs by session ID to fix an issue where opening the same live session created duplicate tabs.
  • Wire transcripts: guarantees `session/load` handshake frames are captured to bypass lossy broadcast drops and improve reliability.
0.5.12026-06-16

0.5.1

Added

  • MCP Inspector tab: adds a dedicated tab with a UI for exploring resources, templates, and completions.
  • Gateway Facts card: details built-in tools and advertised protocol methods, exposing a synthesized `tool://` catalog.
  • MCP Apps host: enables inline rendering of `mcp-ui` widgets in strictly sandboxed iframes with theme-aware styling.
  • Subagent transcript dialog: adds a dialog to view running or completed child transcripts.
  • Elicitation support: integrates the `ask_user` tool, allowing backend servers to pause tool calls and prompt for interactive input from the user.
  • Widget data persistence: adds widget data to the audit log to enable hydration on session restore.

Changed

  • OAuth flow: refactors authorization to use an introspection-first UI.
  • Agent protocol capabilities: de-advertises `resources`, `templates`, and `completions` from agents, exposing them exclusively to the harness.
  • Subagent autonomy: transitions `spawn_subagent` to `subagent` and introduces `subagent_settings` for supervised vs. auto policies.
  • Database schemas: advances database schemas and migrates MCP governance to use immutable backend slugs instead of display names.

Fixed

  • OAuth connectivity: fixes a missing User-Agent header causing 403 errors, registers exact redirect URIs, and unifies secret keying to correctly persist client secrets for token refresh.

Removed

  • Legacy session tables: drops legacy session tables in the application database.
0.5.02026-06-10

0.5.0

Added

  • Subagent architecture: adds `spawn_subagent` task-mode support, keepalive heartbeats, and progressive disclosure for config options. (PR 169)
  • Subagent muses: enhances Muses with `useAsSubagent` toggle and default configs. (PR 169)
  • Composer and session recovery: adds Settings UI for re-assigning orphaned sessions to new composers, locating missing local composer binaries, and batch recovery for relocated session project folders. (PR 169)
  • Telemetry and diagnostics: introduces `logs.db` with an interactive Log Viewer to capture frontend crashes, unhandled rejections, and raw MCP stderr. (PR 169)

Changed

  • In-process MCP servers: wraps in-process MCP servers with an auto-reconnect supervisor. (PR 169)
  • Wire transcript recorder: updates wire transcript recorder to preserve handshakes and drop redundant replays. (PR 169)

Fixed

  • Tool access inheritance: fixes tool access inheritance for subagents. (PR 169)
  • Session restore pipeline: fixes `AGENT_NOT_AVAILABLE` and `PROJECT_DIR_MISSING` crash loops during restore by resolving identities directly from the database and fixing cyclic JSON crashes. (PR 169)
  • Windows CI paths: fixes Windows CI test paths. (PR 169)

Security

  • macOS App Store releases: removes invalid `reminders` macOS entitlement blocking App Store releases. (PR 169)
0.4.02026-06-01

0.4.0

Added

  • Sidebar destinations: adds registry-driven top-level sidebar destinations for Gateway, Tools, and Skills, moving these surfaces out of Settings into dedicated pages. (PR 168)
  • Composer ordering: adds drag-to-reorder for Composer cards with persistence to the `composer_order` app setting. (PR 168)
  • Gateway connect timeout setting: adds `mcp_connect_timeout` to network settings and wires it into MCP gateway connection behavior. (PR 168)

Changed

  • Bump workflow: optimizes the bump workflow with a shared toolchain and caching to prevent recompiling the dependency graph, and migrates to the `warp-ubuntu-latest-x64-4x` runner for cache compatibility. (PR 166)
  • Composer home experience: replaces the ACP Clients view with a responsive Composer grid in non-advanced mode and renames "Clients" to "Composer". (PR 168)
  • Settings composition: refactors Settings into reusable `TabBar`, `ToggleRow`, and `SettingField` components, and moves Mail Accounts and Custom MCP Servers configuration into Tools. (PR 168)
  • ACP handshake timeouts: standardizes `protocol_init` and `session_new` timeouts to 60 seconds. (PR 168)

Fixed

  • WebKit segmented control height: fixes a phantom-height layout issue in the Agents segmented control. (PR 168)
  • Type bindings import: fixes `acpClientPersistence.ts` to use `LocalAgentRead` for generated bindings compatibility. (PR 168)

Security

  • macOS personal-information entitlements: adds calendar, reminders, and location entitlements for Hardened Runtime TCC permission prompts across Developer ID and App Store builds. (PR 168)
0.3.222026-05-30

0.3.22

Fixed

  • macOS release bundle: fixes a release bundle failure where Tauri incorrectly tried to copy `smoke_launch` into `Agent.app` by moving `smoke_launch.rs` from `src/bin/` to `examples/`. (PR 164)
0.3.212026-05-30

0.3.21

Added

  • Gateway persistence: adds `mcp_gateway_tokens` and `mcp_gateway_sessions` for restart-resilient MCP routing to allow sessions to survive app restarts. (PR 139)
  • Tool scoping: adds `allowed_tags` to policy assignments and an "Allowed groups" tag picker to settings for granular tool restrictions. (PR 139)
  • Isolated logging: adds `per_backend_logging.rs` for isolated per-backend MCP logs. (PR 139)
  • Global PATH inheritance: adds a tri-state "Inherit global PATH" control to settings. (PR 139)
  • Smoke tests: adds a headless `smoke_launch.rs` binary to CI to catch init, DB migration, and keychain regressions. (PR 139)

Changed

  • Filesystem sandbox: refactors `acp-fs::Sandbox` to support secondary read-only grants alongside the project directory. (PR 139)
  • Shell execution bridging: rewrites `bridge_shell_command` with `shlex::split` to preserve bash features and handle packed commands natively. (PR 139)
  • Registry pagination: migrates MCP registry fetching to use lazy-loaded pagination with an `IntersectionObserver`. (PR 139)
  • Agent icons: updates the agent SVG icons to handle dynamic themes (`color`, `duotone`, `lineart`, `silhouette`). (PR 139)

Fixed

  • Tauri Sink collisions: prevents sequence collisions by adding a background ticker and history rebasing (`append_with_seed_rebase`). (PR 139)
  • Agent save errors: resolves persistence errors on save by splitting the local agent DTO into `LocalAgentRead` and `LocalAgentWrite`. (PR 139)
  • Database migrations: re-sequences and verifies migrations to fix a `v3→v4` issue and the `v28→v32` chain. (PR 139)

Security

  • OAuth secrets: migrates OAuth `client_secret` to the OS keyring and updates the `secrets` schema to separate local/registry MCP foreign keys. (PR 139)
0.3.202026-05-28

0.3.20

Fixed

  • Resumed-session event loss: fixes silent data loss across app restarts by lazily seeding the `TauriSink` sequence counter from persisted history instead of resetting to `0`, extracting write logic to a testable `BufferWriter`, and adding collision diagnostic logging. (PR 138)

Added

  • `governance_enabled` column: adds `agent_md.governance_enabled INTEGER` (v28 → v29 additive migration) to prepare for future governance capabilities. (PR 122)
0.3.192026-04-28

0.3.19

Fixed

  • Session overrides: fixes a missing session list error by creating the `session_overrides` table and update trigger, and correcting the column count in the session repository insert statement. (PR 120)
  • Storage UI: fixes a bug where SQL view expressions evaluated to `null` by updating `sqlite_row_to_json` to use the cell runtime type. (PR 120)
  • Project paths: prevents unhandled promise rejections on failure by adding explicit error handling when opening project paths. (PR 120)
0.3.182026-04-28

0.3.18

Added

  • Inherited environment UI: surfaces full `inherited_env` in `EffectiveAgentEnv` to show exactly what is inherited from the parent process, adds visual indicators in the `EffectiveEnvPreview` component, and automatically displays the resolved environment preview after a successful connection test. (PR 118)

Changed

  • Agent containment directories: replaces `HOME` and `USERPROFILE` overriding with XDG base directories for registry agent containment. Preserves the real user home in `HOME` for compatibility with native tooling, while injecting `XDG_CONFIG_HOME`, `XDG_CACHE_HOME`, `XDG_DATA_HOME`, and `XDG_STATE_HOME` routed to the per-agent isolation root. (PR 118)
  • Dependencies: bumps `keyring-core` and platform-specific `keyring-store` crates to 1.0, and bumps `adk-skill` from 0.6.0 to 0.7.0. (PR 118)

Fixed

  • Draft environment variables: fixes a frontend bug where newly added draft environment variables vanish when saving by changing `saveClient` to use an optimistic in-memory merge to prevent blank rows from being lost during persistence layer filtering. (PR 118)
0.3.172026-04-20

0.3.17

Added

  • MCP variant-aware install: registry MCP entries that ship multiple `(source, transport)` variants (npm-stdio, pypi-stdio, remote-streamable-http, remote-sse) now expose a picker dialog. Single-variant entries install directly. Reinstalling with a different variant transparently uninstalls the old one and surfaces a "Replacing X with Y" progress message. The chosen variant is stored on `registry_mcps.installed_variant`. (PR 8)
  • MCP icon fetch + safety: install-time SVG icon download with 64 KB cap, content-type checks, and a safety scan rejecting `<script>`, `on*=` event handlers, and `javascript:` URIs. Frontend `MCPIcon` component renders monochrome SVGs via CSS `mask-image` so they tint with the active theme; non-mono SVGs and raster icons render as `<img>`. (PR 8 commit 4)
  • MCP startup variant backfill: `reconcile_installed_variants` runs at app launch alongside `refresh_installed_mcps_from_registry` and fills `installed_variant` for legacy v26 rows by mapping each row's stored `transport` to a matching variant in the live registry. (PR 8 commit 6)
  • `installed_variant` column: new `registry_mcps.installed_variant TEXT` (v27 → v28 additive migration). (PR 8 commit 2)
  • Cursor-paginated MCP registry fetch: `fetch_mcp_registry_paginated` walks every page (capped at 50 for safety) and caches the snapshot to `<data>/registry/mcp-registry-v2.json` with a 1-hour TTL. Search queries bypass the cache. (PR 8 commit 3)

Changed

  • Spawn env contract: the `_extra_paths` magic env key has been removed. `AgentACPClient::probe_agent` / `list_agent_sessions` / `start_acp_session` and `spawn_auth_terminal` now take a typed `extra_paths: Vec<PathBuf>` parameter resolved by `app_api::env::resolve_agent_env`. The `ResolvedEnv { vars, path_layers, source_trace }` surface is the authoritative shape for env + PATH at spawn time. The deprecated `prepare_agent_env`, `build_agent_env`, and `inject_toolchain_and_global_paths` wrappers in `app-api/src/acp.rs` are deleted. (PR 7.6)
  • Binary / system runtime install isolation: each binary or system registry agent now has its own `runtime_installations` row keyed on `(runtime_id, os, arch, bin_dir)` instead of collapsing onto a singleton per `(runtime_id, os, arch)`. Resolves a class of bugs where multiple binary agents shared whichever `bin_dir` was installed last (e.g. a stakpak install masking codex-acp's PATH). The v26 → v27 migration splits any pre-existing collapsed rows. (PR 7.5)

Fixed

  • MCP `_extra_paths` legacy read: `resolve_mcp_env` no longer consumes the legacy `_extra_paths` JSON key from `McpServerConfig.env`. It now reads typed `runtime_installations.bin_dir` rows directly. Latent legacy MCP rows that still carry the key silently lose it (those installs were already broken; reinstall via the variant picker). (PR 7.6)
  • MCP variant reconcile pagination cap: `reconcile_installed_variants_at_startup` no longer fetches the full paginated MCP registry just to backfill a few rows. The live MCP registry now exceeds 3000 entries (50 pages × 60 / page), tripping the safety cap and aborting reconcile. The reconciler now runs a focused name search (`?search={name}&limit=60`) per `installed_variant IS NULL` row via the new `find_mcp_entry_by_name` helper. O(installed MCPs) HTTP calls instead of O(registry size / 60). Snapshot-based unit-test path (`reconcile_installed_variants(pool, &snapshot)`) is preserved for testability.
0.3.162026-04-14

0.3.16

Added

  • Agent schema: added a `maintenance_jobs` table for a durable background work queue and a `v_all_agents` view to unify execution paths.
  • Toolchain management: added `toolchain_installations` to manage Node.js and uv downloads, and implemented robust `HOME` directory resolution and tilde expansion for agents.
  • Environment configuration: added `global_env` and `global_paths` repositories to support global environment variables and a PATH editor.

Changed

  • Agent database: replaced legacy `acp_clients` by splitting agents into `local_agents` and `registry_agents`, bumped schema to v25, and migrated session tables to `events.db`.
  • OAuth authentication: updated the MCP gateway to resolve OAuth metadata secrets from the OS keyring and updated secret tracking to link to local and registry agents.
0.3.152026-04-09

0.3.15

Changed

  • CI infrastructure: updated GitHub Actions workflows to skip linting and validation jobs for release and documentation commits.

Fixed

  • Agent installations: migrated registry installations from `npx` to `npm install -g` with a custom `.npmrc` to isolate cache and global operations within the app data directory, preventing macOS App Sandbox denials.
  • Auth terminals: injected runtime execution paths into terminal sessions to ensure registry-installed agents can resolve bundled dependencies like Node.js during authentication flows.
0.3.142026-04-08

0.3.14

Added

  • Runtime tracking: added a `runtimes` database table to definitively track installed Node.js and uv paths, using `walkdir` to discover exact executable locations post-download.
  • In-app release notes: added a UI section to display patch notes directly in the settings panel when an application update is available.

Changed

  • ACP runtime resolution: updated runtime path injection for registry-installed agents to securely resolve locations from the new `runtimes` database table instead of client metadata.
  • CI infrastructure: migrated GitHub Actions workflows to use custom Warp runners and caching to improve build and test performance across all platforms.
  • Release pipelines: updated the release pipeline to capture dynamically generated release notes and include them in the update payload.
  • Startup video loading: simplified the intro video player to load assets directly via Vite instead of fetching and constructing blob URLs.
  • Automated signatures: updated PR descriptions and changelog generation scripts to use current product branding.
0.3.132026-04-08

0.3.13

Changed

  • ACP client state: centralized configuration, connection probing, and session fetching into Zustand stores to simplify component architecture and state management.
  • MCP server state: moved computation of installed registry metadata into the Zustand store to improve performance and code organization.
  • Agent runtime resolution: migrated injection of bootstrapped registry paths to the Rust backend during capability probing and session fetching to ensure isolated runtimes are used.

Fixed

  • NPX package installations: fixed registry installation failures for scoped packages by properly stripping existing version suffixes before applying the pinned version.
0.3.122026-04-07

0.3.12

Added

  • OAuth pre-registration: added support for configuring pre-registered OAuth apps (e.g. GitHub) via a new Client ID field in MCP server settings.
  • Registry install progress: added real-time progress bars to the registry browser during agent and server installations.
  • Secrets metadata tracking: added a database table to track metadata, owner relationships, and expiration dates for all credentials stored in the OS keyring.
  • Combined logging: introduced a unified `combined.log` file that captures all chronological logging output to simplify debugging.

Changed

  • Keyring backend: replaced `secret-lib` with `keyring-core` backed by platform-specific native stores (macOS Keychain, Windows Credential Manager, Linux Secret Service).
  • Keyring namespace: updated the keyring service name to use the app bundle identifier, and added an automatic migration for legacy secrets on startup.
  • MCP settings UI: redesigned the server list into a grid of cards with inline transport badges, update buttons, and clear OAuth authorization states.
  • Agent settings UI: agent cards now display their configured default task instead of a generic description, and the entire card is clickable.
  • macOS runtime permissions: quarantine xattrs on downloaded runtimes are now stripped in-process via `libc::removexattr` to prevent App Sandbox subprocess denials.
  • Unix shebang resolution: scripts spawned on Unix now explicitly resolve their shebang interpreter against the injected PATH to ensure isolated runtimes are used.
  • Skill directory access: security-scoped bookmark resolution for custom skill directories is now handled centrally in the backend during discovery.

Fixed

  • OAuth 401 handling: HTTP backends returning 401 Unauthorized now correctly prompt for OAuth authorization instead of recording generic connection failures.
  • Gateway synchronization: the MCP gateway now automatically reloads backends immediately after a successful OAuth token exchange.
  • Redundant installations: registry installations are now skipped if the requested version is already installed locally.
  • Registry errors: registry browser error messages can now be manually dismissed and will automatically clear after 5 seconds.
0.3.112026-04-07

0.3.11

Added

  • Remote MCP servers: added registry support for installing and configuring remote MCP servers via HTTP/SSE transports.
  • Agent stderr capture: agent child process stderr is now captured during initialization and injected into connection error messages for improved diagnostics.
  • Protocol message events: JSON-RPC messages for initialization, session management, and authentication are now persisted as raw session events for auditing and replay.

Changed

  • State management: migrated frontend architecture from React Context to Zustand stores for themes, tabs, notifications, and settings to improve performance and code organization.
  • Windows CI performance: expanded Windows Defender exclusions to cover Node.js, pnpm, and compiler processes for faster builds.
  • Release build profile: changed link-time optimization (LTO) from full to thin to reduce compilation times.
  • Chat transcript retention: updated the settings UI to provide a dropdown with common presets (10 days, 1 month, 1 year, forever) alongside custom day input.

Fixed

  • Registry entry resolution: entries not found in the local cache now trigger a fresh registry fetch or targeted search to correctly resolve remote-only servers.
0.3.92026-04-05

0.3.9

Added

  • Registry browser icons: entry icons now display inline with agent/server names. Icons are resolved to data URIs at fetch time and cached. `dark:invert` applied for dark mode. Icon picker disabled for registry-installed agents.
  • View Logs button: Settings → General now has a "View Logs" button that opens the app data directory in Finder/Explorer.
  • Spawn failure diagnostics: cross-platform diagnostics when a child process fails to launch: file existence, permissions, PATH resolution, shebang/interpreter checks. On macOS: quarantine xattr, Gatekeeper assessment, code signature, and sandbox entitlement status.
  • Startup entitlements dump: logs effective entitlements at startup via Security.framework for TestFlight debugging.
  • `ENTITLEMENTS.md`: reference doc for both entitlement profiles.

Changed

  • Structured logging: removed `acp_log!`/`acp_debug!`/`acp_error!` macros (41 call sites), replaced with direct `tracing` calls using structured fields. Terminal lifecycle events promoted to `info`; agent stderr promoted to `warn` for release build visibility.
  • Project path opens directly: clicking the project path pill in the session header now opens the directory (`openPath`) instead of revealing it in the parent folder.
  • unknownUpdate event type: `event_type_str()` returns the actual type from raw JSON instead of hardcoded `"unknownUpdate"`.

Fixed

  • Startup video interrupted: intro video was cut short in release builds because `onComplete` callback changed on every render, causing effects to re-run. Stabilized via ref + `useCallback`.
  • Cmd+C / Ctrl+C copy: keyboard copy wasn't reaching the WebView's native copy handler. Added a global keydown handler that writes plain text to clipboard via the Tauri clipboard plugin.
  • Registry agent icons lost on install: `fetch_icon_data_uri` was trying to HTTP GET data URIs from cached registry entries, silently failing. Now passes through data URIs unchanged.
  • Registry agent runtime PATH: `_extra_paths` from metadata wasn't being injected into spawn env vars. Fixed in backend (reads metadata from DB) and frontend (`buildAgentEnv` helper).

Security

  • App Store entitlements: added `files.user-selected.executable`, media folder access, microphone, Apple Events. Removed incorrect `inherit` and unnecessary hardened runtime exceptions.
0.3.82026-04-02

0.3.8

Added

  • App Store sandbox support: entitlements for sandboxed distribution, security-scoped bookmarks, and process spawning.
  • Cmd+C copy: native keyboard copy support for WebView content.
  • Runtime PATH injection: bootstrapped runtimes found via `_extra_paths` metadata.

Fixed

  • Process spawning: child process lifecycle, session cleanup, and spawn diagnostics.
0.3.72026-04-02

0.3.7

Fixed

  • Process spawning fixes and App Sandbox support.
0.3.62026-04-02

0.3.6

Fixed

  • Bug fixes and stability improvements.
0.3.42026-04-01

0.3.4

Fixed

  • Bug fixes and dependency updates.
0.3.32026-04-01

0.3.3

Fixed

  • Bug fixes and dependency updates.
0.3.12026-04-01

0.3.1

Fixed

  • Bug fixes and dependency updates.
0.3.02026-03-31

0.3.0

Changed

  • Internal improvements and dependency updates.
0.2.22026-03-31

0.2.2

Changed

  • Internal improvements and dependency updates.
0.2.12026-03-30

0.2.1

Added

  • Registry browser: browse and install ACP agents and MCP servers from official registries with distribution type badges.
  • Runtime bootstrapper: auto-download Node.js and uv for npx/uvx agents. SHA256 verified, old versions cleaned up.
  • Inline skill references: type `/` mid-prompt to reference skills.
  • Session meta hydration: modes, models, commands, config, and plan state restored from persisted messages.
  • Tool call grouping: live tool calls render as compact grouped blocks with streaming text pinned at bottom.
  • Window clamping: app window clamped to screen size on launch.

Changed

  • Settings UI tightened: reduced padding, constrained width, collapsed CLI details.
  • Default window size: `1720x1080` → `1440x900` for 14" MacBook Pro.
  • Release pipeline: `finalize-release` job merges per-platform updater manifests.

Fixed

  • Orphaned MCP processes: `kill_on_drop(true)` on gateway child processes.
  • Session restore tool calls: falls back to persisted `toolCallStart` messages.
  • SIZING.md compliance: px-based layout violations converted to rem.

Performance

  • `release_max_level_info`: debug/trace compiled to no-ops in release builds.
  • Non-blocking stderr: tracing stderr layer wrapped in `non_blocking()`.

Security

  • SHA256 verification: binary distributions verified against registry checksums.
  • App Store entitlements: `files.bookmarks.app-scope` and `keychain-access-groups`.
0.1.52026-03-29

0.1.5

Added

  • Windows port with Azure Trusted Signing.
  • Cross-platform CI pipeline.
  • Refreshed app icons (iOS, Android, Windows asset sets).
0.1.32026-03-15

0.1.3

Added

  • Initial public release.
  • ACP client management with carousel UI.
  • MCP gateway with per-session HTTP.
  • EventKit and AgentMail built-in MCP servers.
  • Glass UI with dynamic accent colors.
  • Session persistence and restore.

Get the latest beta

Beta channel always redirects to the current signed prerelease.