Aug 3, 2026
What’s new
- Stop a running turn from your iPhone. The Code composer now turns into a Stop button while the model is working, so you can cut a turn short without reaching for the Mac — and typing a follow-up still sends it, so mid-turn steering keeps working exactly as it does on desktop. (#1401)
- Grok sessions no longer look finished while they’re still working. When Grok retries a request in the background, the live stream animation and turn timer stay up instead of the transcript quietly going idle — and a retry that never resolves now ends cleanly rather than leaving a session spinning forever. (#1404)
- Usage reads as a percentage, not a dollar figure. The weekly hosted-inference limit no longer shows a dollar cap anywhere — Mac, iPhone, web, and the pricing page all show how much of your allowance you’ve used and when it resets. Plans now describe their allowance relative to Plus instead of a raw number. (#1402)
- A product page for every feature. continuumcode.ai now has dedicated pages for Code, Voice, App Shots, Cloud, sharing, plan review, the auto model router, env variables, pairing, widgets, desktop, and security — reachable from the Product menu and the footer. (#1403)
- Compare hub. New “Continuum vs” pages covering 14 tools (Cursor, Claude Code, Codex, Copilot, Devin, Aider, Windsurf, Conductor and more), each one honest about where the other tool wins and how to use both together. (#1405)
Fixes and under-the-hood
- Sparkle delta updates generate correctly again — code-signature extended attributes are stripped from Mac sources before packaging, so incremental updates stop falling back to full downloads. (#1398)
- The website’s download links now auto-bump to the newest desktop and CLI releases as part of the release process, instead of drifting behind. (#1397)
- Site analytics: Google Tag Manager is live on the marketing site. (#1400)
- Fixed an apns-gateway dependency mismatch that could break a clean install. (#1399)
Aug 2, 2026
Dictation on iPhone goes hands-free — it stops when you stop talking — a double
back tap can toggle it, and the public changelog got its lost history back.
What’s new
- Dictation stops when you stop talking. Start Continuum Voice from the Action Button or Back Tap and just speak — when you go quiet, the turn ends and your words are delivered, no second press needed. The pause length is tunable in Settings → Voice (1.5s / 2.5s / 4s), and it fails safe: if the audio signal isn’t usable, it simply waits for your manual stop. (#1396)
- Double Back Tap toggles voice. Set up Settings → Accessibility → Touch → Back Tap with the Continuum shortcut and two taps on the back of the phone start dictation, two more stop it — even from a cold start. The new setup cards in Settings → Voice walk through it. (#1396)
- See your words before they land. The Continuum keyboard now shows a live transcription pill — waveform while you speak, then the finished text animates in before it’s inserted into the field, matching the Mac’s dictation overlay. The old keyboard mic button is gone; the gestures replace it. (#1396)
- The docs changelog remembers every release again. The public changelog at continuumcode.ai/docs/changelog had silently lost every release between 0.57.1 and 0.73.0. The full 94-release history is restored, and the release pipeline now merges into the published feed instead of overwriting it — with a guard that refuses to publish if history would be lost. (#1393)
- Download links point at current builds. The download page’s Windows, Linux, and CLI links had drifted 11 versions behind; they now track the latest release, the code-signing FAQ matches reality (macOS is notarized, the Windows installer is signed), and the new docs pages are submitted for search indexing. (#1394)
- iOS Settings drops the non-functional Add funds section. Top-up isn’t available for most accounts yet, so the card is hidden on iPhone (native and Expo) until it works — behind a one-line flag for when it returns. (#1392)
Under the hood
- Native Google Analytics finally records in release builds — the GA4 API secret now ships with the app instead of living only on one dev machine, bringing the Apple apps in line with web, desktop, and mobile. (#1395)
- Dictated text can no longer land in the wrong text field: moving focus during the keyboard’s reveal now revokes the pending insert instead of re-anchoring on whatever field you tapped next. (#1396)
- Voice endpoint detection adapts its threshold to the speaker, decays after loud transients, re-anchors on clock changes, and never auto-stops without speech evidence. (#1396)
Aug 1, 2026
Your iPhone’s Action Button can now start Continuum Voice without opening the
app, the Code list stops fighting you when you swipe to archive, and the docs
site is back.
What’s new
- Toggle Continuum Voice from the Action Button. Assign Continuum to your iPhone’s Action Button (or a Control) and one press starts dictation, another finishes it — without opening the app first. It works from a cold start, not just when Continuum is already running. (#1388)
- Swipe-to-archive stays open long enough to tap. Swiping a session in the Code list used to snap shut before you could hit Archive. The row now rests open, swiping a second row closes the first, and tapping the card closes the row instead of opening the session. (#1387)
- The Codex 5-hour bar stops appearing when there is no 5-hour window. On a weekly-only Codex plan, iOS Usage showed a phantom session rail stuck at a dead value. Weekly now takes the main gauge and the empty 5-hour rail is gone, matching what the Mac already showed. (#1390)
- continuumcode.ai/docs loads again. The docs site was rendering an “Error loading page” shell for everyone, including search engines. It renders properly now, and the docs pages are finally being indexed under our own domain instead of the hosting provider’s. (#1391)
Under the hood
- Session diff counts announce their refresh explicitly instead of relying on an unrelated event to carry them, and the per-session event filter no longer depends on an accident of the visibility check to deliver product-wide refreshes. (#1389)
hasSessionis now carried end-to-end on the shared usage row, so Mac, iOS, web, and the desktop apps all agree on whether a provider actually has a rolling session window. (#1390)- The docs proxy keeps React’s streaming payloads byte-stable while still rewriting SEO metadata, and stamps a canonical URL and indexing headers on every docs response. (#1391)
Aug 1, 2026
Ten fixes aimed squarely at the iPhone: the Code tab now shows only real code
sessions, the transcript and timer agree with the Mac, and starting a session
feels like starting a conversation. Plus your disk stops quietly filling up.
What’s new
- Starting a session on your phone is a conversation now, not a wait. Tapping send used to park you on a blank screen for several seconds and then drop you back on the Code list, sometimes with an empty transcript. You now see your own message immediately, a four-step setup trail while the workspace is prepared, and you land directly in the live transcript. (#1380)
- Chat transcripts stopped leaking into Code. For the first 15–20 seconds after opening the app, Chat conversations were grouped into the Code tab — with their activity animations running. Code now shows only real, repository-backed code sessions from the first frame. (#1377)
- Your phone shows the same transcript and timer as the Mac. When an agent rolled over to a new session file, the phone could keep rendering an older reply and count elapsed time from the wrong prompt. Both now follow the Mac, and stale pages are replaced atomically instead of lingering. (#1379)
- Running sessions look running on iPhone. A session that was actively streaming could appear idle on the phone while the Mac showed it working. Both hosts now publish the real per-turn activity, so the data-stream animation matches everywhere. (#1381)
- Create PR no longer appears mid-turn. The overflow menu still offered Create PR while the agent was working — and on hosts that can’t open PRs at all. It now uses the exact same end-of-turn rule as the main button. (#1378)
- Continuum’s own setup text stays out of your transcript. The internal repository briefing Continuum sends with your first prompt was being rendered as if you had typed it. It’s hidden now, on new and existing conversations alike, and a failed turn no longer leaves a duplicate copy of your message behind. (#1384)
- Screenshot names survive in attachment pills. A file like
Screenshot 2026-08-01 at 9.08.48 AM.pngwas cut at.48, leaving a strayAM.pngin the message text. The whole filename stays in the pill. (#1383) - The Settings sidebar scrolls. In a short window the lower settings groups were simply unreachable on Mac, Windows, Linux, and the web. The list now scrolls on its own. (#1382)
- Archived worktrees stop eating your disk. Archiving a session was supposed to reclaim its worktree and silently never did — 67 stale worktrees, several gigabytes, on one machine. Reclaim works now, a background sweeper cleans up what leaked before, and build output is deleted outright instead of piling up in a Trash nobody empties. (#1385)
- Hosted sessions attach on the first try. A hosted session could report success before it was actually connected to its provider, leaving a session that could never be used or retried. It now attaches exactly once, and repeat requests replay only verified state. (#1386)
Under the hood
- Transcript cloud sync only replaces a generation when both the source counter regresses and the transcript actually shrinks, with restart-safe publisher state on Mac and the Go host, and generation-atomic page replacement. (#1379)
- Worktree reclaim is linearized against racing spawns and unarchives, compares paths by filesystem identity rather than spelling, and cross-checks the on-disk ownership marker against the session record before deleting anything. (#1385)
- Hosted session creation is single-flight per stable ID and rejects mismatched repo, agent, mode, or lifecycle on replay; private hosted capacity now runs over HTTPS with an operator-owned CA, and deploys fail early if that CA is missing or near expiry. (#1386)
- The Code gate, the Create-PR gate, and the attachment parser each moved into a single shared implementation, so Mac and iOS can no longer drift apart on what counts as a code session, when a PR can be opened, or where a filename ends. (#1377, #1378, #1383)
Jul 31, 2026
Nine fixes in one pass, all aimed at the same theme: every client — Mac,
iPhone, web, Windows/Linux — should agree about what’s happening and stay
usable while it happens.
What’s new
- Every client now agrees who’s working. The real per-turn activity signal is published on the wire, so sessions animate (and stop animating) together on the Mac, iPhone, and web instead of six spinners on one screen and one on another. Diff counters also land faster on busy worktrees. (#1374)
- PR badges stop disagreeing across devices. “We haven’t checked yet” is no
longer rendered as “no PR”: branch/PR state is remembered between checks,
externally-merged PRs are detected, and a host with a broken
ghcan no longer wipe good badges for everyone. (#1372) - Starting a session from your iPhone no longer fails on slow repos. Every hop between the phone and your Mac now allows the same per-endpoint time budget, so a first run with a long setup script finishes instead of dying at a 10-second relay ceiling — and when something does go wrong, you see the real reason instead of “Could not start the session.” (#1371)
- The copy button waits for the turn to actually end. On iPhone, the end-of-turn footer (copy, duration, edited files) no longer appears while the agent is still working — and on web it now reliably appears once the turn settles. (#1373)
- Create PR shows up exactly when it should. On iPhone it no longer reappears mid-turn right after you send; on Android/Expo it now appears at all (it was permanently hidden). (#1370)
- The Code header fits on a phone again. After creating a PR, the title
keeps its full width,
#1368andMergeno longer wrap mid-word, and the PR number always renders without locale separators. (#1375) - The session list scrolls from anywhere. A full Code tab no longer traps vertical swipes on the cards — scroll starts anywhere, and only a deliberate left swipe reveals Archive. (#1368)
- The composer’s model and effort pills stopped colliding. They’re now one split capsule with both halves tappable — on iOS and Expo. (#1369)
- Your first message no longer hides under the reply. Repos with a dot or
other punctuation in their path (like
glide.co) resolved to a transcript directory Claude never writes, pinning your prompt below the streamed answer. Continuum now names transcript directories exactly the way Claude Code does. (#1376)
Under the hood
- Self-hosted CI runners repaired: container jobs no longer leave root-owned files that break every following checkout.
- A date-sensitive backend test fixture was made relative so the cloud deploy gate can’t trip on the calendar.
Jul 31, 2026
Follow-up to 0.71.0’s sync work: your Mac stays reachable on its own, and the
phone finally shows the truth about what’s running.
What’s new
- Your Mac heals itself instead of going dark. After a crash-relaunch or a stale enrollment, the Mac could get stuck “offline” forever — no restart or re-sign-in brought it back. It now detects the stall, clears the bad enrollment, and re-enrolls itself automatically. (#1352)
- PR controls on your phone finally know what state you’re in. Instead of a permanent orange Create PR button — which stayed loud after the work was done and offered to open a second PR against an already-merged branch — iOS and Android now show the same three-state control the Mac has: Create PR when there isn’t one, a colour-coded PR pill when there is, and a Merge button when checks are green. (#1367)
- Usage gauges work again on iPhone. They were pinned at 0% with a recurring “Your Mac didn’t respond in time” — the phone was asking the wrong machine. It now reads usage from a live Mac, and holds the last good numbers through a relay blip instead of flickering every five seconds. (#1365, #1366)
- Live sessions actually look live. A session running on another device showed as finished — no data-stream animation, no “Live on another device”. Running sessions now report their real status across every client. (#1365, #1366)
Under the hood
- Host-control startup gets a 30-second watchdog and retries on the mirror timer, so a single failed enroll can no longer strand a machine. (#1352)
- Sessions resumed after an app restart re-attach their event wiring, so the session registry stops publishing a frozen row. (#1366)
- PR-state vocabulary moved into one shared model (Swift + TypeScript) with matching tests, so the Mac, iOS, and Expo clients can’t drift apart on what a merged PR looks like. (#1367)
Jul 30, 2026
Reliability release: cross-device session sync now works end-to-end, on every
platform.
What’s new
- Your sessions follow you everywhere. Sessions running on your Mac (or any computer) now appear on your iPhone, the web, and the desktop apps — with an icon showing which machine each one lives on. Archiving on one device finally sticks everywhere. (#1353, #1355, #1357, #1358)
- Open a synced session and it’s live. Tapping a session from another computer now connects directly to that machine over your account mesh: full transcript, live updates, and a working composer — not a frozen read-only snapshot. (#1361, #1363, #1364)
- Transcripts always load. Saved cloud transcripts render on every client instead of showing an empty screen. (#1362)
- The web app stays connected. Fixed a bug that silently dropped the web’s mesh connection every 25 seconds, plus a faster, cache-first Code sidebar that paints instantly on sign-in and opens transcripts in a single click. (#1354, #1356)
- Focused navigation. Chat and Cowork are tucked away on every client — Continuum opens straight into Code. (#1359)
- Self-diagnosing sync. A new one-command health check
(
tools/verify-mesh-sync.mjs) verifies the whole cross-device pipeline in seconds and names the broken link when something’s off. (#1360)
Under the hood
- Host devices now report themselves healthy from their first heartbeat, so clients connect to them automatically. (#1361)
- Removing a device archives its leftover sessions instead of leaving phantom “Offline” rows. (#1355)
- Hardened diagnostics across iOS connection paths — every connect failure now logs its exact reason. (#1364)
Jul 30, 2026
Fixes
- Worktree sessions no longer lose your opening message or stall before the provisioning trail appears — including on pinned secondary accounts, which now spawn on the fast path and bill the account you actually picked (#1343, #1348)
- Sessions pinned to a secondary Claude account now resolve their transcripts from that account’s own project files, and never fall back to another account’s history (#1343)
- The composer’s effort chip sticks: picking Grok + High stays on High after you send, persists as that provider’s default for new sessions, and mid-session effort changes on a live session no longer rewrite your provider-wide default (#1340)
- The sidebar diff badge no longer vanishes on worktrees an agent is actively writing to — counts appear and tick while work happens (#1346)
- An expanded sub-agent row now shows the real prompt it was given and the report it returned, instead of “pending” / “completed” — on Mac, web, and mobile (#1345)
- PR-creation confetti fires reliably — exactly once per created PR, and never for a PR you merely opened (#1350)
- Signing out on the web now actually lets you switch Google accounts instead of silently signing you back in (#1351)
- The web titlebar’s Live/Demo pill is gone, matching the Mac and iOS chrome (#1338)
Features
- The homepage model picker is now the app’s real ModelTray — provider rails, favourites, search, and keyboard flows, fed by the live free-model roster (#1341)
- Bundled compute now has end-to-end lifecycle telemetry with a strict privacy allowlist (never prompts, code, or credentials), so a failed cloud-session start can be traced to the exact broken step — plus cleanup compensation so a lost create response can’t leave a stray billable lease (#1334)
Under the hood
- The sessions list no longer ships full plan documents on every poll; plan bodies hydrate on demand and the Approve tray is driven by the authoritative flag (#1335)
- CI now runs on self-hosted runners
Jul 29, 2026
- Everything that syncs your sessions got dramatically lighter. The session list that refreshes every couple of seconds now sends only what the client actually renders — live sessions instead of your whole archive, and plan documents only on the screen that shows them. On a real workspace that’s a 687 KB refresh down to 57 KB, roughly 44× smaller once compressed, on Mac, web, Windows, Linux, and the terminal client. (#1329)
- Idle machines stay idle. A background connector poller was spinning at about a third of a CPU core doing nothing but failing, and the Windows/Linux agent re-uploaded its full workspace snapshot every single minute — both are fixed, so a Continuum that’s just sitting there costs you almost nothing. (#1329)
- Chat is usable before you have an account. Ask one question on continuumcode.ai and get a real answer before signing up, then keep the conversation when you do. Free models are available on every plan, and the web chat now has the same model picker as the Mac composer. (#1331)
- Web Chat and Code now look and work like the Mac app: the same workbench layout, history rail, transcript, and composer. Opening Code goes straight to your most-used connected device instead of stopping at a “pick a runtime” screen, and falls back to Continuum Cloud when nothing is connected. (#1328)
- Long conversations scroll all the way back to where they started. The transcript used to hit a wall at the loaded tail; now it reveals what it’s holding and pages further back on its own, keeping your place while it loads. (#1322)
- Voice transcription starts the instant you press the key. The microphone now opens before the speech model finishes loading, models stay warm between uses, and the one you’ve selected is prepared at launch — short recordings no longer come back empty. Grok speech-to-text stays available whenever you have a Grok login. (#1327)
- Your weekly Continuum limit resets exactly seven days from when your plan started, not on a calendar boundary, and every client shows the same countdown, spend, and budget the server enforces. (#1324)
- Codex shows both of its meters again — the rolling 5-hour session limit is back alongside the weekly one, matching how Codex actually bills. (#1320)
Fixes
- The Personal Claude gauge no longer disappears behind a false “reconnect” prompt when a token refresh briefly fails, while an account that genuinely needs re-authentication now says so instead of showing a stale number. (#1332)
- The Grok weekly gauge no longer sticks on STALE at 0% during a week you haven’t spent anything — on Mac, Windows, and Linux. (#1330, #1333)
- The plan progress bar now appears in every direction it should: on the Mac sidebar for sessions hosted on Linux or Windows, and in the web and desktop clients for sessions hosted on a Mac. It was silently missing on both. (#1329)
- Messages typed while your Mac was unreachable now actually send once it reconnects, instead of sitting in the queue forever. (#1329)
- The web dashboard can connect to your Mac again — identifying itself correctly on connect, and encrypting the link the way the Mac expects. (#1323, #1325, #1326)
- Code project headers no longer show an environment-variable count pill. (#1321)
Under the hood
- Faster chat rendering: incoming messages update in place and only new content is re-processed, instead of rebuilding the transcript on every token.
- Database work for large workspaces got a dedicated index, and the scheduled maintenance job now claims its work so it can’t run twice and send duplicate notifications. (#1329)
- Security hardening on the pre-sign-up chat endpoint: cross-site requests are rejected, per-network limits can’t be bypassed by rotating addresses, and the endpoint refuses to run unless its privacy salt is configured. (#1331)
- Release builds now refuse to publish unsigned Windows installers or resolve dependencies without a lockfile. (#1329)
Jul 29, 2026
- Share a transcript as a link: publish any Chat, Code, or Cowork conversation to a public page at continuumcode.ai/share/… with expiry, refresh, and revoke. Everything is redacted server-side before it’s stored — home directories, credentials, connection strings, emails, and private IPs never leave your machine in the clear. Works from Mac, iPhone, web, Windows, Linux, and the terminal client. (#1319)
- Repository environment variables now work on every client, not just the Mac. Your repo’s own
.envfiles are picked up automatically and injected into sessions, terminals, and agents; variables you paste into a chat are captured into the repo’s list and redacted from the prompt instead of being sent to the model; and agents are told which variables already exist so they stop asking you for secrets you’ve already set. Keys that could redirect traffic or hijack process loading are refused rather than stored. (#1317) - Connect third-party apps from Settings: the full ~140-app connector directory now loads on every client, with one-click authentication, your own MCP servers, and per-app connection state. Previously anything paired to a Mac showed an empty gallery. (#1309)
- Dictate with your own provider’s voice models: speech-to-text through a connected Grok or OpenAI subscription, on Mac, iPhone, Windows, Linux, and the web — no separate sign-in, and your provider key never leaves the host. (#1315)
- Provider setup is far easier to use: every provider in the catalog now has a visible Connect button (it used to appear only on hover), real brand marks, live connection status, keyboard navigation, and a prominent entry point in Settings instead of a buried link. (#1316)
Fixes
- Approve & run now starts on the first click. A busy git index could silently swallow the first press, so plan approvals appeared to do nothing. (#1310)
- Queued follow-up prompts now send the moment the current turn ends, even if you’ve moved to another session or worktree — no reselection needed. (#1313)
- Sub-agents that finished now show as Done instead of being stuck on “Working” forever. (#1318)
- One end-of-turn notification per turn, instead of one per sub-agent on turns that fan out. (#1308)
- Assistant replies no longer appear twice in the transcript when a message and its recorded copy arrive out of order. (#1311)
- Links in chat render correctly: URLs no longer break apart into pieces with injected spaces, and multi-word link text stays one continuous, clickable block. (#1303, #1314)
- The edited-file chip counts the lines that actually changed instead of the whole file’s line totals, and large diffs no longer stall the interface. (#1305)
- A brand-new session’s first message says “Starting session…” instead of “Resuming session…”. (#1304)
- Continuum-hosted model pickers stay populated when the gateway is briefly unreachable, and Continuum now has a menu-bar gauge with weekly spend like every other provider. (#1312)
- The Land PRs button has been retired from Code and Settings. (#1307)
Under the hood
- Search engines can now index the site and docs properly (sitemap index, structured data, canonical URLs). (#1306)
- Android release build scaffolding for the mobile app. (#1302)
- Security hardening: authentication added to the connector runtime routes, repository
.envfiles can no longer redirect an agent’s API traffic, and public share pages are rate-limited with hardened redaction. (#1309, #1317, #1319)
Jul 27, 2026
- The Continuum app is now free for everyone. Bring your own provider keys and use the full product; paid plans now cover Continuum-hosted inference only — Plus (100), Max 200 (500) per month. Existing app subscribers keep everything and can cancel anytime. (#1277, #1300)
- Claude Opus 5 is available on every client and every serving rail — native Claude subscriptions, Continuum-hosted inference, and OpenRouter — with a 1M-token context window. (#1292)
- Connect your tools: the new Continuum Connectors Runtime brings a 40-app catalog, one-click cloud OAuth, and your own MCP servers to Cowork sessions. (#1279)
- Slack integration: wake and steer Cowork sessions from Slack, with permission approvals as buttons — restricted to authorized workspace members. (#1279)
- Cursor and Grok agents can now use connectors and MCP tools. (#1279)
- New: Continuum Code panel for VS Code — chat with an agent about your workspace from the editor sidebar, with secure cloud sign-in. (#1290)
- New: Continuum Mobile preview — an Expo app for iPhone and Android with the full Quiet Black UI and a live path to your devices. (#1291)
- The web dashboard (and the Windows/Linux desktop app) now visually matches the native Mac app across Chat, Cowork, Code, and Usage. (#1274)
- Security hardening across the VS Code webview bridge, Slack approvals, and model entitlement checks. (#1277, #1279, #1290)
Jul 24, 2026
What’s new
- iPhone Code gets more powerful — live archive-sync, a one-tap Create PR button in the top right, swipe-to-archive on sessions, and a little confetti when a PR lands. (#1287)
- New hosted models on the way — GLM 5.2 and Kimi K3 now appear as “Coming Soon” in the model picker. (#1278)
Fixes
- One computer owns the mesh — two Continuum instances signed into the same account no longer fight over the mesh host role, so your devices connect to a single, stable host. (#1281)
- Reliable session creation — creating a session is now idempotent, so retries no longer spawn duplicate worktrees, and a relay frame-count limit no longer aborts a legitimate cold-sync on session create. (#1285, #1282)
- iPhone polish — the transcript no longer mis-folds during an active turn, and the Code “jump to latest” button actually scrolls to the bottom now. (#1283, #1284)
- iPhone diff counter stays put — the host re-pushes sessions when diff stats finish computing, so the counter no longer goes missing. (#1280)
- Links open where you expect — public URLs in chat open in your browser, with a Copy Link option. (#1266)
Under the hood
- Streaming chat now sends roughly 3× fewer frames over the wire — smoother updates with less overhead. (#1288)
- Tidied the Ask / compare tray by removing a redundant account chip. (#1264)
- Homepage: removed the “Continue with Google” button. (#1286)
Jul 23, 2026
What’s new
- Do more from your iPhone — archive sessions, review pull requests, and use the terminal directly from mobile, so you can drive work on the go without reaching for your computer. (#1275)
- Headless agents keep themselves current — Linux and Windows agents now self-update daily in the background, so remote hosts stay on the latest Continuum without a manual reinstall. (#1269)
- Sessions open instantly — a new open cache makes switching into a session feel immediate instead of waiting on a reload. (#1275)
Fixes
- Your devices stay connected for hours — a deep pass on mesh reliability fixes the reconnect churn, the WebSocket “death spiral”, and the fleet-connect race that could leave Mac, iPhone, Linux, or Windows stuck on a read-only mirror or unable to connect to your computer at all. (#1263, #1271, #1272, #1275)
- Linux and Windows hosts connect reliably — a device-id matching bug that blocked host control on those platforms, and a live server error during device enrollment, are both fixed. (#1268, #1267)
- Google One Tap is back — one-click sign-in on the homepage, restored after the site rewrite dropped it. (#1262)
- Lighter and smoother — lower idle CPU usage and smoother streaming Markdown rendering during long responses. (#1265)
Under the hood
- Persistent connection diagnostic logging now runs on every client (Mac, iPhone, Linux, Windows, and web) so mesh issues are caught and root-caused faster. (#1270)
- Additional security hardening, including a serverless SSRF fix. (#1265)
- Cloud database migration reconciling the workspace-mirror foreign keys with the canonical schema. (#1261)
Jul 22, 2026
What’s new
- Auto Model Mode — pick “Auto” instead of a model and Continuum assigns a planner, executor, and cross-provider verifier from the providers you’ve connected, then runs plan → approval → execute → verify with visible routing reasons, live cost, receipts, and crash-safe resume. (#1252)
- Multiple accounts for every provider — add more than one Z.ai, OpenCode, or other vendor account (not just Claude/Codex), pick a preferred account per provider, and Auto Mode + new sessions respect it — with strict per-account credential isolation. (#1259)
- Try Continuum App free for 7 days — the base Continuum App plan now starts with a card-on-file 7-day free trial; 250/yr after, cancel anytime. (#1256)
- Same picture on every client — PR and merge status, real session titles, and all your onboarded repos now mirror to web and iPhone even when the owning computer is offline. (#1260)
- Plan/Code toggle you can trust — one shared source of truth across Mac, iPhone, web, and Linux/Windows hosts: approving a plan reliably flips the session to Code everywhere, and Cursor (which has no plan mode) no longer shows a Plan pill. (#1255)
Fixes
- Working subagents stay visibly live with the data-stream animation and elapsed timer — the phantom “Started” status is gone. (#1253)
- iPhone reconnects to your computer automatically after the desktop app restarts or updates — no more sessions stuck on a read-only mirror while the host is online. (#1254)
- Continuum hosted inference now appears in the usage analytics legend on Mac and web. (#1257)
Under the hood
- continuumcode.ai search-ranking fixes: docs canonicals now point at continuumcode.ai, tuned marketing metadata, and a crawlable app shell. (#1258)
Jul 22, 2026
A Figma-style comment-and-edit loop right inside the Code Preview, plus smoother Code pane
resizing on Mac.
New
- Comment and edit on the live Preview. The Code review Browser tab is now Preview:
localhost, GitHub, and
.locallinks open in-app instead of Safari, and you can drop Claude Design–style comment bubbles on any element or switch to a Figma-like text-edit mode. Selected elements and text edits become first-class chips in the composer and transcript, so the agent gets the exact selector and context you pointed at. (#1251)
Improved
- Smoother Code pane resizing. Dragging the sidebar and review-pane dividers now tracks the cursor cleanly — no rubber-banding or animation fight — and the width sticks after you let go. (#1251)
Older releases (0.65.4 and earlier)
Older releases (0.65.4 and earlier)
Jul 21, 2026
A safer quit and steadier Cursor sessions on Mac.
New
- Quit asks before it interrupts work. Continuum now confirms before quitting while agent tasks are still running, so you don’t lose an in-progress session by reflex. (#1250)
Fixed
- Cursor sessions honor the model you picked. ACP (Cursor/Grok) sessions now stay pinned to the model you selected instead of silently falling back to Auto. (#1249)
Jul 21, 2026
One-tap Google sign-in on the web, a chat archive you can hide and bring back, a web chat
that now feels Mac-grade, and steadier Code and Chat sessions on iOS when devices come and go.
New
- One-tap Google sign-in. The marketing site now offers Google One Tap — sign in with a single click, no password, no redirect detour. (#1244)
- Archive and restore chats. Hide a chat to clear your list, then reopen it later with its full context synthesized back — nothing is lost, your workspace just stays tidy. (#1246)
Improved
- Web chat, elevated to Mac-grade. The web Chat and HostedChat gained the polish the Mac app has: IME-safe send, a proper Send↔Stop toggle, jump-to-latest, a raised composer, history search, drafts, and copy/retry on messages. (#1247)
Fixed
- Code and Chat stay put when devices flap. iOS Code and Chat sessions no longer lose their place when a multi-host mesh connection drops and reconnects. (#1248)
- One Tap sign-in reliability. The Google One Tap bridge no longer sends an incompatible
screen_hintwith GoogleOAuth, fixing a sign-in edge case. (#1245)
Jul 21, 2026
Continuum Plus arrives — a $25/month tier with hosted inference built in — alongside four
free hosted models in the picker, a rebuilt first-run experience, and a round of Chat, Code,
and billing fixes across iOS and Mac.
New
- Continuum Plus. A new 25/week usage cap, so you can run models through Continuum without bringing your own key. The native app shows a live weekly usage gauge, and the cloud dashboard surfaces the tier label and remaining budget. (#1230, #1231, #1232)
- Four free hosted models. The Continuum picker now offers Nemotron 3 Ultra, Nemotron 3 Super, Gemma 4 31B, and North Mini Code at no cost — pick one and start coding without a paid provider. The hosted catalog was also trimmed to only models that actually serve, so you never select one that can’t run. (#1238, #1235)
- A rebuilt first run. Onboarding is now a guided, per-provider setup with cleaner empty states and a working Quick Start — no more confusing web-org step. New installs get to a working session faster. (#1228)
Fixed
- Model selection that tells you the truth. Choosing Continuum as your provider now surfaces gateway errors instead of failing silently, only offers models the live catalog can actually serve, and counts Continuum correctly in broadcast. (#1227)
- No more hidden voice-shortcut capture on Mac. The voice shortcut no longer grabs keystrokes when it shouldn’t. (#1226)
- Cleaner model menu on Mac. Settings no longer repeats the “Continuum” brand prefix on every hosted model name. (#1225)
- Fable sends reliably. Recovered a first-send idempotency conflict that could stall the very first message to a Fable model. (#1234)
- Accurate document tabs on Mac. Tool output with a bare filename no longer fabricates a bogus document-tab path. (#1240)
- iOS Chat & Code polish. The New Chat button keeps its intrinsic size, Code session-card diff stats are vertically centered, and the header CTAs are more compact with the Code “Add a device” promo removed. (#1222, #1223, #1224)
- Correct Fable pricing. claude-fable-5 is now billed at its list rate (50 per Mtok) instead of falling back to a Sonnet-class price. (#1233)
- Admin invites, fixed. Creating an invite no longer throws a silent 520, “Pro” is renamed to “Continuum App,” the email field is sized correctly, and invites now default to a 3-month Continuum App code. (#1229, #1239)
Jul 20, 2026
Mesh connections that stay connected, a monochrome Continuum mark that fits the tray, and a
batch of dogfood polish across Chat, Code, and Settings on iOS and Mac.
Fixed
- Your devices stay connected. iOS mesh connections now persist and recover on their own instead of getting stuck “handshaking” — no more re-selecting a device and hoping it connects. A watchdog gives up on a dead rendezvous and reconnects cleanly. (#1219)
- Every device is selectable. The Devices list is now grouped into Available and Other, with your Macs first and hosts sorted by session count. Windows and Linux hosts show as connected and can run sessions directly — pick any available device from New Session. (#1219)
- A Continuum mark that fits. The Continuum provider glyph is now a monochrome mark that matches the app icon, sitting alongside Codex, Cursor, and Grok in the model tray instead of a colored chip. (#1219)
- Chat, Code, and Settings polish. Full Cursor model catalog in New Session, Continuum hosted inference shows only when you’ve enabled it, Code rows carry Mac-parity git branch/PR icons, and a round of Chat/Settings/Usage cleanup from dogfooding. (#1221)
Under the hood
- Security headers restored on the web. continuumcode.ai now sends clickjacking and HSTS protection (X-Frame-Options, CSP frame-ancestors, Strict-Transport-Security) on every response — these were dropped when the backend moved to the self-hosted box. (#1220)
- Web release points at the live backend.
release-web.shnow forwards to the box deploy instead of the retired Cloudflare Worker path. (#1220)
Jul 19, 2026
Windows and Linux grow up: the desktop app gets working onboarding, real chat, rich
transcripts, and a Mac-parity Code tab. Alongside it, org admins get real governance over
hosted inference, Code becomes account-wide across your devices, and a batch of Mac
reliability fixes land.
Features
- Windows & Linux desktop, for real. The Electron client now onboards end to end, runs live chat, renders rich transcripts, and ships a Code tab at Mac parity — the cross-platform app is a first-class client, not a preview. (#1212)
- Account-wide Code, across every device. The Code sidebar spans your whole account with seamless enrollment and cross-device usage upload, so sessions and usage follow you between machines instead of living on one host. (#1215, #1216)
- Org-admin governance for hosted inference. Organization admins can set per-member caps and budgets, get spend alerts, and approve access — full control over who consumes hosted models and how much. (#1202)
- Relay controllers can reach sessions. The Mac daemon unblocks
/sessionsfor relay controllers and auto-uploads usage every 30 minutes; web gains Create-PR parity. (#1216)
Fixed
- Worktree sessions are reliable. Creating a session no longer hangs on worktree setup, and Local sessions can be created with no worktree at all. (#1208, #1210)
- Chat history is there on first render. Opening the sidebar restores your chat history immediately instead of showing a blank pane. (#1207)
- Slash skills fire on the first Return — no more swallowed first send — and agent-invoked skill expansions no longer render as your own chat bubbles. (#1205, #1211)
- Symlinked skill docs open. Markdown skill documents that are symlinks now open correctly on Mac. (#1203)
- The relay survives restarts. Relay restarts and dead links no longer strand Mac, iOS, or analytics — connections recover cleanly. (#1209)
- Updater popover shows what changed with real update summaries instead of a bare version bump. (#1204)
- Primary buttons are never orange — the primary CTA now always uses the correct accent. (#1206)
Under the hood
- Cross-device usage upload and seamless device enrollment underpin the account-wide Code experience. (#1215)
- Integration content validated end to end after the stacked-PR land, with lost pieces restored. (#1217)
Jul 18, 2026
The biggest release since the cloud-sync program: the phone experience gets fixed end to
end, hosted inference arrives fully hardened (dark until cutover), the founder admin panel
ships, and every platform moves together.
Features
- Hosted inference, ready behind the switch. A metered, tier-enforced OpenAI/Anthropic-
compatible gateway with subscription pooling, atomic budget reservations, priced-model
enforcement, fail-closed capacity routing, and full tool-calling through the Anthropic
bridge — plus personal
cont_sk_API keys with a dashboard panel. Everything stays dark until the master toggle flips. (#1170, #1178, #1189, #1195) - Continuum hosted models as a first-class coding provider. Pick Claude/GPT/Grok/Gemini “on Continuum” in the Code picker; keys mint automatically and opencode is configured for you — gated by entitlement with honest upgrade states. (#1177, #1188)
- Zero-setup hosted chat. A signed-in user lands in chat and can talk immediately — no paired device — with a free-tier weekly allowance and a clean upgrade nudge at the cap. (#1197)
- Founder admin panel at admin.continuumcode.ai: cross-customer growth, revenue, marketing, and usage; runtime inference capacity + per-user consumption; comp grants and emailed invites (Stripe codes minted with product-scoped restrictions) — every sensitive read and money-moving action audit-logged append-only. (#1180, #1187, #1191, #1196)
- Ultra promo codes. Allowlisted higher-priced SKUs can now offer promotion codes at checkout (100%-off 3-month Ultra for friends), fail-closed to the $25-only rule when unconfigured. (#1185, #1179)
- All outbound email on AWS SES with a hand-rolled, vector-verified SigV4 signer — injection-safe templates, no new dependencies — plus self-hosted Listmonk for newsletters at emails.continuumcode.ai. (#1195, #1199)
- Cloud runners bill your own subscription. A managed runner installs your provider credentials at boot over a least-privilege signed pull — creds sealed at rest, scoped to the runner’s own agent, never touching the GCP broker. (#1193)
- Web + iOS mesh onboarding. The browser defaults to Cloud with a Mac-parity “Run on” chip (no more device wall), and GitHub connect lives in Settings on web and iOS — with identity-fenced sign-out handling. (#1190, #1198)
- CLI: context, palette, and cross-provider memory. A real context-occupancy readout, a safer command palette, and opt-in memory shared across providers (plainly disclosed, off by default, stored securely with instant revocation). (#1200)
Fixed
- Phone sessions load their transcripts — instantly and in real time. Opening a worktree session no longer shows a blank screen: live sessions register for cloud transcript pushes and fall through to the durable cloud copy when a host can’t answer. (#1176)
- The turn timer matches the machine doing the work. No more resetting to 0 on every open — it anchors to the host’s own turn start, Mac and Linux alike. (#1176)
- The transcript is buttery. Scroll frames went from ~45–82 ms to ~1.3 ms by caching parsed markdown off the main thread; text wraps exactly at screen width; wide code blocks scroll in place. (#1176, #1175)
- Session cards: every live session animates its data stream from one shared clock; the green blinker and “live/idle” label are replaced by the Mac-style +N −M diff counter, computed identically to the Mac sidebar on both Mac and Linux hosts. (#1176)
- Plan approvals work on the newest Claude Code — the tool-based ExitPlanMode shape is recognized (and named foreign tools can never false-positive into plan approval), with the plan rendered as full markdown in the approval card. (#1183, #1184, #1192)
- Mid-turn “Send now” can’t strand your message or brick the session — a failed interrupt keeps the draft queued and the session recoverable. (#1186)
- Release Notes opens a readable changelog instead of raw markdown. (#1182)
- Coverage reports render as proper diagrams; SDK transcript duplicates are gone; the relay test gate runs from any checkout path. (#1175, #1173, #1169)
Under the hood
- Wire v52/v53: per-session diff stats + the hosted-coding capability, additive and gated.
- Migrations 0038–0048 (member API keys, comp grants + audit, superadmin admin + audit, hosted reservations, invites, free-tier caps).
- Stripe promo gating composes with data-driven plan prices; comp grants are read-time evaluated with full audit trails. (#1168, #1181)
Jul 17, 2026
A polish-and-reliability pass across every surface: your safety checkpoints can no longer
corrupt a repo’s git index, GitHub connect stops reporting false failures, Grok’s queue
gets a real “send now,” attachments keep their human names, iOS scrolling and keyboard
handling feel native, and the web and desktop apps close a long list of gaps against the
Mac app.
Features
- Grok “send now” while a turn is streaming. Queued follow-ups can interrupt the current Grok turn and send immediately — same steer flow the other providers use, with a guard so a still-stopping turn keeps your draft queued instead of erroring. (#1153)
- Attachments keep their real filenames. Staged files show as
PR instructions.mdinstead of a UUID — in chips, document tabs, and the prompts agents read — with collision-safe, traversal-proof sanitization. (#1155) - Web + desktop look and behave like the Mac app. A large parity pass across chat, cowork, code, usage, settings, and onboarding — plus a pixel-diff tooling gate to keep them aligned. Three Settings toggles that previously saved but did nothing now control their real behaviors, and the desktop tray defaults now match the Mac (Gemini and signed-in OpenCode gauges on by default, with a fallback tray item so the app never becomes unreachable). (#1156, #1166)
- Smoother iOS. Native rubber-band scrolling with keyboard swipe-dismiss and edge-swipe back, gentler streaming-transcript follow, better composer and safe-area spacing, richer Cowork scheduling and held-run cards, and a rebuilt Watch-app setup flow that shows real progress. (#1154)
Fixed
- Safety checkpoints can’t corrupt a repo anymore. Recovering from a stale
.git/index.locknow proves no live process holds the lock (30s age floor + open-file check + identity recheck) before removing it — a lock held by a running git operation is always left alone. (#1152, #1166) - GitHub connect no longer reports failure after succeeding. The OAuth fallback waits for a real delay instead of racing your install in a second tab, a replayed callback tab now shows “GitHub connected” when the connect actually worked, and a malformed GitHub response can no longer mark your installations revoked. (#1165, #1166)
- The chat provider tray is decluttered — the account picker moved out (account pinning lives in the Code composer chip). (#1161)
- The expanded right pane opens on To-Do’s, not Plan. (#1163)
- Grok’s effort dial matches what grok-4.5 actually accepts (low · medium · high) across Mac, web, and the Go daemon — which now really passes your choice to the CLI, including headless chat sessions that previously ignored it. (#1151, #1166)
Under the hood
- Desktop CI builds fixed (duplicate afterPack key) and the parity scorer recalibrated to a meaningful strictness. (#1159, #1166)
- Cloud DB upsert arbiters repaired (workspace mirror shells + usage snapshots). (#1160, #1162)
Jul 17, 2026
Your chat history now lives in your account, not on one machine. The Mac publishes every session’s transcript to Continuum Cloud as you work, and your iPhone follows along in real time over a live push stream — open a past session on the phone and it loads instantly, even when the Mac is asleep, shut down, or on another network. Transcripts are encrypted at rest under per-member keys, Windows and Linux agents publish the same way, and the phone↔Mac link no longer drops every 15 minutes.
Features
- Transcripts sync across devices in real time. The Mac publishes each active session’s chat transcript to Continuum Cloud within seconds, and a member-scoped push stream tells your other devices the moment something changes — no polling, no “pull to refresh.” (#1149, #1157)
- Past sessions open with the Mac off. The iPhone reads transcripts straight from your cloud account (a rolling 30-day window per session), so history is available anywhere you’re signed in — the Mac being unreachable no longer means a blank screen. (#1157)
- Session lists and transcripts paint instantly on iPhone. Cold open draws from a local cache first, then refreshes live — no more staring at black while a transcript loads. (#1157)
- Cowork runs reach your phone. When a cowork task needs your OK, the phone raises a notification even if Continuum is in the background. (#1157)
- Encrypted at rest. Cloud transcripts are sealed with per-member AES-256-GCM keys; removing a member crypto-shreds their content. (#1157)
- Windows and Linux publish too. The Go agent gains full transcript-publishing parity with the Mac at the same cadence, on by default. (#1157)
Fixed
- The phone no longer loses the Mac every 15 minutes. The relay’s idle eviction now counts delivered keepalives as activity, so long-lived host connections stay up instead of churning through reconnects. (#1149)
- Cloud sync starts on every launch. The usage mirror and transcript publisher now start from the menu-bar launch path, so a Mac that never opens the main window still publishes. (#1149)
- continuumcode.ai serves the real site again. The box deploy now assembles the marketing site and the
/app/dashboard instead of a placeholder stub. (#1157)
Under the hood
- Windows code-signing scaffold (inert until certificates are provisioned) and non-fatal FFF staging on Windows build hosts.
- Migration-runner hardening and box deploy web-asset assembly.
Jul 17, 2026
Your phone now stays current on its own. The Mac publishes your usage to Continuum Cloud every minute, so the iPhone Usage tab paints instantly on open and keeps showing your spend even when the Mac is asleep or unreachable. On top of that, your other computers become workers — a Windows or Linux desktop signed into the same account can take on sessions offloaded from your Mac, with its workspaces mirrored so the work lands in the right place. Plus a cross-platform Download hub, a full iOS widget lineup, Chat surfacing every orchestrated sub-agent, and a batch of Mac and chat reliability fixes.
Features
- Your iPhone Usage tab stays live on its own. The Mac now syncs an age-downsampled analytics snapshot to Continuum Cloud every 60 seconds under your account, and the iPhone falls back to it whenever the Mac is unreachable — with a local cache so Usage paints instantly on cold open instead of waiting on the Mac. (#1147)
- Offload sessions to your own Windows or Linux desktop. A Continuum desktop app signed into the same account now registers as an offload host, so your Mac can hand sessions to it and get them back — with the desktop’s workspaces mirrored through the Go agent so files resolve to the same place on both machines. (#1145)
- A single place to download every client. The site gains a multi-platform Download hub that points you at the right Continuum build for Mac, Windows, Linux, iOS, and the CLI. (#1146)
- A full iOS widget lineup. New home-screen and Lock Screen widgets mirror the Mac Usage tab, so your spend, limits, and activity are a glance away on your phone. (#1137)
- A faster Code composer. The Mac Code composer opens with file-attach available directly, so you can pull a file into the prompt without extra steps. (#1140)
- Authenticate GitHub in Settings. GitHub sign-in moved to Settings instead of interrupting you at worktree creation, so setting up a new worktree no longer stops to ask you to log in. (#1135)
Fixed
- iPhone analytics no longer wait on the Mac. The Usage tab stops sitting on “No spend yet” until you open the Mac’s Usage tab — the daemon now activates analytics on demand, and the live poll skips re-downloading unchanged data. (#1147)
- No more double transcripts or worktree freezes on Mac. Claude no longer writes a duplicate transcript, and creating a worktree no longer freezes while spawning. (#1144)
- Land back in the app after signing in on the web. Completing device authentication now opens the signed-in web app directly instead of leaving you on a bare confirmation. (#1142)
- Every sub-agent shows up in the transcript. Orchestrated runs now surface each sub-agent’s activity in both the Mac and web transcripts, so nothing runs invisibly. (#1141)
- Follow-ups to Claude queue safely. Sending another message while Claude is mid-turn now queues it reliably instead of racing the in-flight response. (#1138)
- Cleaner “Start new session.” Starting a new session after interrupting a tool call no longer resends the original prompt. (#1136)
- Wide metric tables render compactly. Chat now lays out wide metric tables without blowing out the message width. (#1139)
Under the hood
- Windows and Linux desktop installers now build and publish through a dedicated CI workflow, with a Windows Go-build and
.debpackaging fixes so the cross-platform binaries link and install correctly.
Jul 16, 2026
Continuum now runs beyond the Mac: native Windows and Linux desktop apps with full Code-workbench parity, a cross-platform
continuum CLI/TUI, and a bundled Go agent. Settings gains a complete provider-authentication manager — see who you’re signed in as, sign out, re-authenticate, or edit API keys per provider — and app-owned credentials are stored once and reused across your devices and background refreshes. Plus Code terminals now open as real login shells, and Grok renders its full activity timeline in Chat, Code, and Cowork.Features
- Continuum on Windows and Linux. A native desktop app for Windows and Linux with full Mac-desktop parity: system tray, managed daemon lifecycle, loopback auth, and all ten Code-workbench rows — terminal resize, checkpoints, worktree rename, session export, GitHub review comments, the keyboard shortcuts legend, Cmd+; sub-chats, the scheduler, a rich Markdown/image/PDF document viewer, and pop-out windows. Ships alongside a cross-platform
continuumcommand-line interface and TUI backed by a lightweight Go agent. (#1057) - Manage provider authentication in Settings. A new provider identity panel shows which account each provider is signed in as, with a persisted reveal/blur toggle, and gives every provider its own Sign out, Log in / Re-authenticate, edit API key, and Disconnect controls for both built-in and custom providers. (#1134)
Fixed
- App-owned credentials are reused across devices and background refreshes. Claude and OpenCode credentials are stored in Continuum’s device Keychain after the first connection and preferred for background polling, session setup, and remote-host installation — so routine usage refreshes stay non-interactive instead of repeatedly reopening an external key manager. Only definite authentication failures are rejected; newer sign-ins are preserved through stale responses and across relaunches. (#1130)
- Code terminals open as real login shells. Terminal tabs — the tab strip, the right review pane, and multi-pane
+— now launch a plain login shell in the session’s working directory (with an enriched PATH so GUI-launched shells still find Homebrew tools) instead of an agent process, and show a home-relative path bar and subtitle. Panes are labeled Shell / Shell 2 / … (#1129) - Grok shows its complete activity. Compatible Grok CLIs route through the ACP transport so Chat, Code, and Cowork render tool calls, command output, edit chips, progress prose, and final replies, with exact provider-session continuity preserved across app relaunches. Older CLIs keep the existing fallback. (#1131)
Under the hood
- Sturdier cloud-box release pipeline. Per-dev-database passwords validate independently, and gaps found during the 0.63.0 box deploy are closed. (#1132, #1133)
Jul 16, 2026
Cloud sessions can now run straight from a GitHub repository — connect an account, pick an authorized repo, and Continuum spins up a managed cloud worker with short-lived, repository-scoped credentials, no local Mac worktree required. Code gets a dedicated live To-dos tab, Continuum Voice keeps running in the background with Action Button and Dynamic Island controls, and the Watch swipes between full provider limit pages. Plus a wide sweep of Mac reliability fixes: accurate animated worktree diff counters, sturdier session recovery, and dependable Grok sends, paste, and stop behavior.
Features
- Run Cloud on a GitHub repository. Turn on Cloud, connect a GitHub account, and choose any authorized repository instead of depending on a local Mac worktree. Private repositories run in managed cloud workers with short-lived, repository-scoped credentials for clone, push, and pull-request creation — tokens rotate as sessions start or wake and are never written into Git config or command history. Cloud startup stays fail-closed until GitHub access and the managed daemon are ready. (#1124, #1125)
- A live To-dos tab in Code. Code sessions now have a dedicated To-dos tab before Plan, showing an ordered checklist whose pending, active, completed, blocked, and failed states update as the model works. Claude, Codex, Grok, Antigravity, and ACP-backed models all publish the same provider-neutral checklist, and the Plan tab renders the full Markdown plan document separately from execution to-dos. (#1127)
- Continuum Voice in the background. Dictation keeps running when you leave the app, with Action Button and Dynamic Island controls, a Live Activity showing recording state, and a stop control that ends recording from anywhere. Finished transcripts insert at the keyboard or fall back to the clipboard. (#1123)
- Swipe through provider limits on Watch. The Watch app swipes between full provider limit pages, each with its own identity and persistent page selection, and complications drop providers you removed on iPhone. (#1122)
Fixed
- Worktree diff counts are accurate and animated. Addition and deletion totals in the Code sidebar tick independently with a quick counter animation (instant under Reduce Motion), and badges now measure the final working-tree snapshot against its default-branch point — so staged or unstaged rewrites and undos are never double-counted. Untracked, binary, encoded, and symlink files follow Git’s own diff rules. (#1128)
- Sturdier session recovery. The Mac session registry reconciles its JSON snapshot against SQLite on launch, replaying newer receipts over stale snapshots without dropping snapshot-only sessions, keeping failed writes dirty for retry, and never erasing privacy-delete evidence early. (#1121)
- Reliable Grok sends and queued prompts. Grok sessions start a second message or Create PR by resuming their exact provider session (surviving an app relaunch), queued prompts dispatch the moment the provider yields even while background work keeps a session streaming, and startup failures now surface the real CLI error. (#1118, #1119)
- Stop and Send-now work mid-flight. An explicit Stop or Send-now resolves a held completion locally instead of failing with “Couldn’t interrupt the current run” while a Claude turn waits on background work. (#1116)
- Composer input fixes. Shift-Return inserts exactly one newline at the caret, and Command-V pastes normally in Mac Chat, Cowork, and Code instead of opening the voice transcriber — conflicting shortcuts repair themselves on launch. (#1112, #1114)
- Notifications follow the live theme. Notifications, handoff toasts, and Cowork alerts switch between light and dark palettes while they remain visible. (#1113)
- Code setup surfaces are clearer. The Code review pane opens from an empty home, a managed repo without a worktree, or a sessionless worktree and floats over constrained windows; connected Codex providers show ready / needs-auth / needs-install state; and Claude’s Re-authenticate refreshes usage and credentials cleanly. (#1110, #1111, #1115)
- Quieter, cleaner chat. Claude context compaction renders as a lifecycle event rather than a message, and phone↔Mac pairing is now email-account only. (#1126, #1117)
Under the hood
- The cloud backend can run entirely on the owned GCP box. Postgres-backed adapters can replace Neon and Cloudflare KV/Durable Objects for relay, APNS, and workspace state, with sliding session tokens capped by an absolute lifetime and strict tenant scoping for workspace mirrors. Cutover is a separate, feature-flagged rollout. (#1125)
Jul 15, 2026
Grok CLI usage finally shows up in Analytics — with exact token counts and true API-equivalent spend — and Code sessions get their smart one-to-five-word sidebar names back even after Claude rotates its sign-in token. Plan approval is now a single, uncluttered surface. On iPhone, Continuum goes freemium: a free account lands straight in Chat, with Code and Cowork available on upgrade.
Features
- iPhone freemium. Continuum on iOS no longer gates the whole app behind a paywall — a free account lands directly in Chat with a set of ready-to-use models. Code and Cowork show an in-tab Subscribe prompt with a dismissible Pro sheet, and multi-account renames (for example “Default” → “Work”) now carry across Mac and iPhone usage. (#1100)
Fixed
- Grok CLI usage now shows up in Analytics. Plain
grokcommand-line sessions contribute authoritative per-prompt token totals and API-equivalent dollar spend — including cached input and output — while your SuperGrok quota stays a separate gauge. Histories refresh incrementally, survive file replacement or truncation, and pricing uses current xAI rates with the 200K long-context threshold applied only to genuine single requests (no overstated spend on multi-call aggregates). (#1108) - Smart Code session names come back after a token refresh. New Code sessions recover their semantic one-to-five-word sidebar and worktree labels when Claude rotates its sign-in token, instead of falling back forever to the first words of your prompt. Title generation retries only after a genuine authentication rejection and never overwrites a newer account you just signed into; your custom-renamed sessions are always preserved. (#1109)
- One place to approve a plan. The inline plan card in the transcript is now read-only — Approve & run and Comment live only in the composer tray, so there’s a single, unambiguous surface for acting on a plan instead of duplicate controls. (#1107)
Under the hood
- The primary Claude usage gauge keeps refreshing even when a second account is present or needs re-authentication, and relay reconnects no longer force-bounce a socket that’s still connecting or freshly connected. (#1100)
Jul 14, 2026
Spend numbers you can trust: token costs now price Anthropic’s five-minute and one-hour cache writes separately — with the rate that was actually in effect when the usage happened — and the Mac, Continuum Cloud, and the web dashboard all agree to the cent. Chat gets a big one too: Broadcast can now Synthesize the replies from every provider into one cited answer. Plus clickable links, configurable App Shot trigger keys, and a batch of transcript fixes.
Features
- Broadcast → Synthesize. After every selected provider finishes replying, one click compiles their answers into a single cited response — each claim traceable to the exact reply it came from — using the summarizer model you picked in the composer. Continue from the synthesis and it becomes a normal solo chat with just your question and the answer. (#1086)
- Pick your App Shot trigger keys. The both-modifiers screenshot chord is now configurable: both Options (default), both Commands, or both Shifts — switchable in Settings and applied live, with no accidental fires while another modifier is held. (#1091)
- Links in chat are actually clickable. PR links and bare URLs in replies open in your browser on click, show the hand cursor, and reveal the full destination on hover. Only http/https/mailto links are ever openable. (#1088)
Fixed
- Token spend is now correct across every surface. Anthropic 5-minute vs 1-hour cache writes are priced at their real rates (1.25× vs 2×), historical usage uses the rate active at the time (including Sonnet 5’s launch promotion, which expires Sept 1), OpenAI cached input is validated before discounting, and a corrupt pricing download can no longer wipe known rates. Mac analytics, Continuum Cloud, and the web dashboard now compute the identical dollar figure. (#1092)
- Background sessions keep their activity. Switching a session between providers (Claude → Codex/Grok/Cursor) no longer risks losing chat activity or leaking a stale feed into the new provider’s transcript. (#1093)
- Slash-skill messages show what you typed — once. Invoking a skill now renders one user bubble with your exact
/skill argumentstext and one SKILL.md attachment, instead of duplicate provider payloads and stray markdown attachments. Two invocations of the same skill no longer merge into one. (#1090) - Finished sub-agents say Done. Synchronous Agent runs that returned their full report no longer sit on “Started” with a running timer forever; only genuinely backgrounded agents stay on Started until they finish. (#1089)
- Interrupted turns show how long they ran. A turn you stop (or that errors) now displays its elapsed time in the footer, even though there’s no final answer to copy. (#1085)
- Slash-skill search ranks by name match. Typing
/revputsreviewabove skills that merely mention “review” in their description — exact name, then prefix, then contains, then description-only. (#1087) - Less noise beside the live timer. The redundant “thinking…” caption next to the active-turn data stream is gone; the stream and timer are the working-state cue. (#1084)
Under the hood
- Xcode project generation is now byte-deterministic across worktrees (a checkout-named group was churning the project file on every machine), and duplicate idempotency-key handling releases its reservation before an early-exit response so a fast retry can’t see a phantom “in flight” conflict. (#1091, #1086)
Jul 13, 2026
Agentic sessions get legible: every sub-agent now shows up in the transcript with a provider tag, replies format as Markdown while they stream, and plan approvals surface a proper Approve tray. Under the hood, subscriptions go tiered with a prepaid usage balance, and loading spinners are gone for good.
Added
- Every sub-agent is visible in the transcript, tagged by provider. A Fable or agentic session that fans out workers used to hide most of them behind the “N tool calls” fold once a turn completed. Sub-agent rows now stay above the fold with a provider dot — terra for Claude, graphite for Codex — and the worker’s role (Explore, Plan, Codex, …), while routine Bash/Edit/Read calls keep collapsing as before. Parallel fan-outs render as distinct rows, each with its own live packet-stream and timer. (#1082)
- Tiered subscriptions with a prepaid usage balance. The Continuum plan now renders as a weekly usage gauge — just another provider on the Usage tab (Mac, iOS, web). Free tier runs OSS chat (DeepSeek + OpenRouter free models) with frontier models shown greyed with an upgrade path; paid tiers unlock everything. Power users can prepay a usage balance that covers overage past the weekly budget at pass-through model cost — no markup — with an optional auto-top-up when the balance runs low. Paid tiers resolve from the actual Stripe price, so higher plans get their full budget. (#1079, #1083)
- Project logos in the Code sidebar. Repos that carry a favicon or AppIcon in their checkout now show that mark on the sidebar automatically instead of a letter monogram. A custom image still wins; session-row badges match the header glyph. (#1077)
- Loading is the orange data-stream everywhere. Every indeterminate spinner wheel across Mac, iOS, Watch, and the web dashboard is replaced by the terra-cotta packet stream — the product’s one loading language. Determinate progress bars stay. (#1081)
Fixed
- Streaming replies format live. Bold, headings, inline code, links, and lists render as tokens arrive instead of showing raw
**/##syntax until the turn settles — including paused “continue” turns, on every chat surface. (#1080) - ExitPlanMode shows its Approve tray again. Plan-mode sessions no longer strand on “Waiting for result…”: when the agent proposes a plan, a sticky Approve & run / Comment tray appears above the composer, and the session is never force-cancelled while it waits for you. Comment rejects the plan, prefills your refinement, and unblocks the turn. (#1078)
- Second Claude accounts keep their gauges live. Adding a second Claude subscription no longer sticks at STALE forever: truncated setup-tokens are rejected loudly at login, a throttled usage endpoint falls back to rate-limit headers without spending tokens on healthy accounts, and the poller stops hammering a rate-limited account so it can recover. Codex shows one clean weekly-limit line. (#1076)
Jul 12, 2026
A focused Usage-tab cleanup: the two redundant full-width Grok panels are gone, so the tab reads tighter and Grok’s numbers live where every other provider’s do.
Fixed
- The Usage tab drops its two redundant Grok panels. The full-width Grok token strip that sat between the provider gauges and the Analytics band, and the separate “Grok activity” breakdown below the spend charts, are both removed — they duplicated totals already shown in the gauges, the spend charts, and the Tokens-by-model table. Grok now appears in the gauge column and ranks in Tokens-by-model like Claude, Codex, and the rest, so the tab is shorter and less repetitive with no loss of information. (#1065, #1066)
Jul 12, 2026
Continuum Cloud sessions arrive: run agents on zero-setup managed cloud runners straight from the dashboard. On the Mac, chat and the sidebar get a batch of polish — real paragraph breaks in streamed status lines, one copy button instead of two, hover-to-archive for Cowork tasks, a data-stream cable that actually stops when the turn ends — and Personal Claude accounts now heal (and honestly report) their sign-in state.
Features
- Continuum Cloud serverless sessions. Start a cloud session with zero setup — GCP-managed runners spin up on demand from the dashboard, with managed active-minute and concurrency limits per org. (#1042)
- Archive Cowork tasks from the sidebar. Task history rows now show the same hover-to-archive control as the Code sidebar, with an Undo toast in case a click was accidental. Archiving the open task safely closes its thread. (#1063)
Fixed
- Personal Claude status heals the moment you re-log in. Pasting a fresh setup-token now revives the usage gauge and flips the status dot immediately — no restart, no permanent “Re-log in” button on healthy accounts. A rate-limited check no longer paints a working account as dead. (#1059)
- “Re-log in” appears exactly when it should. If a saved token is actually rejected by Anthropic, the row now turns red and offers the one-click re-paste — instead of showing green with no way to fix it. Transient network blips still stay quiet. (#1064)
- Agent status lines get real paragraph breaks. Grok and other delta-streaming agents no longer glue status sentences together across tool calls (“…done.Looking…”) — each status renders as its own paragraph. (#1061)
- One copy button per answer. Completed assistant answers showed two hover copy controls (the footer chip and a body glyph); the footer is now the single affordance. Your prompts and error bubbles keep their hover-copy. (#1060)
- The data-stream cable stops when the turn ends. The Code sidebar animation no longer keeps running after a model finishes — the chat’s own turn state is now authoritative, with the coarse session status used only while a background session’s store is evicted. (#1062)
- Settings copy cleanup. OpenCode Go no longer carries a “Recommended” badge and Z.ai Coding’s subtitle drops the “via OpenCode” attribution. (#1058)
Under the hood
- The signup → payment funnel is now measurable end-to-end: the dashboard fires a server-side
payment_completedevent when a subscription activates, native Google Analytics events carry real session identifiers (GA was silently dropping everything), and the marketing site reports pageviews. (#1056) - Relay endpoint tests now assert the branded
relay.continuumcode.aiprimary that went live 2026-07-11, clearing the last latent red in the shared suite.
Jul 11, 2026
Pairing gets radically simpler: signing in is pairing. Your Mac and iPhone find each other through your account — no QR dance — and the sub-agent timer, a stuck sleep banner, and a batch of copy polish round it out.
Features
- Sign in on both devices and they just connect. Your Mac self-enrolls when you sign in, your iPhone and iPad appear as controllers automatically, and every device on your account shows up in one list you can name, approve, and revoke. Each controller still asks for a one-tap approval on the Mac the first time it connects, so the trust boundary is unchanged. QR pairing moves to an Advanced fallback for signed-out or offline setups. (#1036)
- More resilient connections. Devices now report an honest online/offline heartbeat, the relay proactively reconnects on wake and network changes and rotates endpoints if one is unreachable, and push notifications ride the account mesh. (#1036)
- The sub-agent working indicator matches the rest of the app. A running sub-agent now shows the same terra-cotta data-stream and timer as the session footer, instead of a mismatched spinner. (#1027)
Fixed
- The “Mac sleeping soon” banner clears on wake. It could latch during a low-battery sleep and then stick around at 100% battery; it now releases the moment the Mac wakes. (#1021)
- Correctly-added models stop being flagged as mispriced. The model-onboarding checker now resolves pricing exactly the way the running app does, so a valid model (e.g. Grok 4.5) verifies instead of false-failing. (#1030)
- Cleaner copy throughout. Em dashes are replaced with plain hyphens across every user-facing surface for a more natural read. (#1035)
Under the hood
- First full test run of the relay resilience layer (endpoint rotation, per-IP edge rate limiting, a bootstrap init-race fix) — relay + cloud suites green; a real reconnect bug (the pairing bundle re-sent after a frameless drop) was caught and fixed. (#1036)
relay.continuumcode.aiis live as the primary relay endpoint, with the previous origin kept as an automatic fallback.
Jul 11, 2026
A big one: live Plan↔Code switching without losing your turn, background sub-agents you can actually see, steered messages that never vanish, and a long list of chat-reliability fixes. Continuum also moves to a single 250) across every platform.
Features
- Switch Plan↔Code mid-turn without interrupting the session. The toggle now switches the agent’s mode live - no respawn, no “Request interrupted”, and the plan you approved lands in the right-pane Plan section. Claude’s AskUserQuestion forms render as a labeled, answerable tray right in the transcript. (#1019)
- Background sub-agents stay visible. Agents launched in the background keep their transcript row animated until they actually finish, then fold in the real completion time and summary - a turn waiting on background work no longer looks stopped. (#1014)
- Sub-agent rows show what each agent is doing. Running sub-agents display their task summary (like the worktree sidebar) instead of a generic “Explore”, and settled runs show an honest Done / Failed / Stopped status instead of a frozen timer. (#1001, #1002)
- One subscription, every platform. Continuum is now 250/year - sign up on the web, or subscribe on iOS, and the whole app unlocks everywhere. You still pay your model providers directly, with no markup. (#1018)
- Snappier with many worktrees open. Continuum now keeps upcoming session transcripts warm once you’re past ~7 open sessions, so switching to the 8th, 9th, 10th tab stays instant. (#1008)
Fixed
- Steered messages no longer disappear. Sending a follow-up mid-turn keeps your message as a real bubble in the same turn - the timer keeps its anchor, and “Request interrupted” noise is gone. A wedged Codex send now times out cleanly in 20s instead of hanging forever. (#1016, #1017)
- Your first message in a new worktree is durable. If provider attach or worktree setup fails, the opening message stays visible, editable, and retryable - never silently dropped. App Shot and attachment sends spawn optimistically with an instant provisional row. (#1009, #1007)
- Sends self-heal. Transient network blips show a “Reconnecting…” chip and retry safely in the background - the same message is never delivered twice. (#1016)
- New Code tabs no longer inherit a sibling’s transcript when opened in the same worktree. (#1006)
- User prompts stay visible during long background tasks instead of scrolling out of retention. (#1004)
- Plan mode stops popping permission cards for ordinary tools - research quietly, approve once. The ExitPlanMode card is a clean “Approve & Code / Keep planning” choice. (#1005, #999)
- Transcript polish: compact JSON blobs render as readable markdown, empty “Thinking” rows are gone, duplicate Codex commentary and duplicate mode rows are deduped, and hover-to-copy is back on every settled message. (#1011, #997, #998, #1000)
- Sidebar diff counts stay current - no more stale badge after edits. (#1003)
- The Create PR button updates the moment the agent’s PR lands (the confetti was right; the button now agrees). (#1015)
- Codex usage gauges stop locking on STALE when the provider jitters its reset timestamps. (#1012)
- Usage from Continuum-managed worktrees is attributed to the parent repo in Analytics instead of “Other”. (#1013)
- Clearer connection language - user-facing “daemon” wording replaced with plain language throughout. (#1016)
Under the hood
- The full Mac unit suite is green headless again (124 stale failures triaged to 0) with three real product bugs fixed along the way. (#996)
- Hardened Stripe + Apple billing rails with signature-verified webhooks and org-scoped subscriptions. (#1018)
Jul 10, 2026
A big quality release: twenty fixes and features focused on making the Code tab honest, resilient, and pleasant - queued messages that never get lost, sessions that survive app restarts gracefully, and a sidebar that does what you expect when you archive work.
New
- Rich session-completion notifications. Instead of a bare “a session finished,” notifications now say which agent, in which repo, how long it ran, and lead with the same first-message summary you see in the sidebar. (#991)
- Attachment chips on queued messages. A queued message with an image or file now shows the same chip you see in chat - icon and filename - instead of a vague “1 attachment.” (#988)
- Archiving selects the neighbor, not the top. Archiving a worktree now takes you to the worktree directly below it (or above, if it was last) instead of yanking you to the top of the sidebar. (#989)
- Inherit a sibling tab’s context. The option to seed a new Code draft tab with a previous tab’s transcript digest is back. (#975)
Fixed
- Restarting the app no longer strands your sessions. Resumed sessions reconcile their pending messages properly - no more eternal “Sending…” on a message that actually went through, and the transcript shows what you typed instead of internal hand-off text. While a restarted session spins back up you’ll see an honest “Resuming session…” instead of silence. (#994)
- The daemon can no longer be permanently disabled by accident. A leftover test flag could keep the Sessions daemon off across every launch and reboot, with only a misleading “restart” hint. The app now self-heals that state on launch. (#993)
- Sending looks like your message, instantly. The sending state renders as the exact settled message bubble - no dashed placeholder, no spinner chrome, no layout jump when the model starts. (#990)
- Queued messages survive quitting from any tab. Queued sends persist to disk the moment you queue them and flush on quit even when you’re on the Chat or Usage tab. Restored messages wait for your confirmation - nothing auto-fires. (#986)
- Steering Fable mid-turn works. “Send now” on a queued message while a Claude SDK turn runs now interrupts cleanly and delivers your steer as a fresh turn instead of stranding the composer. (#984)
- Claude turns collapse when they finish. Completed turns no longer stick expanded due to a stale state race. (#987)
- PR confetti fires every time. The celebration no longer disappears for most PRs - and the review pane’s Create PR button celebrates too. (#985)
- Turn timer shows total time. The working timer no longer resets to zero after background-task waits, on Mac and iPhone. (#992)
- Archived branches stay archived. An archived branch could resurrect as an un-hideable sidebar row; it now disappears and stays gone (still visible under Archived). (#983)
- Sidebar diff badges stay fresh. The +N −M badge no longer strands stale on idle worktrees. (#980)
- Worktree rows always clickable. Rows for repos under ~/Downloads (and other protected folders) no longer go dead after you click away. (#978)
- Bursts of edits collapse to one row. A model shaving a file line-by-line no longer floods the transcript with a dozen identical “Edited” rows - they group into one expandable row. (#979)
- Sidebar cable animates only after you send. New sessions no longer pulse like they’re working before the first message. (#977)
- Re-log in on secondary accounts. Secondary Claude/Codex accounts always offer a re-login button, so an expired session token is a one-click fix. (#976)
- Codex sessions start reliably. A working Codex install could be reported as missing when the app was launched from the Dock (thin PATH); the preflight probe now checks the same way sessions launch. (#974)
- Create PR feedback stays in its worktree. The transient “Queued” state no longer bleeds onto other worktrees’ title bars. (#982)
Under the hood
- Session-completion notification copy is built by a shared, unit-tested helper. (#991)
- The sending bubble is a single shared component between chat history and the pending strip, so the two can’t drift apart again. (#990)
- Test tooling now disables the daemon with a process-scoped environment variable instead of a persisted flag. (#993)
Jul 9, 2026
A focused follow-up to 0.58.0.
Fixed
- Cursor models are back in the picker. The model picker’s Cursor tab showed only “Cursor default / Auto” - the live cursor-agent model list never loaded. When you’re signed in to Cursor, the picker (Mac and iOS) now shows your account’s real model list; signed-out Macs keep the safe behavior that never touches Cursor’s Keychain on startup. (#971)
Jul 9, 2026
Eighty-six PRs land as one release, and speed is the headline: a top-to-bottom performance overhaul keeps the Mac app fast even with many worktrees and sessions active at once - switching, scrolling, and typing stay instant where they used to drag. On top of that, Grok 4.5, a Claude Fable usage bar, iOS new-session attachments, and a deep reliability campaign on session history, archive, and delete.
New
- Grok 4.5. The new model is available across the model pickers on Mac, iOS, and web, with same-day pricing so Grok usage and cost show up correctly everywhere. (#918)
- Claude Fable usage bar. A dedicated Fable quota bar sits under the all-models weekly/monthly bar in the Mac Usage tab, the menu-bar popover, and the iOS usage surfaces - including scoped-weekly Fable limits. (#897)
- Attach files when you start a session on iPhone. The iOS new-session composer gets a plus menu with separate Photos/Videos and Files options; selected items show as removable thumbnail chips and upload into the session with the first prompt. (#884)
- Your paired Mac shows by name. The iOS New Session device picker now labels the Mac with its actual host name instead of a generic “This Mac.” (#885)
Fixed
- Sessions you start from your phone now actually run. A phone-created Code session sends your typed prompt as the first turn - the transcript and working state appear instead of an empty tab. (#883)
- Session history, archive, and delete are reliable under load. A deep hardening pass closed a class of races in how sessions are stored, mirrored, and paired - write-ahead archive receipts, atomic delete with sibling de-pairing, and resync that reliably publishes - so archived sessions no longer resurrect and history stays consistent even when mutations overlap. (#905, #915, #917, #919, #920, #925, #926, #927, #928, #929, #930, #931, #935)
- No more duplicate completions or notifications. Duplicate Codex transcript completions, duplicate edge feedback, and duplicate “done” notifications are all gone, and follow-up sends into a live transcript stay stable. (#888, #889, #892, #893)
- The Grok gauge stays live. Grok CLI tokens now refresh through xAI’s OIDC endpoint instead of reading as a terminal auth failure, so the gauge no longer sticks at 0; usage parsing also tolerates xAI’s weekly-style billing shape. Grok headless turns complete cleanly. (#894, #903)
- Codex live usage refreshes correctly when you toggle the provider on, and the Codex usage gauge parses its rate-limit data reliably. (#896, #908)
- Cleaner Mac Code transcript. The completed-turn preview chip is gone so final responses stay focused, and safe URLs render inline as tappable blue links. (#887, #898)
- iOS surface polish. The live “Working…” footer now matches the Mac’s steady elapsed-time stream, the inert session progress bar is gone, and chat broadcasts feel snappier. (#886, #891, #895)
- Mac Code cleanups. The composer action button no longer wraps awkwardly, Code sidebar branch-count badges are correct, a duplicate paired Mac no longer appears in the device mesh, sent prompts clear out of the queue tray, the new Code tab starts in the right first-send state, and uploaded repo icons sit cleanly without tinted backgrounds. (#899, #900, #901, #902, #904, #890)
- Custom-provider settings errors are surfaced in the logs instead of being silently discarded, making misconfigured providers easier to diagnose. (#921)
Faster
This release rebuilds the hot paths so the app stays responsive with lots going on at once.- Multi-worktree scaling. Stores are now event-driven with row-level publishes, and the subprocess storms that fired on every change are gone - the single biggest win for many active worktrees. (#906, #943)
- Instant interactions. Client interactions apply immediately, hidden tabs stop opening sockets and running polls, and off-screen sessions go dormant so only the active transcript is mounted and rendering. (#909, #938, #945)
- Lighter transcripts and chat. Web transcripts virtualize, chat streams apply only changed slices as deltas across every stack, and markdown/transcript rendering caches its converted output instead of re-computing it. (#907, #913, #936, #937, #954, #958)
- Faster usage, pricing, and analytics. Usage pollers share scheduling and coalesce keychain reads,
/usagefan-out sits behind a snapshot cache, pricing and aggregation hot loops are memoized, and analytics ingests JSONL incrementally instead of re-walking everything. (#933, #940, #941, #944, #946, #951, #955) - Snappier composer and terminal. Attachment staging and clipboard encoding moved off the main thread, the FFF/git index cache is bounded, and the PTY/terminal feed gates subscriptions and stops copying chunks. (#932, #960)
- Broad hot-path cleanup. O(n²) projection fixes, JSONL tail rework, timer elimination, coalesced fan-out, cached sidebar and RepoIndex scans, de-duplicated PR polling, and leaner Go agent streams round out the sweep. (#910, #911, #912, #939, #942, #947, #948, #949, #950, #952, #953, #956, #957, #959, #961, #962)
Under the hood
- Security hardening. Broker dependencies are pinned, broker HMAC requests are replay-protected, and Vite is bumped. (#922)
- Reliability fixes and coverage. A final review pass cleaned up remaining slice-level findings across the composer, pollers, web, and broker paths; the AntigravityLSP client now drains subprocess output before exit; and the Python sidecar gained real test coverage (19% → 96%). (#916, #963, #964, #965, #966, #967, #968, #923)
- Motion language. A cross-platform motion token set and micro-interaction catalog now document the app’s animation behavior. (#914)
Jul 8, 2026
Seventeen PRs land as one coordinated release: plan approvals that actually flip to Code mode, a faster Mac, a multi-account iOS Usage screen, and a web app rebuilt to match the Mac.
New
- Multi-account on iOS Usage. Work/Personal-style account pills appear under the provider selector when you have secondary accounts; the hero gauge and limits follow the selected account, matching the Mac. (#880)
- Cowork connector browser sign-in persists. Each app connector gets a durable browser profile, so web sign-ins survive relaunches and updates - kept fully separate from agent-usable credentials, with token paste still available. (#876)
- Branded Mac download.
mac.continuumcode.ainow redirects to the latest signed DMG, and the website’s download buttons use it everywhere. (#881) - Web app, rebuilt. continuumcode.ai/app now matches the Mac app’s Quiet Black chrome - Mac-parity titlebar with Chat | Cowork | Code, a new Organisations tab, and frictionless onboarding. (#851)
Fixed
- Approved plans switch to Code mode. Approving a plan respawns the session with Code-mode permissions instead of a lower prompting tier, and the composer pill reflects it - including for managed/SDK providers, which now surface “Approve & run” even without structured plan text. (#873, #871)
- Your prompt no longer vanishes mid-send. The pending message stays visible while the provider streams (the “create pr” disappearing-text gap), and titlebar Create PR always targets the active session without flashing collapsed turns open. (#878, #874)
- Code sidebar cleanups. First-turn sessions get compact 1-5 word titles again (manual names always win), and archived branches no longer resurrect from lingering drafts or terminal tabs. (#869, #872)
- Custom project icons sit cleanly on the black sidebar - no tinted pill behind uploaded logos, and flat corner fills are knocked out on import without eating dark logo art. (#868)
- Codex live usage refreshes on cadence for ChatGPT-auth accounts even when local session files are quiet. (#875)
- Chat attachment paths with spaces are preserved and no longer leak bogus artifact chips. (#870)
- iOS spend chart opens on a single tap, even on narrow 90-day bars. (#879)
- iOS Settings shows your signed-in email, backfilled automatically on older installs. (#867)
- iPhone visitors to the website get “Install iOS app” (App Store) instead of a Mac DMG they can’t use. (#877)
Faster
- Mac session switching is instant-feeling with 8-12 active sessions: hidden tabs stop burning CPU on animations, the transcript pool is right-sized with recovery, and composer/header state moved onto narrow slices. (#882)
Jul 7, 2026
Cowork connectors grow up: a self-hosted app catalog replaces manual middleware endpoints.
New
- Connector app gallery. Settings → Connectors is now an app catalog on Mac and iOS. Connect GitHub, Slack, Notion, and Salesforce by pasting a token - no middleware account, no “endpoint + API key” plumbing.
- Self-hosted connector servers. Each connected app runs its own bundled MCP server on your execution host (your Mac or a Linux box), and OAuth happens directly with the provider - your tokens never transit a third-party service.
- ⌘2 jumps to Cowork. The Cowork surface gets a dedicated keyboard shortcut alongside Chat and Code.
- Coming soon: Gmail, Google Calendar, Google Drive, Linear. OAuth scaffolding is in place; these light up once client registration completes.
Jul 7, 2026
Two big new surfaces - Cowork and Org Control - plus multi-account usage, iOS-first onboarding, and a batch of accuracy and performance fixes.
New
- Continuum Cowork. A new third surface between Chat and Code for folder-scoped agent work. Point Cowork at a folder and it gets durable project memory plus scheduled or on-demand runs that work autonomously - writes inside the folder auto-approve, while deletes, commands, and anything outside the folder ask first. Runs on your Mac or a Linux box, works with all six providers, and shows a live run timeline on Mac, iOS, and web.
- Org Control (V2). An enterprise control plane for teams: provision provider workspaces and keys, watch usage against per-team and per-member budgets, and automatically enforce limits (block, unblock, and model policy) when a budget trips. Comes with an admin dashboard for people, teams, budgets, subscription requests, and analytics.
- iOS-first onboarding. Your account is now the spine and devices attach to it, so you can sign in on iPhone first and add your Mac (or other devices) afterward without re-doing setup.
- Multi-account Claude usage on Mac. A second Claude account now shows a working secondary gauge and a combined account card, and the primary account self-heals if it gets into a bad state.
Fixed
- Historical Opus pricing. Older Claude Code sessions that used Opus 4.6 or 4.7 now price correctly instead of showing $0 - including after a pricing refresh.
- Analytics parity with ccusage. Token and cost numbers line back up with
ccusage. - Composer drafts persist. In-progress text in the composer is saved and restored instead of being lost.
- Renamed account labels in Usage. The Usage view now reflects account labels you’ve renamed.
Under the hood
- Smoother with many sessions. Running ~15 concurrently active sessions is now viable, via hot/cold stores, coalesced disk I/O, and tail-only transcript commits.
- Serverless + device-mesh hardening. Fixes for a broker connection leak, a revoke race, wake-fallback, mesh reconnect, and safer serverless account deletion.
Jul 4, 2026
A hotfix for a launch crash in 0.57.17.
Fixed
- Fixed a crash on launch introduced in 0.57.17. The voice-dictation overlay was pre-warmed too early during app startup, which could abort the app before its window appeared. The pre-warm now runs a moment later, so Continuum launches cleanly. If you updated to 0.57.17 and it wouldn’t open, this release fixes it.
Jul 4, 2026
A new provider, a rebuilt website, one-tap device setup, and a batch of connect + voice reliability fixes.
New
- Z.ai Coding is now a first-class provider. Connect your Z.ai GLM Coding Plan key in Settings → Providers and Continuum tracks GLM-5.2, 5.1, 5-Turbo, and 4.7 across chat, the Code launcher, live 5-hour + weekly quota gauges, and its own analytics column. If the account has no active Coding Plan, the gauge tells you that instead of showing a dead bar. (#843)
- One-tap device setup. Adding a Linux or Mac device (Settings → Devices) now runs a single setup script on the target and streams live, step-by-step install progress right in the app - naming the failing step if anything goes wrong. (#845)
- A rebuilt continuumcode.ai. New homepage plus Product, Solutions, and Pricing pages, with cursor-driven feature demos. (#846)
Fixed
- OpenCode “Connect usage meters” actually connects. When there’s no readable browser login it opens the opencode.ai sign-in for you, and when the import is blocked it now tells you exactly what to fix - grant Full Disk Access (with a one-tap Settings link) or allow the Keychain prompt - instead of silently re-opening the browser in a loop. (#842, #848)
- Reliable Left Option voice trigger. The overlay pill appears the instant you press Option, voice still works in-app when Accessibility isn’t granted (with a one-time heads-up), and rapid gestures no longer race or leave a stuck pill. (#850)
- Grok menu-bar popover now shows the monthly “Credits used” bar, matching the Usage page, instead of a “credits unavailable” tile. (#849)
- “Add your first repo” empty state in the Code sidebar when it’s genuinely empty, instead of a misleading “no matching sessions” filter message. (#847)
Jul 3, 2026
A reliability fix for the local agent server, so a port conflict is diagnosable instead of a dead end.
Fixed
- Clearer errors when the agent server can’t start. If a port in the daemon’s range is taken, Continuum now names the process actually holding it - almost always a second copy of Continuum (e.g. a leftover Xcode debug build) - with a “quit it and relaunch” hint, instead of a generic “all ports in use.” It also distinguishes a genuine port conflict from other network failures rather than blaming the ports. (#841)
Jul 3, 2026
A small housekeeping release: the in-app Privacy and Terms links now point to their new home on continuumcode.ai.
Fixed
- In-app Privacy and Terms links now open on continuumcode.ai. The consent and legal links in the app point at the rehosted support, privacy, and terms pages on the marketing site. (#839, #840)
Jul 3, 2026
A polish release for the Code composer and session sidebar - slash commands and mentions are easier to use, the live data-stream animation stays smooth with many sessions, and a batch of Mac and iOS composer fixes.
Fixed
- Slash-command turns read as
/command, not the whole skill doc. Invoking a skill like/pr-landnow shows just/pr-landin the transcript instead of the entire expanded skill document. (#838) - The slash / @-mention picker no longer covers what you’re typing. The completion palette opens directly above the composer input, so the text field stays visible while you pick a skill or mention. (#838)
- Shift+Enter breaks the line in the composer instead of sending. (#837)
- The sidebar data-stream cables keep animating with many active sessions, and stay live while a session is monitoring or waiting. (#835, #836)
- Smooth, calm scroll to the newest message on send and when creating a PR. (#834)
- iOS composer cleanup: usage vendors fold into a single toggle, the stuck stream cable is fixed, and session controls moved to the composer. (#833)
- User bubbles no longer show Claude Code’s synthetic image-coordinate hint. (#832)
- The first-send prompt shows while the worktree is still provisioning, so you’re not staring at an empty pane. (#831)
- Cleaner chat history: mid-turn narration collapses and completed turns fold to the final answer by default. (#830)
- iOS: autocorrect no longer mangles composer typing. (#829)
- ⌘V image paste works again after switching sessions. (#828)
- Live, light repo drag-reorder in the Code sidebar that can reach the bottom of the list. (#827)
Jul 2, 2026
The web dashboard becomes a full peer of the Mac app - you can now run Code, Chat, Usage, and Settings in the browser against a connected host - plus Sonnet 5 and Fable 5 in the model picker and a couple of Mac fixes.
New
- The web dashboard is now a 1:1 peer of the Mac app. Code, Chat, Usage, and Settings all work from the browser, driving a connected host (your Mac or a Linux agent) over the same end-to-end encrypted relay the apps use - a live
#/codeworkbench (sessions, transcript, diff/PR, terminal, model picker, host skills),#/chat(solo + multi-model broadcast),#/usage(live gauges + spend history), and#/settings(devices, workspaces, providers, diagnostics). A heterogeneous fleet is gated by what each host actually serves, so the browser only offers what the connected host supports. (#826) - Sonnet 5 and Fable 5 in the model picker. Both new Claude models are now selectable across the model pickers. (#825)
Fixed
- Generated workspace display names are correct. Auto-generated workspace names no longer render with the wrong label. (#823)
- No more empty release-notes panel in the updater. When Continuum is already up to date, the updater popover no longer shows a blank “what’s new” panel. (#822)
Jun 30, 2026
Remote-device setup reliability: you can now minimize a running device install and keep working, Antigravity setup installs the right CLI, and a couple of setup failures that could leave a Linux host half-configured are fixed.
New
- Minimize a device setup while it installs. The “Add Tailscale device” / “Add via SSH” setup sheet now has a Minimize button - the install keeps running in the background as a compact progress dock in Settings → Devices that you can click to re-expand, instead of forcing you to keep the modal open the whole time. The dock clears itself automatically once the device finishes connecting. (#820)
Fixed
- Antigravity setup installs the correct CLI. Setting up Antigravity (the
geminiprovider) now installs Google’s officialagyCLI via its downloader and launches it with the right headless flags, replacing the retired@google/gemini-clipath that no longer works. (#819) - Remote setup no longer fails on token capture or runtime permissions. Two setup failures are fixed: the Mac setup terminal no longer aborts with a
read-only variable: statuserror (so it correctly shows your command’s result and the “click Done” prompt), and the Linux agent’s runtime state directory is now writable by the unprivileged service user, soagent-tokenis created and the service comes up instead of silently failing. (#818)
Jun 30, 2026
Mobile companion polish: the iPhone Chat and Code tabs work better against your paired Mac - single-provider chats now open as a live Solo conversation, the Code tab lists your repos even before any sessions exist, and disabled providers no longer flash into the model pickers.
Improved
- iPhone Code tab shows your repos right away. The Code tab now lists every managed repo with a tappable “New session” row even when none of them has a session yet - tap one to open the composer already pointed at that repo. The Mac daemon refreshes its repo list on request so a freshly-launched Mac populates the list immediately. (#816)
Fixed
- Single-provider chats work on iPhone. Picking exactly one provider in iPhone Chat now opens a live Solo conversation (it creates the session and streams the reply) instead of being rejected with “pick at least two providers to broadcast.” Follow-ups continue in the same thread. (#817)
- Disabled providers stop flashing into the iPhone model pickers. Providers you’ve turned off (e.g. Antigravity) no longer appear for a moment in the mobile model/provider pickers before your Mac’s catalog loads - the picker now respects your enabled set from the start. (#815)
- iPhone broadcasts carry full provider metadata. A one-tap broadcast from iPhone now sends each provider’s full slot info (vendor identity, billing provider, and default effort) instead of a stripped-down provider/model only, and surfaces the Mac’s actual error if a broadcast can’t start. (#814)
Jun 30, 2026
A reliability-focused release: new sessions start instantly and stop double-sending, the Code/Plan toggle and Grok follow-ups work again, and Code mode now always runs with full permissions. Plus the foundation for per-device host trust.
New
- Code mode always runs with full permissions. A Code session now launches in bypass-permissions mode for every provider, regardless of per-repo trust - there’s no separate “trust this repo for autopilot” gate to clear before Code can run unattended. Plan mode still never auto-approves, so Plan continues to prompt before acting. (#810)
Improved
- New Session “Create” dismisses instantly. Clicking Create on the New Session card now hands off to a live, animating session row in well under a quarter-second instead of blocking the card while the worktree provisions and the CLI cold-starts - and your typed prompt is delivered as the first turn the moment the session is ready. (#808)
- Progress notes read like the conversation. Codex/Conductor progress notes now render inline as normal model messages instead of being tucked behind a collapsed “N progress notes” disclosure, so you can follow an agent’s commentary as it works. (They’re still excluded from copy/answer selection.) (#809)
Fixed
- New Claude sessions stop double-sending. Starting a new SDK-backed Claude session and sending your first message no longer renders the “You” bubble twice - the transcript now shows your message exactly once. (#805)
- Code/Plan toggle works on SDK Claude. Toggling a default SDK-backed Claude session between Code and Plan (or changing model/effort) now reconfigures it through the agent harness instead of failing with a bogus “Could not locate agent binary on PATH.” Starting a new session in Plan also correctly launches approval-prompting rather than silently bypassing. (#812)
- SDK-Claude turns no longer false-complete or stall out. When a Claude turn spawns a sub-agent or a
run_in_backgroundcommand that goes quiet on the wire while still working, the turn no longer ends early (“session done”) or force-fails (“turn went unresponsive”) - active background work keeps the turn alive. (#811) - Grok follow-ups go through. A follow-up to a completed Grok turn is no longer spuriously blocked by stale turn state; a genuine mid-turn steer is still correctly rejected. (#807)
- PR + Merge controls stick when you toggle back to a worktree. Switching away from a worktree session and back no longer flashes “Create PR” for a branch that already has one (which risked a duplicate PR) - the PR number and Merge button now appear immediately from cache. (#806)
Under the hood
- Account-Mesh host trust foundation. Groundwork for per-device approval/revoke of which devices may control a Mac host, plus iOS host discovery - fail-closed and entirely flag-gated OFF, so behavior is unchanged in this build. (#813)
Jun 29, 2026
A big batch of ways to run and connect agents: SSH/Termius hosts, serverless burst capacity, subscription sign-in, GitHub/Linear integration, and a Mac-parity iPhone composer.
New
- Connect any SSH or Termius host as an execution host. Continuum discovers your SSH config / Termius hosts, installs its agent over SSH, and pairs the device onto the relay - so you can run agents on a remote Mac or Linux box without manual setup. SSH is used only for bootstrap; sessions route over the relay. (#802)
- One-tap subscription sign-in for Claude & Codex. Provider setup now defaults to subscription OAuth - Claude via setup-token, Codex via device auth - and rejects API-key-only auth so you can’t accidentally bill the wrong account. Your credentials seed automatically to your connected mesh devices. (#801)
- GitHub and Linear, inside Continuum. Paste a GitHub or Linear issue URL as your first prompt and Continuum pulls the issue in as context, then links the generated branch and PR back to the source issue. Line comments in the diff/PR pane post to GitHub as review comments, with replies threaded inline. (#803)
- Cloud Burst - serverless execution hosts. Add short-lived Vercel or Cloudflare sandboxes as on-demand execution hosts, with bring-your-own / managed quota caps and automatic idle and hard-cap stops. (#800)
- iPhone composer reaches Mac parity, plus one-handed review. The iOS session composer gains inline model/effort, Plan/Code and Local/Worktree controls, file + photo attachments, slash-command and @-mention palettes, prompt history, and send/stop. A new one-handed review mode in the Diff tab lets you Comment, Approve, or Send Back right on the changed-file list and line-level diff. (#804)
Under the hood
- Hardened the new SSH and credential-seeding paths (host-validated issue-URL parsing with no arbitrary fetches, relay tokens that never leave your Mac, fail-closed credential push) and fixed a cross-platform build issue so SSH host discovery compiles on iOS.
Jun 28, 2026
Connecting remote devices over Tailscale is faster, more reliable, and now fully one-click for Macs.
New
- One-click remote Mac setup. When you connect a Tailscale Mac that doesn’t have Continuum yet, setup now downloads, installs, and starts it for you automatically - then continues registration. No more manual install step before connecting a Mac. (#798)
- Instant “Add Tailscale device” picker. The picker opens immediately and scans your tailnet in the background, and the device list is cached so reopening is instant. Tailscale lookups are also time-bounded, so a stuck or slow Tailscale never hangs the sheet. (#797)
Fixed
- More reliable remote-device installs. Visible installs run over a real terminal with the Done button enabled only once the command actually finishes, so you can’t dismiss setup mid-install. Linux setup now fails with clear, actionable guidance if a device never returns its pairing token, instead of silently stalling. (#799)
Jun 27, 2026
Security hardening ahead of an external pentest, a smarter model picker, a batch of Mac polish, and a refreshed website.
New
- The model picker remembers your Favourites. When you’ve starred models, the picker now opens straight to the Favourites tab instead of the full list. (#786)
- A polished, on-brand Mac installer. The downloaded DMG now opens to a styled installer window that matches the app. (#791)
Fixed
- Cleaner workspace state. Archived and deleted sessions are pruned from a workspace’s active list, so stale entries no longer linger in the sidebar. (#788)
- Composer + repo-header polish. The new-session ”+” matches its sibling icon buttons, and the composer’s create action carries the right state. (#787, #790)
Under the hood
- Pre-pentest security hardening. A four-wave adversarial security audit (Claude + Codex, ~150 findings triaged) closed P0/P1/P2 issues across the Mac/iOS/Watch apps, the Continuum Cloud backend, and the Linux agent - SSRF, symlink-follow, injection, trust-gate, and denial-of-service fixes - ahead of an external penetration test. No user-facing behavior changes. (#793–#796)
- Refreshed website + one-click Mac download. continuumcode.ai gets a cleaner landing page, docs served at /docs, web analytics, and a direct “Download for Mac” button. (#781, #784, #785, #789, #792)
Jun 25, 2026
A big UI refresh for starting and managing sessions, a new hands-free dictation mode, and a wave of chat polish and reliability fixes.
New
- A floating New Session composer. The ”+” button (and ⌘N) now opens the “What should we build?” composer floating right over your current session, instead of a separate sheet - pick Plan/Code, effort, and a one-click Worktree or Local toggle inline, or just hit Create for an empty session. ⌥-click ”+” still does the instant quick-spawn. (#779)
- Choose Worktree or Local per new session. New sessions remember a per-repo (and global) default for whether to run in a git worktree or directly in your working copy, with optional file-copy across devices. (#775)
- Universal voice transcriber. Dictate straight into whatever app is focused - runs on the on-device Parakeet model by default. (#773)
- Refreshed Code-tab and Devices look. Code-tab tabs are now clean primary-nav pills, the Devices settings sheets match the rest of the app, and the repo-header ”+” lines up with its sibling buttons. (#780, #778, #777)
Fixed
- Long-running tool calls aren’t killed anymore. The harness watchdog no longer cuts off a live, long-running tool call mid-execution. (#770)
- Instant worktree switching. Switching from one worktree to another is now immediate, with cleaner single-row selection in the sidebar. (#772)
- Add Tailscale device actually connects. The Add Tailscale device tray no longer gets stuck, and “Install & connect” completes. (#771)
- Smoother Grok steering. Queued follow-up steer messages now have a clearer, less confusing flow. (#769)
- Chat polish across the board. Consistent transcript theming (#768), stable scrolling (#767), correct toast colors in light mode (#766), and better formatting of large messages (#764).
- Codex commentary stays tucked away. Codex’s running commentary is kept behind the transcript disclosure instead of cluttering the thread. (#765)
- Cleaner transcript lifecycle. Polish to how transcripts wind down and how PR completion is reflected. (#776)
Under the hood
- Cross-platform analytics. Mixpanel, Google Analytics, and PostHog are now wired across Mac, iOS, Watch, and web. (#774)
- Email device-mesh foundation (off by default). Groundwork for an email-based device control plane, flag-gated off for now. (#763)
Jun 23, 2026
A fast follow-up: snappier chat, richer Markdown formatting, and - most importantly - a fix so existing installs can find updates again.
Fixed
- Auto-update works again. The in-app updater was checking an address that went offline when the project moved, so shipped 0.57.3 builds couldn’t find new versions (it surfaced as “Appcast signature failed”). It now polls the live update feed, so existing installs will pick up this and every future release.
- No more workbench crash on the Code tab. A non-finite or corrupt saved pane width could crash session selection; pane widths are now sanitized and a failed state-save degrades gracefully instead of taking down the tab. (#762)
- Checkpoints work in a brand-new repo. Creating a checkpoint in a repository that has no commits yet now seeds an initial commit cleanly - without consuming or disturbing your staged files. (#761)
Improved
- Faster chat, especially long conversations. Chat transcripts mount faster and repaint less when you open a session or scroll, so large conversations feel responsive instead of heavy. (#762)
- Richer Markdown in chat. Field-group values, inline data (paths, metrics, IDs, status chains), and tables now render as clean structured chips and grids instead of raw text, with more comfortable line spacing throughout. (#761)
- Copy gives you just the answer. Copying an assistant reply now returns the final answer text only, dropping progress-note preambles. (#761)
- Background indexing respects protected folders. File indexing and search stay out of your Desktop, Documents, and Downloads, avoiding surprise system permission prompts. (#761)
Jun 22, 2026
A feature-and-reliability release: drive interactive remote sessions across your devices, open any Markdown doc from a new Documents sidebar, watch OpenCode and secondary-Claude usage as real gauges, cut token spend with Ponytail, and a long run of fixes that keep busy Code sessions, Claude background turns, voice, and paste behaving.
New
- Interactive remote sessions across your devices. Start and drive three-way remote agent sessions over Tailscale - your Mac, iPhone, and a remote host stay in sync inside one live session. (#756)
- Continuum Cloud - org usage. A new org usage platform on continuumcode.ai gives teams a shared view of agent usage and spend across accounts. (#757)
- Open
.mdand other docs from anywhere. A new Documents section in the sidebar lets you open and read Markdown (and other docs) from any folder on your Mac - not just files inside a workspace. (#753) - OpenCode usage as first-class gauges. OpenCode Go usage now shows up alongside your other providers as live gauges in the menu bar, the popover, and the Usage tab, so you can see spend at a glance. (#754)
- Ponytail token-saver in Save Costs. Settings → Save Costs adds Ponytail, a token-saver that trims what gets sent to the model to bring your costs down. (#749)
Improved
- Honest secondary-Claude status and live usage. A secondary Claude account now shows a true signed-in state with its own live usage gauge, instead of misreporting as logged out. (#755)
- Busy Code sessions stay smooth. Running 5–10 active Code sessions at once stays responsive, and the oldest session keeps reporting its liveness correctly rather than going stale. (#743)
- Claude background turns stay live. Turns kicked off by background tasks no longer appear to stall - the live turn keeps streaming until it’s actually done. (#742, #748, #744)
- Quieter token handoff for secondary Claude accounts. A secondary Claude account’s terminal now receives its token without triggering a keychain permission prompt every time. (#750)
- Markdown tables render in chat. GitHub-flavored Markdown tables in chat now render as real tables instead of raw pipes. (#758)
- Provider auth and launch fail closed. Provider auth, launch, usage, and spawn now fail closed instead of falling back silently, so a misconfigured account never bills the wrong subscription. (#758)
Fixed
- Paste images consistently across Code and Chat. Pasting an image from the clipboard now works the same way in both the Code and Chat composers. (#741)
- Voice no longer hijacks ⌘V; double-tap restored. Pressing ⌘V to paste no longer starts voice input, and the Left-Option double-tap to trigger voice works again, with a cleaner voice-permission prompt. (#738, #745)
- Cleaner terminal and command output. Spawn-grid terminals stop garbling full-screen (TUI) output, and Codex shell actions are broken out individually instead of being hidden behind a “Ran N commands” roll-up. (#746, #740, #735)
- Draft reply hidden until you send. A draft’s replacement session no longer flashes on screen during the first send, and hiding the draft tab now works regardless of what’s selected. (#747, #752)
- Code-tab model chip stays in sync. The model chip on the Code tab now matches the runtime when you spawn or switch sessions. (#736)
- Clear message when Grok steer is unavailable. Instead of failing silently, Continuum now tells you when steering Grok isn’t available. (#739)
Jun 20, 2026
A small reliability patch: your default preferences now survive app updates, and healthy secondary Claude accounts stop showing as logged out.
Fixed
- Your Preferences stop resetting after an update. Settings → Your Preferences (your default provider, model, effort, and Plan/Code choice) no longer reverts to defaults after an app update - the values now persist reliably across launches, and anyone already affected has their settings restored automatically on next launch. (#733)
- Secondary Claude accounts read as logged in when they are. A healthy secondary Claude account (added via
claude setup-token) no longer shows a red “logged out” dot in Settings → Providers. Account liveness is now checked against the same endpoint the usage gauge and the spawned CLI already use, so a working account shows green and re-login correctly flips it. (#734)
Jun 20, 2026
A Code-tab responsiveness release: sending feels instant, long live sessions no longer freeze mid-turn, worktrees switch on the first click, and session names settle in with a smooth animation - plus account re-login and a batch of sidebar/composer polish.
New & improved
- Sending feels instant. Hitting send in the Code tab now clears the composer immediately and flows your message into the transcript as a “Sending…” bubble that settles into the real turn once it lands - no more echo in the composer chrome. (#731)
- Animated session names. When a session’s name resolves from its git branch to the AI-summarized title, it now cross-fades smoothly instead of snapping. (#728)
- Re-login without re-adding. Logged-out secondary provider accounts (Settings → Providers) now show a one-click “Re-log in” button that re-authenticates the existing account in place. (#730)
Fixed
- Long live sessions no longer freeze mid-turn. On long Claude sessions the transcript could stop updating while a turn was streaming; the live projection is now incremental, so the body keeps rendering no matter how long the session runs. (#732)
- Worktrees switch on the first click. Clicking a Code-tab worktree while an agent was editing it used to need a second click; it now registers on the first. (#729)
- New-session pane stays full-height. The chat pane no longer collapses (floating the composer toward the center) while a new session is provisioning. (#727)
- Pointing-hand cursor on “Add project.” The Code sidebar’s Add-project (+) button now shows the pointing-hand cursor on hover, matching its neighbors. (#726)
Jun 19, 2026
A polish + persistence release: your model favorites and provider defaults now survive updates, branches auto-name themselves from your first prompt, and a batch of Code/Chat transcript and composer fixes make the surfaces calmer to read and use.
New & improved
- Auto-named branches from your first prompt. Starting a session now summarizes your opening prompt into a clean branch title instead of leaking raw attachment paths into the name. (#712)
- Your provider defaults survive updates & reinstalls. Model, effort, mode, and per-provider preferences now persist across app updates and the bundle-id rename, so you don’t re-pick them after every upgrade. (#714)
- Starred model pairs persist. Favorite (starred) model pairs and their ⌘1–9 / drag order are remembered across restarts and updates - and you can now star custom and partner models too. (#724)
- New-tab shortcuts in Code. ⌘-click the + to open a provider/agent new-tab menu, and use ⌘T / ⌘⇧T to open tabs from the keyboard. (#725)
Fixed
- Grok usage gauge works again. The Grok gauge no longer sits stuck at 0% after recent Grok CLI changes - it now reads usage directly from billing. (#711)
- Attachments stay in your message. Composer attachments remain inline in the user bubble until the turn completes, instead of jumping to a separate footer strip mid-turn. (#713)
- No blank second line on short prompts. Short plain-text prompts like “continue” render as a single line instead of a two-line bubble with an empty tail. (#715)
- Every transcript-rail tick is hoverable. Hover and click hit-bands on the right-edge turn rail are now separate, so z-order can’t steal hover from a tick. (#716)
- Cleaner session tabs. Code session tabs show the title only - the branch subtitle has been removed. (#717)
- Cleaner edited-file rows. The grey panel background behind edited-file transcript rows is gone. (#718)
- No sideways jump when expanding commands. Expanding a command disclosure no longer slides the transcript horizontally. (#719)
- Steady edited-file hover preview. The edited-file hover diff preview no longer flickers or blanks when sweeping quickly across file chips. (#720)
- Mic next to the +. The Chat composer’s mic button now sits next to the + button. (#721)
- Archive toast names the branch. Archiving a worktree session now shows the branch name in the confirmation toast. (#723)
Jun 19, 2026
A Code-tab speed + transcript-readability release: session switching is now near-instant, completed turns read in chronological order with thinking and tools in place, and the new-session sheet is model-first - plus a batch of sidebar/composer polish.
New & improved
- Near-instant Code-tab session switching. Toggling between recently-open sessions is now a sub-250ms visibility flip instead of a full transcript rebuild - a small pool of recent sessions stays mounted, so switching no longer feels frozen. (#707)
- Readable completed transcripts. A finished turn now renders its full body in chronological order - thinking one-liners and grouped tool runs shown in place - instead of collapsing everything into a single “Ran N commands” capsule. Collapsing is still available per-turn, and a tap expands any “Thinking” row to the full reasoning. (#703)
- Model-first new-session sheet. The Mac new-session sheet is redesigned around picking your model first (Model → Plan/Code → Project), with an Advanced setup-script disclosure. (#706)
Fixed
- Every transcript-rail tick is hoverable. The right-edge turn rail’s hit targets used to overlap, so only the newest tick responded to hover/click; each tick now has its own band, so you can hover and jump to any prompt in the session. (#708)
- Backgrounded sessions show a visible stream. A session still streaming on a row you’ve clicked away from now shows a clearly-visible grey data-stream cable instead of an almost-invisible whisper. (#709)
- Attach is first in the Chat composer menu. The Chat-tab composer’s ”+” menu now lists Attach first. (#704)
- Polished first-run onboarding + Code sidebar. The onboarding sheet and Code sidebar now match the design system (Tahoe tokens/spacing), and empty states fill the pane. (#705)
- Clearer empty Code sidebar. The no-repos subtitle is now the tighter “Add your first repo.” (#710)
Jun 19, 2026
A Code-workbench polish release: sub-agents get their own transcript row, attachment cards show per-file diff stats, and a batch of chat/composer fixes - plus the multi-provider chat-surface unification wraps up.
New & improved
- Sub-agents render as their own transcript row. Spawned sub-agents (Claude
Task/spawn_agent) now appear as a dedicated Agent row - agent glyph, spawn description, and a live elapsed timer - instead of being buried inside the grouped “Ran N commands” disclosure. (#697) - Diff stats on composer attachment cards. Each tracked file you attach now shows its working-tree diff as
+N(green) /−M(red), so you can see at a glance how much a file changed before you send. (#698) - Repo ”+” honors your defaults. The Code sidebar’s repo + quick-spawn now uses your Settings → Your Preferences provider, model, effort, and Plan/Code mode instead of a hardcoded Codex/Plan default. (#690)
Fixed
- Instant stream + timer on send. The chat footer’s data-stream animation and “time active” readout now start the moment you hit send, in lockstep with the sidebar, instead of lagging a render behind. (#691)
- Stable, smooth Mac transcript scrolling. Both Mac chat transcripts now render eagerly, so the scrollbar stops jumping and resizing as you scroll - and the whole conversation renders, not just the tail. (#692)
- Attachments with spaces in the path open correctly. Clicking a composer attachment whose path contains a space (like “Application Support”) now opens the real file instead of a dead “file no longer exists” tab. (#693)
- Turn-rail hover preview stays on-window. The Code-tab turn-rail hover preview no longer clips off the right edge of the window, and now shows the prose of the turn instead of the raw
@path. (#694) - Calmer command palette. The ⌘K and slash (
/) command palettes use a neutral selection highlight - the brand accent is reserved for the sessions sidebar and your own messages - and skill-source tags are now greyscale. (#695) - Stuck-turn watchdog + consistent Code mode. Code sessions reliably run with approvals bypassed across every provider, a watchdog recovers stuck turns, and tab branch subtitles stay consistent. (#696)
Under the hood
- Completed the multi-provider chat-surface unification: the normalized event store and shared materializer are now always-on, and the strangler-fig feature flags have been retired. (#699, #700, #701, #702)
Jun 18, 2026
A chat-consistency release: every provider now renders through one shared chat surface, plus a unified titlebar, snappier turn state, and a batch of Code-workbench and iOS fixes.
New & improved
- One consistent chat surface across every provider. Claude, Codex, Cursor, Grok, and OpenCode now render through a single shared renderer with unified turn state, so messages, tool runs, and “thinking” rows look and behave the same no matter which model you’re talking to. Claude’s normalized segmentation is now on by default. (#683, #684, #685, #686, #687, #689)
- Unified Mac titlebar with Pair with iPhone everywhere. One full-width titlebar chip across Chat, Code, and Usage, with the “Pair with iPhone” button now available on all three tabs. (#674)
- Turn duration in the Code footer. Completed turns now show how long the turn actually took (e.g.
1m 23s) instead of a vague “time ago” stamp. (#681) - Snappier Stop ↔ Send. When a turn ends, the composer button and activity indicator now flip immediately instead of lagging up to ~100ms behind. (#675)
- iOS keyboard & chat polish. Swipe down anywhere to dismiss the keyboard, the Chat empty-state logos now mirror the Mac (only the providers you’ve selected), and the Settings → Sessions section is tidied up. (#679)
- Calmer sidebar streaming. The worktree stream animation now flows behind the diff counters instead of stopping short, with no dead patch under the badges. (#662)
Fixed
- Model picker no longer strands mid-provisioning. Switching model/provider while a worktree is still provisioning now converges the live runtime to your pick, so the chip and what’s actually running can’t disagree. (#676)
- Sidebar rows stop reshuffling. Code-sidebar worktree rows now hold a stable creation order instead of jumping around on every model turn. (#677)
- Create PR button stops lingering. The Code titlebar no longer keeps offering “Create PR” after a PR already exists, and recovers cleanly from a transient daemon hiccup. (#680)
- Claude session retry recovers. A failed Claude session now resumes from its live session id, falling back to a transcript hand-off when needed, instead of losing the thread. (#682)
- Consistent Code permissions. Code sessions now reliably run with approvals bypassed across every provider, so a Code chip can’t decay into permission prompts. (#678)
Jun 18, 2026
A Code-workbench release: a collapsible sidebar, a working Group / Sort / Status funnel, and noticeably smoother transcript scrolling - plus appearance polish.
New & improved
- Collapsible Code sidebar. Collapse the left sidebar to reclaim space - a toggle in the workbench tab row docks it, and it hover-peeks back in as a floating overlay while collapsed (your choice persists). The window also resizes genuinely narrow now; the old 1280px minimum is gone. (#671)
- Filter & sort the Code sidebar. The Group by / Sort by / Status funnel is now live for managed sessions: Status filters branches (Active / In Review / Done), Sort by reorders them (Recency / Created / Name), and non-Repo Group by shows flat session groups. (#673)
- Smoother transcript scrolling. Long Code-tab transcripts now project incrementally off the main thread, so scrolling stays smooth at 60Hz while a reply streams. (#669)
- Clearer theme names. The Appearance theme picker now reads simply Dark and Light. (#672)
- Refined send button. The composer’s send button is now a light primary circle that reads as one continuous control with the stop button, and renders correctly in light mode. (#668)
- Calmer top tabs. Removed the data-stream animation from the Code top tabs (the sidebar still shows live stream activity). (#661)
Jun 18, 2026
A stability release. It rolls back the 0.51.0 transcript-rendering rewrite - which introduced input and scrolling regressions - and fixes two chat issues on top of the restored, stable rendering.
Fixed
- The message composer works again. Rolled back the 0.51.0 transcript-scroll change that could leave the Chat and Code message box unclickable and occasionally blank the transcript after fast scrolling. Input and transcript rendering are back to the stable 0.50.0 behavior. (#663)
- Steadier Codex turns. A long-running Codex turn no longer flickers between expanded and collapsed, or fires repeated “session done” notifications, while the model is still thinking. (#665)
- Code mode stays full-permission. After an app restart or an idle period, Code-mode sessions no longer pop “Run command?” approval prompts - Code stays at maximum permissions, matching the pill (an explicit Accept-edits choice still asks, as before). (#666)
Jun 17, 2026
A big chat-and-transcript release: full session history, categorized action groups that collapse to a clean summary at the end of a turn, Codex diffs with clickable file links, tinted message bubbles, reliable cross-provider model switching, and a wide sweep of iOS Usage and Settings improvements.
New & improved
- Full chat history in the Code/Sessions tab. Opening a session now loads its entire transcript instead of just the tail - scroll up all the way to the first turn. (#652)
- Categorized action groups + tidy end-of-turn collapse. While a turn runs, tool calls group into labeled rows (commands, reads, writes, search, …); once the turn finishes it collapses to a one-line summary you can expand on demand. (#640, #637)
- Codex diffs & clickable file links. Codex
apply_patchedits render as colored diffs, andfile:linereferences in the transcript resolve to real, clickable links that open the file. (#646) - Cross-provider model switching actually switches. Toggling a running session to another provider’s model (e.g. Codex → Claude Opus) now respawns on the new model instead of silently no-op’ing. (#645)
- Warm tint for your messages. Customer message bubbles get a subtle terra-cotta wash so your turns stand apart from the assistant’s, on Mac and iOS. (#649)
- Both Claude accounts stay current. A tied second Claude account’s usage gauge is no longer starved by the primary’s polling. (#638)
- Plan / Code pill toggles reliably. Clicking the permission pill flips and persists the mode (and never silently grants full bypass on a later model/effort change). (#644)
- Live active-session indicator. The data-stream “cable” on the focused worktree lights from a model-owned signal, so it tracks real streaming state. (#643)
- iOS catches up to your Mac. Model trays (chat + new session) show exactly the vendors you’ve enabled on the Mac; the Usage tab now surfaces every enabled provider plus dedicated OpenCode and Grok strips. (#647, #651)
- Anonymous usage sharing (optional). Continuum can report aggregate token and cost totals - no prompts, file paths, repo names, or account details - to help improve it. On by default, with a one-tap opt-out in Settings → Your Preferences. (#650)
- Settings & polish. Settings buttons and segmented controls align to the design system, Save Costs moves under Workspaces, queued follow-up actions read as clickable, and notifications are branded “Continuum.” (#648, #641, #639, #642)
Jun 17, 2026
A Code-tab and Chat polish release: inline diffs with colored file chips, near-real-time PR status in the sidebar, scrollable spawn terminals with native colors, smoother sending, and a broad sweep of transcript and composer fixes.
New & improved
- Inline diffs & colored file chips. Edited-file chips in the transcript are now color-coded by file type and expand to an inline diff preview on click - see exactly what changed without leaving the chat. (#626)
- Live PR status in the sidebar. Per-branch PR state (open / draft / merged / closed), review buckets, and repo PR counts refresh in near-real-time from GitHub instead of going stale. (#635)
- Scrollable spawn terminals with native colors. Spawn-grid terminal tiles now scroll properly (TUIs and scrollback) and render native ANSI colors that match your system appearance. (#629)
- Spawn grid reclaims space. Closing a spawn tile compacts the grid to the next layout so the remaining live terminals grow to fill the pane, and tiles redraw cleanly on resize. (#631, #633)
- Smoother sending in Chat. Your message appears the instant you send with a clean pending state, and the transcript stays pinned to the latest as you send. (#630, #625)
- More responsive Code tab. The active worktree stream lights up immediately on send, the loading animation starts the moment you hit send, and workspace tab controls show a pointer cursor on hover. (#619, #618, #621)
- Small touches. A hover affordance on the Create PR titlebar control so it reads as clickable. (#627)
Fixes
- Transcript rendering. Fixed a blank transcript after selecting a worktree, a blank-bottom scroll-recovery glitch, and the placement of the hover-to-copy button on your own messages. (#623, #634, #624)
- Composer. HTML drag-and-drop attachments work again, and the redundant “expand editor” action was removed from the tools menu. (#620, #628)
- Chat grouping. Model-response command runs now group cleanly into a single row. (#622)
- Under the hood. Per-turn tool-id dedup in the ACP path is now bounded to a single turn. (#632)
Jun 16, 2026
A big workbench release: a new Save Costs control center for token/cost reducers, a cleaner Settings layout, snappier streaming that shows your turn the instant you send, and a wide sweep of Code-tab, composer, and permission-banner fixes.
New & improved
- Save Costs settings. A new Settings section to cut token spend: enable the Headroom local-compression proxy and the Caveman token reducer per provider, see live install/status, and one-click install the tooling. Estimated savings are shown up front. (#615)
- Streaming shows up the instant you send. Send a prompt and the active turn - the streaming footer and elapsed timer - appears within a frame, before the server confirms, instead of after a beat. Worktree streams light their status immediately too. (#609, #606)
- Settings that read as one surface. The Visual toggles now use the same trackless segmented style as the primary nav, Skills is promoted to its own top-level Settings group, and provider preferences persist across restarts. (#598, #597, #602)
- Tidier Code-tab transcript. Consecutive Bash/shell tool runs collapse into a single “Ran N commands” group, attachments show their real generated filename instead of a type label, and session/branch summaries read cleanly even when your first message is attachment-only. (#612, #607, #610)
- Faster Codex startup. Opening a Codex workspace returns immediately and brings the agent online in the background instead of blocking on the handshake. (#608)
- Small touches. A save tick when you rename an account, and a hover affordance on the composer’s tools menu so it reads as clickable. (#601, #617)
Fixes
- Manual scrolling is respected while streaming. Scrolling up to read during a streaming response no longer yanks you back to the bottom; auto-follow resumes when you return to the latest. (#611)
- Permission banners reflect reality, live. The Accessibility grant for Voice + App Shots now flips the moment you grant it (no relaunch), the App Shots both-Option capture chord is fixed, and the Full Disk Access banner hides as soon as access is granted. (#599, #600, #604)
- Provider picker connect controls. The OpenCode provider picker’s connect + close controls are clickable again and render the right icons. (#603)
- Cleaner chat layout & formatting. Customer bubbles no longer tuck under the transcript rail, and an assistant’s final response is formatted without duplicated or run-together paragraphs. (#605, #614)
- PR state stays honest. A stale PR referenced earlier in chat no longer hijacks the session’s PR card, and the sidebar’s per-branch PR status icons stay current (open/draft/merged/closed). (#613, #616)
Jun 16, 2026
A small Mac fix release: hover-highlighted menus are clickable again, and the empty-state composer’s chip row sits centered under the box.
Fixes
- Hover-highlighted menus are clickable again. A decorative hover wash had started sitting on top of the menu it was highlighting and swallowing the click, leaving the Settings provider pickers, the sidebar “Add project” menu, and the composer repo picker dead once you hovered them. The wash no longer intercepts the click. (#596)
- A centered empty-state composer chip row. The repo / account / location chips beneath the empty-state composer now center under the box instead of being pinned flush-left and poking out past the box’s edge. (#595)
Jun 16, 2026
A broadcast + multi-provider polish release: focus a single answer in a broadcast, an effort tray that matches each provider, a quieter Code tab, and a daemon-pairing reliability fix.
New & improved
- Focus one answer in a broadcast. A new “I prefer this response” mode expands the column you like and tucks the others into tappable rails - fully reversible, and it never archives or changes your transcript. (#590)
- An effort tray that fits the provider. The reasoning-effort dial now offers only the levels a given provider actually supports (Grok no longer sees a “max” it would reject), and switching providers safely clamps your effort to a level that provider accepts. (#593)
- A clickable empty-state composer. The attach button and the repo/account/location pickers on the empty-state composer get a hover highlight and a pointing-hand cursor. (#589)
Fixes
- A quieter Code tab. Changing model, provider, or effort on the Code tab no longer pops a toast every time - the switch just happens. (#591)
- Pairing actually connects. The Mac daemon now binds its port for real (and falls back to a free one) before advertising it, fixing the case where a freshly paired session couldn’t reach the daemon - the “model not attached” symptom. (#594)
- Matching broadcast pill on iOS. The iOS broadcast model pill now matches the Mac multi-model pill. (#592)
Jun 16, 2026
A workbench-polish release: smoother streaming chat, branch names taken from your first prompt, a provider chooser for Land PRs, and a sweep of Settings and composer refinements.
New & improved
- Branch names from your first prompt. New Code sessions now name their worktree branch after what you actually asked for (a clean, git-safe slug of your first message) instead of a random city - and rename the live branch once you send, keeping the worktree path stable. (#588)
- Pick who lands your PRs. The Land PRs action gets a provider + model + effort chooser, so you can run it on Claude, Codex, Cursor, or any configured agent instead of always Claude. (#582)
- Smoother streaming chat. Transcripts now auto-follow the streaming reply with a coalesced glide instead of snapping on every token, and respect Reduce Motion. (#579)
- Transcripts come back after a restart. Code-tab chat history for harness sessions (Codex/Cursor/etc.) is restored on relaunch instead of opening blank. (#580)
- Settings that feel clickable. Every Mac Settings control gets a pointing-hand cursor and hover highlight, and the groups sidebar is compacted to a tidy icon + header. (#584, #577)
- A livelier jump-to-latest button. The jump-to-latest chevron gets a hover wash, a subtle lift, and a pointing-hand cursor. (#573)
Fixes
- Cleaner answer copy. Chat V2 consolidates the answer-copy controls down to a single bottom-left button per turn. (#581)
- Voice dictation lands in the right field. Dictating while Continuum is frontmost now pastes into the actual focused field, with a clipboard safety net if delivery can’t be confirmed. (#583)
- Search finds your words. Chat search now indexes the real message prose (not tool/metadata noise) and is hardened against odd characters. (#585)
- Steadier working indicator. The “working” indicator and elapsed timer stay up for the whole turn instead of flickering between tokens. (#574)
- Composer & transcript polish. The gutter tick no longer drifts onto your sent message, the turn rail packs into a tidy top-right stack, the mic reads as clickable, the titlebar pane toggle is a clean bare icon, and the empty-state placeholder now reads “Build something special.” (#572, #576, #575, #578, #586)
Jun 16, 2026
A workspace-polish release: App Shots get a global keyboard trigger, Claude can run on a new SDK runtime, the composer takes drag-and-drop, and assistant replies finally render as real Markdown - on top of a long list of Code-sidebar and chat fixes.
New & improved
- App Shots, reworked. Capture the window of whatever app you’re in by pressing both ⌥ Option keys - Continuum teleports forward and drops the shot into your prompt - with a guided Screen Recording permission wizard the first time you turn it on. (#546, #547)
- Selectable Claude SDK runtime. Claude sessions can now run on a new SDK/ACP runtime alongside the classic CLI, switchable from Settings. (#565)
- Drag-and-drop attachments. Drop files straight onto the composer to attach them to your prompt. (#554)
- Land PRs from the sidebar. A new repo-level “Land PRs” action spins up an agent to review and land your open pull requests. (#562)
- Rename anything. Right-click to rename spawn groups in the Code sidebar (#569), and rename any account tag - including “Default” - from a hover-pencil in Settings (#570).
- Markdown-formatted replies. Assistant answers now render as structured Markdown - headings, lists, quotes, and code blocks - instead of flat text, on both Mac and iOS. (#567)
- Archive keeps you in flow. Archiving the session you’re in advances to the next live session in the same repo instead of dropping you to an empty composer. (#561)
- Lower energy use. The Code tab pauses its live animations and streams while it’s in the background. (#560)
Fixes
- No more blank-until-scroll chat. Opening a session seeds the transcript immediately instead of showing an empty pane until you scroll. (#566)
- Steadier turn display. The active turn stays expanded while it streams and collapses to “Thought for…” only once it’s done. (#552)
- Cleaner Code sidebar. Session summaries are centered with the redundant branch subtitle dropped, summaries survive the first prompt, and active branch streams reattach reliably. (#551, #553, #555)
- Diff badges hold steady. Sidebar diff counts persist through transient git probe failures instead of blinking out. (#558)
- Correct usage account. Claude usage now syncs the right account’s token before polling. (#563)
- Composer polish. De-duplicated the end-of-turn copy button, kept the attachment hover bubble inside the chat edge, tightened activity spacing, fixed shortcut-override chord recording, and made the stop button more legible. (#564, #556, #548, #549, #550)
- Titlebar shows your PR. A created pull request now appears in the Code titlebar, and worktree branch naming is more reliable. (#559, #557)
Jun 15, 2026
A big workspace release: a new top-effort Ultracode mode for Claude, one-click Plan/Code switching with per-provider defaults, automatic retry of failed turns, and a Code-first tab layout - plus a security hardening pass across the agent runtime.
New & improved
- Ultracode effort mode for Claude. Claude sessions get a new top-tier “Ultracode” effort beyond Extra-high - maximum reasoning plus standing workflow orchestration - selectable from the effort chip on Claude-only sessions. (#536)
- One-click Plan ↔ Code, with your own defaults. The permission menu collapses into a single Plan/Code pill (Code grants full permissions and auto-trusts the repo), and a new “Your Preferences” section in Settings lets you set the default model, effort, and Plan/Code mode per provider. (#541)
- Auto-retry for failed turns. When a model response fails on a transient error, Continuum now retries it automatically with capped backoff and shows inline attempt cards so you can see what happened instead of a dead turn. (#542)
- Code-first tab order. The Mac tabs are reordered to Chat · Code · Usage · Settings, with ⌘1–⌘4 following the new layout. (#537)
- Copy a full answer in one click. A quiet copy-answer button now appears at the end of every completed turn across all chat surfaces. (#543)
- Turn-completion notifications. Continuum can notify you when an agent finishes its turn, with a toggle in Settings and tap-to-open routing straight to the session. (#544)
- A more useful transcript minimap. The Mac transcript minimap is now more prominent and expands on hover so you can scan and jump through a long conversation. (#540)
- Attach an app shot. The composer can capture the frontmost window - or any visible app window - and attach it to your prompt as a rich preview. (#538)
Security
- Agent-runtime hardening (CSO P0/P1). A security pass closed an agent remote-code-execution path, scrubbed provider secrets from spawned environments, bound end-to-end message authentication, tightened consent handling, and moved pairing tokens to at-rest Keychain storage. (#539)
Jun 15, 2026
A Chat- and Settings-focused release: per-provider session defaults, a way out of a stuck turn, and a cleaner, calmer chat surface - plus a batch of fixes across the composer, worktrees, and the Voice picker.
New & improved
- Per-provider session defaults. Settings now has default effort + permission-mode columns for each provider, so new sessions start with the reasoning effort and permission mode you actually want instead of a one-size-fits-all default. (#529)
- Stop + Retry on a stuck turn. When a chat turn hangs, Stop and Retry controls now fade in on the loading indicator so you can interrupt or resend the last message without abandoning the chat. (#533)
- Live updater rail meter. While an update downloads, the updater toolbar pill turns into an inline rail meter with a live percentage instead of a bare spinner. (#527)
- Calmer, flatter chat. The working-stream indicator is now borderless to match the Code tab, and assistant replies sit flush on the black canvas with the bubble background removed. (#532, #534)
Fixes
- Worktrees no longer open blank. Opening a worktree session that rendered an empty transcript now refreshes and shows the conversation instead of a blank pane. (#528)
- Copy button stops flickering. The chat message copy button no longer flickers on hover and now shows a pointing-hand cursor. (#530)
- Long composer text wraps. Long text typed into the Chat composer now wraps and grows the field instead of being clipped on one line. (#531)
- Voice model picker is ordered sensibly. The Voice model picker now lists the active model first, then recommended, then the rest. (#535)
Jun 14, 2026
A polish-and-fix release for the Code workbench: snappier session starts, a calmer chat surface, and a batch of glitches in the sidebar, activity cable, and transcript that are now gone.
New & improved
- Instant New Session. The New Session sheet now spawns optimistically for every agent - the row appears and is ready immediately instead of waiting on provisioning, so starting work feels instant. (#517)
- Chat attachments as file chips. Files you attach in chat now render as tidy file chips instead of raw paths. (#518)
- Rounder “Jump to latest.” The jump-to-latest control is now a clean round chevron FAB. (#516)
- Calmer context ring. Removed the pill background behind the composer’s context-usage ring so it sits flush with the composer. (#520)
Fixes
- The activity cable stays lit while the agent works. Trailing usage/diff events could leave the data-stream cable stuck on, or a row could mount before its stream resolved; the cable now tracks the live turn and lights for exactly as long as the model is working. (#519, #523)
- Model-chip switch after a quick spawn actually switches. Toggling the model chip right after a quick-spawn no longer loses the race against provisioning - the running agent converges to the chip you picked. (#522)
- Idle worktree rows keep their name. A worktree session’s name now shows while it’s idle, not only while it’s active or after you click it. (#521)
- Stuck “Sending…” bubbles clear. An acknowledged send that never echoes back can no longer leave a permanent “Sending…” bubble, and the per-turn Preview chip only appears when there’s an actual preview to open. (#524)
- Code sidebar branches stay visible. A branch row no longer disappears when its session moves from running to done - only archiving removes it. (#525)
- No more transcript flicker on rollover. Switching to a rotated transcript file no longer flashes a blank/stale frame. (#526)
Jun 14, 2026
A focused fix release: cross-vendor model switching now actually switches the running agent, plus a smoother spawn button and updater.
Fixes
- Cross-vendor model switch actually switches. Switching a running session from one vendor to another (e.g. Claude → Codex) now restarts the agent on the new vendor’s runtime instead of just changing the chip in the UI - the next message really goes to the model you picked. (#514)
- Smoother updater progress bar. Fixed a flicker where the update-download progress bar could flash empty or slide off-screen between progress callbacks. (#515)
- Aligned empty-state chips. The meta chip row under the empty-state composer now lines up cleanly with the composer box. (#511)
Spawn button
- Split Spawn action. Clicking the Spawn sidebar row now one-click-spawns your default grid; the trailing ”+” opens the config tray to pick count and agent mix. (#513)
- ”+” hover affordance. The Spawn ”+” lights up with a subtle wash when you hover it. (#512)
Jun 14, 2026
A polish pass across the chat thread, the composer, and the Code workspace - clearer “working” indicators, a tidier composer, and live-updating diff and PR-status indicators.
Chat & working indicators
- Steadier “working” indicator. The live activity stream now uses a consistent orange working accent, blends seamlessly into the thread without a pill border, and stops the moment a turn completes instead of lingering. (#499, #506, #510)
- Quieter turns. Chat turns with nothing to expand no longer show an empty disclosure control. (#498)
- Jump-to-latest, repositioned. The “jump to latest” button now sits just above the composer where it’s easier to reach. (#501)
- Visible copy button. The message copy affordance is now a clear, self-contained button. (#502)
Composer
- Tidier follow-up queue. Queued follow-up sends now render above the composer box (not inside it), and the redundant in-composer queue button is gone - queue a follow-up by pressing Return while a session is working. (#508, #509)
- No more stuck attachments. Fixed an attachment that could stay “pending” in the composer after you sent a message. (#497)
- Cleaner context indicator. Removed the redundant context-usage percent label next to the usage ring. (#496)
Code workspace
- Live diff & PR indicators. The +N/-N diff counts now refresh live as files change, the branch PR-status icon updates promptly, and the worktree diff stays visible even while hovering the archive button. (#505, #504, #507)
- Clearer session labels. Active-session tab labels resolve more reliably and show a live activity stream behind running sessions. (#500)
- Edited-file icons. Edited-file chips now show each file’s tech-stack brand icon. (#503)
Jun 14, 2026
A focused round of fixes across spawn mode, the composer, and updates, plus a simpler voice-model picker and second-device onboarding.
New
- Simpler voice-model picker. Settings → Voice now shows a single flat list of transcription models (Apple Speech, WhisperKit, Parakeet) instead of a separate engine selector - pick a model and the right engine is used automatically. (#491)
- Second-device onboarding. Settings → Devices now walks you through adding a second device (execution host) so you can run agents on another Mac. (#492)
- Paste images into the composer. ⌘V now pastes clipboard images (screenshots, copied files) straight into the chat composer as attachments. (#489)
Fixes
- Spawn mode launches the real opencode. Spawn tiles now run your installed
opencodeTUI instead of the bundled serve helper (which rendered an empty tile); if opencode isn’t installed you get an Install prompt. (#495) - Cleaner spawn terminals. Fixed spawn-grid tiles that left a stranded wide “opening frame” behind after the tile reflowed to its real width. (#494)
- Cancelling an update reverts instantly. Cancelling an in-progress update download now snaps the popover back immediately instead of leaving a stuck progress bar. (#490)
Polish
- Cleaner spawn header & clickable rows. Tidied the spawn grid header and made the sidebar spawn rows clickable across their whole width. (#493)
- Aligned repo headers. Code-sidebar repo header rows now match the height of the worktree/session rows beneath them. (#488)
Jun 14, 2026
Per-project icons, livelier working indicators, and a round of Code-sidebar polish.
New
- Per-project emoji & icon picker. Click a project’s monogram in the Code sidebar to assign it an emoji or a custom image, so your projects are easier to tell apart at a glance. (#484)
- Livelier “working” indicators. Chat and Code tabs now show a steady data-stream indicator with a live elapsed readout while an agent is working, replacing the old pulsing dots. (#486)
- Active-branch data-stream cable. Working-branch rows in the sidebar render a subtle live “cable” animation while a session is active on that worktree. (#487)
Changed
- Calmer Code sidebar repo headers. The disclosure chevron now appears only on hover (Finder-style), the gear and ”+” show a pointing-hand cursor, and the Spawn ”+” stays visible while its settings gear slides in beside it. (#479, #481, #482)
- Quieter tab strip. Removed the green live-status dot from the Code-tab workspace tab strip. (#480)
- Tidier “Projects” header. Added leading padding so the header aligns with the content below it. (#485)
Fixes
- Update prompts stay put. App-update status now stays in the top-right popover instead of taking over the screen with a center overlay. (#483)
Jun 14, 2026
Smoother Code-workspace resizing, clearer terminal tabs, and a quieter, more polished Code tab - plus faster app updates under the hood.
New
- Smooth pane resizing. Dragging the Code-workspace sidebar and review-pane dividers now tracks your cursor smoothly instead of snapping, and your chosen widths persist. (#476)
- Numbered terminal tabs. Mac terminal tabs are now labeled positionally (T1, T2, T3…) so you can tell panes apart at a glance. (#475)
- Drag a project to reorder it. The whole project header in the Code sidebar is now a drag handle with a palm cursor - the grip dots are gone, and the row lights up on hover. (#468, #469)
Fixes
- Terminals re-fit after you resize. A terminal pane now recalibrates its size when you drag the review-pane divider, instead of staying stuck at its old width. (#473)
- Review pane keeps a constant width. Switching to the Diff tab no longer widens the review pane - it stays the width you set across every tab. (#477)
Polish
- Cleaner Code tab. Removed the redundant session-detail metadata strip and the hairline divider above the composer for a calmer layout. (#467, #471)
- Consistent hover + cursor feedback. Review-pane tabs, terminal tabs (with a hover-close affordance), and the worktree archive button now show hover states and the pointing-hand cursor. (#472, #474, #478)
Under the hood
- Faster, smaller app updates. Continuum now ships Sparkle binary-delta updates, so updating downloads only what changed instead of the whole app. (#470)
Jun 14, 2026
Spawn mode gets a settings home and live resizing, plus a redesigned new-session box and Code-tab polish.
New
- Settings → Spawn. A new Spawn section in Settings lets you set your default agent and default session count and toggle the spawn button - and the spawn button now carries a gear that deep-links straight to it. (#462)
- Resize a spawn on the fly. The spawn-grid header gains a 4 / 6 / 8 toggle so you can grow or shrink an open spawn in place - growing fills the new tiles with your dominant agent, shrinking opens a fresh grid without killing any live sessions. (#460)
- Redesigned new-session box. The empty-state composer is now a single Codex-style input with device and account chips, replacing the old bordered panel and inline repo picker. (#463)
Fixes
- Spawn terminals line up again. Fixed spawn-grid terminals that rendered misaligned because the PTY width was stuck at 120 columns instead of matching the laid-out tile. (#464)
Polish
- Provider favicon in the Code tab. Code tabs now show the provider’s favicon and collapse a redundant chat header for a cleaner, more compact strip. (#461)
- More responsive menu-bar controls. Menu-bar popover controls gained a hover fill and the pointing-hand cursor. (#465)
Jun 13, 2026
On-device voice transcription arrives, plus a round of Spawn-mode and Code-tab improvements.
New
- Parakeet local speech-to-text. A new on-device transcription engine (NVIDIA Parakeet) joins WhisperKit, with model “tradeoff cards” in Settings → Voice that compare quality against speed so you can pick the right model for your machine. (#459)
- Start sessions straight from the spawn grid. Empty spawn-grid cells now show a “Start New Session” button, so you can refill a closed tile without reopening the config sheet. (#449)
- Smarter spawn ”+”. When the grid is full, ”+” now auto-debits a slot from the default agent instead of doing nothing. (#455)
- Spawn 1 or 2 sessions. The session-count picker now offers 1 and 2, alongside 4 / 6 / 8. (#458)
- Editable workspace rename. Renaming a workspace opens a proper editable sheet with an “Also rename branch” toggle - relabel the workspace while keeping an open PR’s branch name intact. (#453)
- Live harness reconfigure. Change a harness agent’s model, effort, or permission mode mid-session and it reconfigures in place instead of erroring out. (#457)
Fixes
- Recover a stuck provider login from chat. In-chat provider login recovery lets you re-authenticate without leaving the conversation. (#446)
- Spawn selection border follows your click. The tile selection border now tracks the tile you actually clicked, even after the grid reflows. (#448)
Polish
- More responsive controls. Sidebar and titlebar buttons gained hover + click feedback, and composer pickers show the pointing-hand cursor. (#451, #454)
- Roomier rows and a clearer tab. Code sidebar worktree rows are taller and easier to hit, and the “Term” tab is now labeled “Terminal” on Mac and iOS. (#452, #450)
- Consistent chat model pill. The chat model pill now matches the Code composer’s pill styling. (#456)
Jun 13, 2026
Small Code-tab cleanups: a tidier review pane and the transcript-density control moved somewhere more sensible.
Fixes
- Cleaner collapsed review pane. When you collapse the right-hand review pane, its rail now hides entirely instead of leaving a thin strip behind. Re-open it from the titlebar button or the keyboard shortcut. (#445)
- Simpler review-pane tabs. Removed the Source tab from the Code review pane. (#444)
- Transcript density lives in Settings now. The transcript-density picker moved out of the Code header into Settings → Visual, so the header stays focused and the setting persists in one place. (#447)
Jun 13, 2026
A redesigned iPhone app, a reorderable Code sidebar, and a wave of provider-settings and analytics fixes.
- Redesigned iPhone app. A flat tab shell with Home, Usage, Code, and Chat - a cleaner, faster way to move around on iOS. (#430)
- Reorder your projects. Drag to set a stable, custom order for managed projects in the Code sidebar, and it sticks across launches. (#443)
- Preferred account, at a glance. Provider settings gain a “Preferred Account” column and a “Terminal Command” column so multi-account setups read clearly. (#437)
- Friendlier nav tabs. Nav tabs now show a pointing-hand cursor on hover and a tooltip with their keyboard shortcut. (#439)
Fixes
- Instant model dropdown. The model picker is usable the moment you connect a provider, instead of lagging behind. (#433)
- Cleaner provider settings. OpenCode, OpenRouter, and authenticated providers are split into their own sections. (#438)
- One OpenCode usage strip. OpenCode now shows as a single two-zone usage strip instead of a duplicate empty column. (#440)
- Accurate Claude weekly %. The Claude weekly gauge reads correctly again, and secondary-account gauges come back to life. (#435)
- Code repos stay put. A Code repo no longer disappears from the sidebar after you archive its last session. (#434)
- Sessions revive instead of erroring. A Claude session whose terminal was retired now revives seamlessly rather than throwing an error. (#442)
- One less confirmation. Bypass mode skips the extra confirm when the repo is already trusted. (#441)
- Tidier sidebar rows. Dropped the redundant provider sub-label from Code sidebar branch rows. (#432)
- iOS handoff fix. Fixed a handoff-menu callback scope issue and a provider-choice exhaustiveness bug.
Under the hood
- Fable 5 removed from the Claude model selector to comply with US export restrictions; past Fable usage still prices correctly in analytics. (#436)
- Removed the “N active sessions” Live Activity / Dynamic Island pill. (#431)
Jun 13, 2026
Spawn a grid of agent terminals, run agents on remote and cloud hosts, dictate hands-free with voice, and find files instantly with built-in fuzzy search - plus a new provider picker and a lot of Code-tab polish.
- Spawn mode - a grid of agents. Launch a grid of agent terminals on the Code tab and watch several agents work side by side at once. (#413)
- Run agents anywhere - multi-host execution. Hand a session off to a remote or auto-provisioned cloud host, with tailnet-aware routing and per-host run-minute tracking, so heavy work doesn’t tie up your Mac. (#417)
- Hands-free voice dictation. Hold the Fn key to dictate into the composer (or any app) with an on-screen overlay, on-device transcription via WhisperKit, and a new Voice settings tab. (#422)
- Instant file search. A built-in fuzzy file finder powers Code-tab file search and gives your agents a fast repo search tool out of the box. (#423)
- Pick any provider. A new OpenCode-style provider picker with logos, plus inline custom OpenAI/Anthropic-compatible providers and OpenCode partner models. (#408, #417)
- Queue your next prompts. Stack composer follow-ups above the input and steer a queued message mid-turn instead of waiting for the agent to finish. (#414)
- Share skills as Markdown. A Share button in Skills settings downloads any skill as a Markdown file. (#409)
- Branch & PR status at a glance. GitHub Octicon branch/PR icons now mark Code sidebar rows. (#418)
- Cleaner right pane. A simpler right-pane toggle with gutter hover states. (#411)
Fixes
- Menu-bar popover behaves. Collapsing the menu-bar popover no longer pops open the dashboard. (#416)
- Secondary accounts populate. Secondary-account gauges now fill in on refresh. (#428)
- Usage readability. The 100% metric no longer wraps in narrow columns, and the redundant “vs prior” delta is gone from the chart header. (#419, #427)
- Tidier Code workbench. Tighter horizontal padding, draft tabs on one line, unified permission-mode chip styling, hover highlighting on the Skills tab, and cleaner managed-sidebar headers. (#425, #420, #421, #410, #424)
Under the hood
- Product analytics. Anonymous, pairing-aware PostHog instrumentation across the Mac and iOS tabs to guide what we build next. (#412, #415)
Jun 12, 2026
Vendor secret sharing and guided CLI onboarding, document tabs and edited-file previews in the Code tab, richer agent transcripts, and more accurate usage analytics.
- Guided vendor CLI onboarding. Provisioning settings now walk you through setting up vendor CLIs step by step instead of leaving you to figure it out. (#402)
- Securely share vendor secrets with agents.
@-mention a vendor in the composer to hand an agent the env vars it needs, and save pasted vendor env vars straight from the Code tab chat. (#404, #403) - Create a PR from the Code titlebar. A new Create PR button - with skill attachment - lets you open a pull request without leaving the workspace. (#406)
- Open outputs in document tabs. PDFs, HTML, images, and docs an agent produces now open in dedicated Code tab document tabs. (#394)
- See edits at a glance. Edited-file chips appear at the end of each session turn and expand inline; hover a chip for a quick diff preview. (#395, #396)
- Richer agent transcripts. Tool runs now show rich icons and per-stack logos so you can scan what an agent did faster. (#392)
- Cloud vs Tailscale pairing, restored. Choose a Cloud relay or your own Tailscale network when pairing - back in both the download flow and the Devices tab. (#390)
- Small touches. Hover-to-copy on chat message rows and a hover effect on the workspace new-tab button. (#405, #400)
Fixes
- More accurate spend. Analytics now pulls Cursor spend from the Cursor dashboard billing API. (#407)
- More reliable self-hosting. Relay auto-provision is fixed and self-hosting pairing is Tailscale-first. (#393)
- Multi-account polish. Secondary-account usage gauges and menu-bar toggles behave correctly. (#391)
- Model toggles stay put. Cross-provider model toggles no longer jump off the current tab. (#398)
- Terminal niceties. The terminal auto-focuses when a Claude session is ready, and terminal tabs are labelled “Terminal - branch” instead of “Shell”. (#401, #399)
Jun 12, 2026
Multi-account provider settings, a redesigned Providers pane, the OpenRouter provider is back, and a faster, more consistent Code tab.
- Redesigned Settings → Providers. Each provider now has a clean Connect/Disconnect layout, and the Skills settings tab matches the same styling for a consistent settings surface. (#383, #380)
- Better multi-account provider settings. Secondary Claude and Codex accounts are handled more evenly across the app, with sensible Code defaults per account and Terminal shims installed for each secondary so your shell sees the right account. (#371, #375)
- OpenRouter is back. The OpenRouter provider returns with distinct branding so you can route Chat and Code through it again. (#376)
- Code tab account chip. The Code tab now shows which account a session is running under, right beside the permission-mode control - no more guessing which subscription is being billed. (#373)
- OpenCode Go credential import. Saving OpenCode Go settings now imports your quota credentials straight from the browser Keychain, so the usage meters light up without manual cookie copying. (#372)
- Cursor usage in the menu bar. The menu-bar label now shows both Cursor Auto and API usage, and the Usage tab provider-card grid lays out cleanly for 5 and 6 cards. The redundant Monthly total row was removed. (#387, #374, #388)
Faster + more consistent
- Instant model and default switches. Changing the default model in Settings and switching the model from the picker now update the model pill immediately, and the Code-tab model toggle stays in sync across the tab, header, and composer. (#368, #370, #386)
- Check for Updates responds instantly. The update check now answers right away from cached status instead of stalling, and the empty release-notes section is hidden in the update popover. (#369, #379)
- Cleaner model picker. The Code-tab model picker bottom bar and rows were simplified, and the non-functional Code-tab filter button was removed. (#389, #385)
Fixes
- Repo-branch tab labels. Tabs now show a repo-branch label until a short summary arrives, so a new session is never a blank tab. (#384)
- Worktree handling. The worktree archive is clickable, branches sort by creation time, and Option-clicking a repo always spawns a fresh branch instead of reusing a stale diff. (#382, #378)
- Snappier live timelines. Live UI timelines are now bounded so long-running sessions stay responsive. (#381)
- Cleaner app icons. The iOS and Watch 1024×1024 app icons have their alpha channel stripped to satisfy App Store icon requirements. (#364)
Jun 11, 2026
OpenCode Go as a first-class provider, context window breakdown in the Code tab, and relay pairing improvements.
- OpenCode Go provider. Add your Go API key (from opencode.ai/zen) in Settings or onboarding to use OpenCode in Chat and Code. Pick Go models (Kimi, GLM, DeepSeek, MiniMax, Qwen) from the provider tray and model picker. An optional workspace ID and auth cookie drive the 5h / weekly / monthly quota meters on the Usage tab.
- Context window breakdown in the Code tab. The composer popover now shows a Cursor-style per-category breakdown (messages, MCP tools, memory files, skills, system prompt, custom agents) instead of a single session cost row. Updates live via ACP when Claude Code publishes a context_window_update event, or estimates locally otherwise.
- Relay grant provisioning. The relay pairing flow can now provision a grant token and install identity to authenticate relay connections from the Mac.
- Skill plugin importer. Import .continuum-skill bundles directly from the Skills settings pane.
- Repo env vendor secrets importer. Import secrets from .env files in your repo’s vendor directories.
- Code workspace draft composer. Improved draft handling in the Code tab composer for multi-turn interactions.
- Workbench pane resize handle. Drag to resize the sidebar and main pane independently.
- Transcript message gutter. Timestamps and metadata shown in a gutter alongside transcript messages.
- Ships build 233 for Mac (signed Sparkle feed) with iOS/watchOS to TestFlight on the same build.
Jun 11, 2026
Light theme, leaderboard, provider logos, and 21 improvements to the Code tab, chat, and Settings.
- Quiet White light theme. A crisp light mode variant you can switch to in Settings → Appearance, or let macOS toggle automatically. Default stays Dark.
- Flat ranked leaderboard for tokens by model. The model breakdown is now a compact percentage-bar list with token count and cost per model at a glance.
- Provider logo in the model chip. The composer and session detail show the provider’s logo next to the model name.
- Effort is its own composer pill. Reasoning effort (Low / Medium / High / Max) has a dedicated chip in the Code tab composer - change it without touching the model selector.
- Install All for vendor provisioning. One-tap button installs every missing dependency without stepping through each prompt.
- Rename workspace and git branch from the sidebar. Right-click any workspace → Rename updates both the folder name and its tracking git branch.
- Worktree branch shown in the Code tab breadcrumb. The active worktree branch name is now part of the breadcrumb path.
- Worktree diffs yield to the archive affordance on hover. The diff preview steps aside so the archive button is always reachable.
- Segmented controls visible in light mode. The segment track was transparent in Quiet White - fixed by threading the missing
segmentTracktoken through to both view call sites. - Usage bars are evenly spaced. Provider gauge columns divide width equally when fewer than the maximum providers are active.
- Worktree live-status dot stays in position. The green activity dot no longer shifts when a row is hovered or selected.
- Duplicate Diff label is gone. The Settings pane no longer shows the Diff heading twice.
- Mic permission prompt appears for composer dictation. Ctrl+M now asks for microphone access instead of silently failing.
- Redundant Worktree mode removed from the Code tab header. The mode selector no longer duplicates the option already in the composer chip.
- Code tab empty state refreshed. Clearer icon and copy for new users.
- Chat provider rows are fully clickable in Ask or Compare. The whole row responds to a click, not just the trailing button.
- Custom provider sheet opens on click. Add in Settings → Providers no longer needs a second tap.
- “You’re up to date” shows after manual update checks. The status banner now appears when no update is available, instead of showing nothing.
- Repo removal in the Code sidebar feels instant. The sidebar responds in under 250ms with no visual stutter.
- Code workspace tabs stay put. The tab strip no longer scrolls horizontally when the window is resized.
- Diagnostics removed from Settings. Settings is now five clean tabs.
- Ships build 230 for Mac (signed Sparkle feed) with iOS/watchOS to TestFlight on the same build.
Jun 11, 2026
Workspace and menu bar polish - six targeted bug fixes across the Mac sidebar, pane transitions, and status-bar interactions.
- Workspace tabs keep the branch visible when closing a tab. The branch name row no longer disappears when you close another tab in the same workspace.
- Smooth expand/collapse pane transition. Expand and collapse now use a fluid animated transition with the correct label state throughout.
- Archive button no longer overlaps the live dot. The archive action in the sidebar is properly offset so it doesn’t occlude the active-session indicator.
- Provider logos render at the correct aspect ratio in menu bar badges. Logo images in the menu bar gauge are no longer stretched - they respect their original proportions.
- Larger hit target for the menu bar checkbox on the Usage tab. The checkbox is easier to tap and no longer requires pixel-precise clicks.
- Larger hit area for workspace tab close buttons with hover chrome. The × button now has a generous hover zone and a visible background on hover for clarity.
- Ships build 229 for Mac (signed Sparkle feed) with iOS/watchOS to TestFlight on the same build.
Jun 10, 2026
First update since 0.31.17 - it rolls up everything merged since then.
- Custom OpenAI/Anthropic-compatible providers. Point Continuum at any OpenAI- or Anthropic-compatible endpoint (base URL + API key + model id) in Settings → Providers. It probes the endpoint before saving, then offers the provider everywhere you pick a model - Mac Chat, Mac Code, and the iOS chat + new-session sheets - routing through both the Claude and Codex spawn paths.
- Multiple Claude and Codex subscriptions side-by-side. Add a second Claude or Codex account in Settings → Providers, pin chats and sessions to a specific account, watch both accounts’ gauges, and have every account’s history roll into the aggregate analytics. Per-account spawns stay config-isolated, and wrong-account billing fails closed instead of silently falling back to your primary subscription.
- Analytics no longer pegs your CPU on a cold reparse. The first full history parse used to peg three CPU cores for hours; it now uses a lock-free ISO-8601 parser with cache checkpointing.
- Ships build 228 for Mac (signed Sparkle feed) with iOS/watchOS to TestFlight on the same build.
Jun 10, 2026
- Relay pairing now works in a downloaded build. Settings → Pair iPhone gains a “Relay access token” field, stored in your Mac’s Keychain, so the Mac can mint pairing QRs against the production relay. Previously the grant token was only read from an environment variable - which a notarized, double-clicked app never has - so relay pairing silently fell back to a key the relay rejects.
- The Mac now points at the production relay Worker by default.
- Ships build 225 for Mac (signed Sparkle feed) with iOS/watchOS to TestFlight on the same build.
Jun 10, 2026
- The Code composer’s Stop button now actually clears the “thinking…” indicator (and re-enables Send) for Claude sessions - previously the abort marker flipped it back on.
- The composer footer is consolidated into a single Claude-Desktop-style ”+” menu (attach, prompt history, saved prompts, paste-without-ANSI, expand) so the bar reads
+ · mic · … · send. - Enter sends; Shift+Return inserts a newline in Code (was ⌘↩ to send). ⌘↩ still works as a secondary shortcut.
- Settings simplified: removed the Live Activities / APNS credential setup, and stripped Pairing down to a single QR your iPhone scans (plus Forget pairing).
- Ships build 224 for Mac (signed Sparkle feed) with iOS/watchOS to TestFlight on the same build.
Jun 10, 2026
- Code workspace polish on Mac: the whole “Ask” permission pill is clickable (not just the chevron), the model/effort and mode pills now hug and center their text, and the redundant inline checkpoint “Restore” strip and the terminal “Terminal connected · Shell” strip are gone.
- Closing a Code tab no longer tears down the branch: the worktree is kept while sibling or draft tabs still live in it, and ownership hands off to a survivor so the last tab still cleans up - on both the Mac and the daemon delete path.
- The per-repo ”+” opens a Codex · GPT-5.5 · Extra High · Plan-mode workspace by default.
- The embedded terminal now opens Claude in the worktree instead of a bare shell.
- iOS: the live-composer model/effort pill hugs and centers its label (no more clipped “Model · Effort”), matching the Mac fix.
- Reliability: cross-provider model swaps are now rejected at the daemon (preventing the “Connecting to Claude…” strand from any client), the menu-bar popover stays dark over light desktops, and models without a reasoning dial (e.g. Haiku) no longer receive a spurious effort flag.
- Ships build 223 for Mac (signed Sparkle feed) with iOS/watchOS to TestFlight on the same build.
Jun 10, 2026
- Unified platform rebuild: Mac, iPhone, and Watch apps are all built from the same commit as build 222, so every platform now carries the full 0.31.12 + 0.31.13 feature set (Claude Fable 5 models and pricing, OpenCode live streaming fixes, cross-provider sibling tabs, instant bottom-right notification bubbles).
- iOS/watchOS TestFlight catches up from build 220 to build 222; no Mac-side functional changes since 0.31.13.
- Ships build 222 for the Mac app with a signed Sparkle update feed.
Jun 10, 2026
- Fixes a session getting stuck on “Connecting to Claude” after picking another provider’s model: cross-provider picks now open a sibling tab for that provider in the same worktree instead of pointing the running session at a model it can’t load.
- Action feedback (permission mode, model, mode switches) now appears the moment you click - not seconds later after the session respawns.
- Notification bubbles moved to the bottom-right corner instead of appearing front and center.
- Ships build 221 for the Mac app with a signed Sparkle update feed.
Jun 10, 2026
- Fixes OpenCode replies never rendering in the Code tab on opencode 1.16+: the live SSE path now speaks the current event vocabulary, subscribes per project directory, disables response compression on the stream, and dispatches complete events instead of waiting on frame terminators that never arrive.
- Adds Claude Fable 5 to the Chat and Code model pickers - “Fable 5 (1M)” and “Fable 5”, with Fable 5 (1M) as the new default Claude model.
- Prices Fable 5 usage in the Usage tab at launch rates (50/M output, 0.
- Restores accessibility identifiers on the center-header controls (transcript density, More actions, checkpoint flows) that a container identifier had overridden.
- Repo settings → “New session here” opens the full session launcher again; instant quick-spawn stays on the adjacent + button.
- Every selectable Code provider - Claude, Codex, Gemini/Antigravity, Cursor, OpenCode, Grok - now has a verified live end-to-end pass.
- Ships build 220 for the Mac app with a signed Sparkle update feed.
Jun 5, 2026
- Removes the redundant Managed label from the Code tab sidebar so repos start directly under Projects.
- Aligns selected worktree rows with Conductor-style left and right margins while keeping branch names visually nested under their repo.
- Ships build 201 for the Mac app with a signed Sparkle update feed.
- Adds Sparkle-backed in-app updates for the Mac app.
- Adds shared Update App controls in the titlebar, Code tab, Settings, and app menu.
- Adds the GitHub Pages appcast release path with Developer ID and notarization gates.