Releases

Changelog

What shipped in each version of agmux — new features, improvements, and fixes. Notes are written for people using the app, not for engineers reading commits.

  1. v4.0.1

    Latest

    Improved

    • Local models stay lighter in long chats — On smaller Macs, a long local chat now keeps its working memory within the size Settings already showed, so it is less likely to fill the machine as the conversation grows.

    Fixed

    • Grok project memory on a new Mac — Opening a Grok terminal now connects project memory right away, instead of skipping it until you trusted the folder. Grok should use the memory tools instead of rewriting the memory files by hand.
  2. v4.0.0

    Cowork, on-device models, and a look that matches the site.

    4.0 is a big step: Cowork for everyday work chats (including ones you started in Claude and ChatGPT), AI models that run only on your Mac, Cursor sign-in, Team Knowledge, a beta program, and gold-and-black styling. Remote, Teams, and many session bugs are also cleaned up.

    New

    • Cowork mode — A briefcase button next to Task opens Cowork, a place for everyday work chats instead of coding terminals, with a short “Opening Cowork” screen so the switch never looks frozen. Cowork keeps its own list of folders: it starts empty, you add the ones you care about, and your Claude Cowork and ChatGPT Work chats for those folders — including chats started in the Claude and ChatGPT desktop apps — appear there with their earlier history. Refreshing picks up new desktop chats, New always starts a chat in a folder you added, and hiding or deleting a chat keeps it gone.
    • Cowork folders and file previews — Rename a folder in Cowork by double-clicking it (or right-click → Rename) and drag folders into the order you want; nothing moves on your Mac. Clicking a file name inside a Cowork chat opens just that file — markdown in the reading preview — with the file tree closed for more room, and the file-explorer button still opens the tree when you want it.
    • ChatGPT Work and Grok Cowork chats — ChatGPT Work is a Codex chat tuned for everyday work, with the same connected tools and plugins Codex already uses on your Mac. Grok Cowork is a regular Grok chat with the same everyday-work focus.
    • Beta program — Apply at agmux.dev/beta. If you’re approved, you can download upcoming builds others don’t get, and paste a tester token under Settings → About → Updates so the app can install later betas for you.
    • Grok 4.6 in xAI chat — New Grok chats use Grok 4.6, xAI’s latest model, by default, and Extra High reasoning is available. Grok 4.5 stays in the list, and a chat you set to 4.5 stays on 4.5.
    • Chat with AI models that run on your own Mac — Start a new chat and pick a local model from the model list. Nothing you type, and nothing the model reads, leaves your computer, and it keeps working with no internet connection. New local chats respect your Local or Worktree choice and accept photos on the first message. The New menu also has a local option alongside Claude, Codex, and the rest, which opens the familiar terminal already pointed at one of your installed models.
    • Local Models page in Settings — Browse models suited to your Mac, see how much space and memory each one needs, and download or remove them with one click. The one-time setup local models need sits at the top of the page with an Install button, so you can get ready before downloading anything. Recommended Speed, Balanced, and Quality picks are listed for every Mac size from 8 GB to 256 GB — switch the memory tier to see the picks for any machine, not only your own — and models that cannot read or change files are left out, so anything you can pick can genuinely help you code. You can paste an Exa key so local models can search the web, and turn native tool calling on or off.
    • Local models manage their own memory — agmux loads a model when you start using it, unloads it once it goes idle, and shuts everything down when you quit, so several models can be available without filling up your Mac’s memory. To free memory sooner, use the Eject button in the chat composer, or right-click a local chat or terminal in the sidebar and choose Eject model.
    • Sign in to Cursor from Settings — On Accounts, one click opens Cursor sign-in in your browser. After that, Cursor chat can use every model on your plan (including Ultra) without pasting an API key.
    • Team Knowledge (Teams plan) — Paid teams (or an active trial) can keep shared decisions and short session summaries on teams.agmux.dev; free teams get analytics only. Owners turn it on after accepting the privacy note, and sharing anything — or letting agents read it — always requires accepting that note first. Members can add decisions and promote session notes, and the Memory tab can share a decision or summary straight to the team. When the owner allows it, agents can look up official team decisions, never full conversations. Owners can export Knowledge from the web.
    • PR Leaderboard (Teams plan) — Weekly cost and GitHub pull-request ranking is part of the Teams plan (or trial), not Free. Owners connect a GitHub App and pick repositories in Settings.
    • Help tab on Teams — Every team on teams.agmux.dev now has a Help tab covering setup, what is collected, roles, each page, budgets, leaderboard, knowledge, billing, and common problems, in plain language.

    Improved

    • Yellow and black look to match the website — The default Midnight theme uses the same gold accent and dark surfaces as agmux.dev. The other Appearance themes (Forest, Indigo, Golden, and the rest) keep their own colors but now look cleaner in both dark and light mode — softer tints, readable text, and accents that stay clear on light backgrounds.
    • Home, Usage, and Issues look cleaner — Those screens use the same quieter cards and headers as the rest of the app.
    • Cleaner terminal panel — The slide-up terminal drops the yellow-tinted wash across its top bar. Tabs, the folder path, and the buttons now sit on one calm strip that matches the terminal below, with gold kept for the small dot that shows a shell is alive.
    • Cleaner chat scrolling — The thin scrollbar along the right edge of Cursor and Claude chat is gone; you can still scroll with the trackpad or mouse wheel.
    • Cursor chat controls and model names — Cursor chats show Chat/Plan, model, and Supervised / Auto / Full tool modes, and list friendly model names like Composer 2.5 and Sonnet 4.6 Thinking instead of raw codes. Thinking is Off or On (or Low / High) instead of true/false, and only appears when the model supports it. Tool rows for shell, edit, and search render like other chats, and replies no longer leave stray status labels (like “FINISHED”) under the answer.
    • Faster, clearer app updates — Update checks start as soon as you open the app, the update prompt sits larger in the bottom-right corner, and it shows again every time you open the app if an update is still waiting. Settings → About has an Automatic updates switch to download and install on open without a click.
    • Richer first-run setup — Onboarding now covers project memory, whether new chats start with full permissions, phone remote, finish and approval alerts, keep-awake while agents run, automatic updates, and Claude vs Codex chat-or-terminal defaults — not only theme and fonts. Existing installs that already finished setup get a short “new options” pass for the new choices.
    • Clearer, safer project memory — Memory shows who wrote each entry and a compact health summary. Editing a fact can mark older entries as replaced, so agents stop treating stale notes as truth.
    • Memory rules are set by agents, not a review queue — A rule agents must follow is marked by the agent that verified it, rather than by you clicking through a queue, and important stars stay sparse attention markers. The Memory screen shows both counts without a confirm step and warns when either piles up. Clean memories clears important flags and archives replaced entries and resolved issues; binding rules stay, and nothing is permanently deleted.
    • More reliable shared memory — When several chats save memory at once, their changes no longer overwrite each other. Memory saves recover after an interruption, and agmux warns you if its local readable copy needs repair.
    • Photos on Remote — On your phone, the + button next to the message box attaches images (only after this app update — older Macs hide the button so photos don’t vanish). Chat sessions receive them like on the Mac; terminal sessions get a file path on your computer so the agent can open the image. The button stays put when the phone reconnects while your Mac is still online, and the temporary “sending” bubble clears once the photo lands in the conversation.
    • More agents on remote — Phone remote can see and control OpenCode, Cursor, Kimi, and local-model sessions as well as Claude, Codex, and Grok. You can start a new Cursor chat from the phone (pick any model on your Cursor plan, send messages, and stop a turn) without opening it on the Mac first, and changing OpenCode or Cursor models from the phone works.
    • Phone remote at remote.agmux.dev — The phone remote site is now at remote.agmux.dev. Older links to agmux.dev/remote still work, so you don’t need to re-pair if you already use remote.
    • Connect this Mac from the remote website — On a Mac browser at remote.agmux.dev, tap Connect this Mac to open the app and pair that browser automatically, with no code typing. For safety, if Remote control is switched off, the app takes you to Settings to turn it on yourself — a web page can never quietly switch on phone access to your Mac.
    • Phone alert when an agent is waiting on you — If you leave the remote phone app in the background, it can show a system notification when an agent needs approval or an answer, so you can jump back in without watching the screen.
    • Team agent policy — Team owners can set which coding agents members may start and a default permission mode (Teams → Settings → Agent policy). Linked Macs pick that up on sync.
    • Teams: how long agents wait on people — Team dashboards can show how many approvals happened and how long agents spent blocked waiting for a human (counts only — never what you typed).
    • Codex usage shows weekly correctly — When Codex only has a weekly limit (the 5-hour one is off), the home and usage cards show it as Weekly instead of mislabeling it as 5-hour.
    • Kimi model name and context meter — Kimi terminal sessions now show the active model (for example K2.7 Coding) and how full the context window is in the sidebar and top bar, same as the other agents.
    • Grok chat first message looks clean — The long project-memory instructions Grok needs on the first turn no longer fill the yellow user bubble; you only see what you typed.
    • Task mode catches up — You can start Grok or OpenCode as a terminal agent on a task (not only as chat), status badges only show “running” when an agent is actually working, and empty Task mode has a clear New Task button (⌘N).
    • Quieter background sessions — Grok sessions you leave open release their heavy helpers when you switch away, and unused Codex project connections stop hanging around, so the app uses less memory with many projects open.
    • Window size remembered — If you resize or move the app window, that size and place come back the next time you open agmux.
    • App data folder renamed to match agmux — Your projects, settings, and history move automatically from the old private folder name into `.agmux` on first open after update. Nothing to do by hand.
    • Built-in browser removed — The Browser button in the chat top bar and the side browser panel are gone. Web links still open in your normal system browser.
    • No “Rec” badges on model lists — The model picker no longer marks some Claude, OpenCode, or Grok models as recommended; every model is listed the same way.
    • Settings cleanup — Removed the Agentic terminal control; Issues dispatch instructions live on their own Issues page; chat summaries are local-only, and older Qwen2.5 models must be replaced with Qwen3 or Phi-4. Claude Auto mode is labeled as available on every plan, and Settings pages use tighter padding.
    • Friendlier tips and settings wording — Home-screen tips and several Settings descriptions drop engineering jargon so the product reads more clearly for everyday use.

    Fixed

    • Light mode is readable again on Teams, updates, and the file editor — Settings → Teams headings, the update prompt, editor tabs, the file filter, and ask/approval banners no longer go white-on-white when Appearance is Light. The update prompt also stays put when you click back into the app.
    • “Manual download needed” no longer pops up over and over — Closing that update notice keeps it closed for the rest of the session, and a failed background update check no longer claims you need a full reinstall from the website.
    • Automatic updates recover from a failed install — If an auto-update fails, you see an error and can retry instead of a stuck “installing…” state.
    • What’s New no longer covers Welcome — On a first install, and when existing installs see the short “new options” pass, the What’s New sheet and notification prompt wait until you finish setup.
    • Finish and approval alerts honor setup — Turning off “Notify when an agent finishes” or “Notify when approval is needed” in first-run setup (or Settings → Notifications) actually stops those Mac notifications.
    • App no longer quits when dragging a file onto a terminal — Dragging a file from Finder into a Claude (or other) terminal session no longer closes the whole app mid-drag. You can drop the file to paste its path into the prompt as before.
    • New Codex terminal sessions open cleanly — Starting a fresh Codex terminal no longer fails with a “failed to resume session” error, so it loads as usual and you can type right away.
    • Chats no longer appear twice in the sidebar — Starting a Grok chat, or a Claude or Codex chat from remote.agmux.dev, shows one entry on the Mac instead of the chat plus a matching terminal session with a messy model name.
    • Home no longer lists the same Codex chat twice — Codex chats show once on the home Recents list, matching the sidebar.
    • Idle terminals no longer sit in Active — The top-strip Active group only includes chats that are actually working, not every open terminal.
    • Cursor chats behave like every other chat — Cursor sessions show the Cursor app icon instead of a plain letter “C”, spin the same working indicator in the sidebar while answering (and clear it when the turn ends), and show how full the context window is in the top bar after a turn.
    • Cursor remembers Local vs Worktree — The Local / Worktree control under a new Cursor chat no longer snaps back to Worktree every time you open the composer. Pick Local once and new Cursor drafts stay on Local until you change it.
    • OpenCode model and context in the sidebar and top bar — OpenCode terminal sessions now show which model is running under the session name and a context-window meter in the top bar, same as Claude, Kimi, and Grok, instead of only “Terminal · now” with an empty row.
    • Grok chats stay on Grok models — The model menu in a Grok chat lists Grok models instead of Claude and Codex, and a new Grok draft no longer starts on a Cursor or Claude model.
    • Grok chats keep their reasoning after reopen — Prior thinking is shown again when you reopen a Grok chat, not only the reply text.
    • Grok terminal no longer double-notifies when done — When a Grok terminal session finishes in the background, you get one completion notice instead of two stacked ones.
    • Grok helpers stay out of the sidebar — Reviewers, writers, and other helpers Grok launches in the background, and one-off commands, no longer appear as extra chats in the project list on desktop or phone.
    • Jumping to an older prompt in Grok — Picking a past turn from the Timeline works with short prompts and can be repeated in the same session, and if a turn really is gone the terminal returns you to where you were instead of stopping part-way up.
    • Task mode keeps working agents and your last task — Opening Task mode no longer marks a live Grok or OpenCode terminal as failed, and your last selected task comes back even if you have more than one project.
    • “Worktree” from a project’s New menu — Choosing Worktree switches to Task mode and opens a new task for that project (its own branch for parallel work), instead of a dialog that often left the chat hard to find or never set up the branch at all.
    • Hidden task folders rediscovered with custom settings — Tasks you made with a custom folder location or “branch first” layout show up again when you reopen Task mode.
    • New Task keeps the error on screen — If the task folder is created but the agent fails to start, the dialog stays open with the error so you can fix it instead of closing silently.
    • Extra Codex agents on multi-folder tasks — Starting another Codex agent on a task that spans several folders no longer fails to open.
    • Commit works when design docs are part of the change — Creating a commit no longer fails with a red “git add failed / paths are ignored” error when a tracked file under an ignored folder (like `docs`) is included. Those files stage and commit as usual.
    • Phone send shows the Mac as working — Starting a Cursor or Claude chat from your phone keeps the desktop sidebar spinner going until the turn actually finishes.
    • Phone Cursor chats follow Supervised / Auto / Full — New Cursor chats from your phone use the permission you pick, not unrestricted tools.
    • Codex chats started from your phone stay clean — Starting a Codex chat from remote no longer dumps project instructions into the conversation.
    • Remote session status matches the Mac — A small spinner shows while an agent is working, an amber pulse means it needs your attention, and a green pulse means it finished and you have not looked yet. Green clears as soon as you open the session, including when you are already sitting in the chat.
    • Chat titles match between phone and Mac — Chats started from your phone get a normal short title on the Mac sidebar and on remote after the first message, instead of staying “New Grok Chat” or showing a temporary file path when a photo was attached. Grok chats are named while they are still working, sessions that were only named on the Mac now show that name on the phone, and renaming a session updates the title at the top of the open chat right away.
    • Remote model picker on web and phone — Choosing a different provider (Claude, Codex, Grok, OpenCode, Cursor) in the new-chat model menu opens that provider’s models instead of closing the menu. OpenCode and Cursor load the same full catalog from your Mac as the desktop app (with search), Grok no longer lists Composer, the OpenCode logo appears correctly, and a fresh chat defaults to Claude Opus 5.
    • New chat from a project on Remote — Each project in the remote session list has a + next to the count; tap it to open a draft chat already set to that project. The folder picker lists projects in the same order as the Mac sidebar, not by when each was created.
    • Tables in replies on your phone — Tables in agent replies render as real tables on the phone (with bold and code inside cells), instead of one long line of pipes.
    • Remote terminal no longer shows blank user lines for control keys — Clearing the prompt or interrupting a run does not leave empty yellow bubbles in the phone timeline.
    • Phone remote matches the app’s colors — Phone remote uses the same gold accent and black backdrop as the Mac app and website.
    • Remote control after site updates — If the remote service is briefly updated while your phone is connected, the phone and Mac reconnect on their own and keep your pairing.
    • Teams upload keeps going after a Codex approval — Approving a Codex tool no longer blocks that Mac’s Teams upload.
    • Linking a Mac asks you to confirm — Linking a Mac to a team from the browser now asks for confirmation first, so a link cannot be triggered silently.
    • Project memory tools on other people’s Macs — Shared project memory (the tools agents use to remember decisions) starts correctly when you install agmux from the app package, including Codex and Grok terminals — not only on a developer machine that still has the source folder.
    • Safer file tools — Deleting or renaming files cannot reach outside your project folder, image attach only reads allowed paths, and @-mention file browsing stays inside the project too.
  3. v3.1.4

    Improved

    • Teams leaderboard drill-down — Click a person on the PR leaderboard to open their metrics for that same week (model mix, token composition, cache hit) so you can see why TOK/pt or $/pt is high.
    • Teams site on phones — On a narrow screen the top nav wraps instead of clipping, wide tables scroll sideways, and the PR leaderboard shows as cards instead of a cut-off table.

    Fixed

    • Grok timeline jump — Clicking an older prompt in the Session timeline scrolls the Grok terminal back to that turn (Grok’s full-screen UI has no terminal scrollback, so jump now searches and scrolls inside Grok itself).
    • App freezes during long chats — The window should stay responsive while agents run many tool steps; session timeline no longer overloads the app when updating the turn badge.
    • Blank frozen window after long sessions — If the built-in browser view stops responding, the app reloads it automatically so you do not have to quit and reopen.
    • Sluggish app after very large chat history cleanup — On launch, agmux reclaims wasted space left behind after old oversized logs were removed so the app stays snappy.
  4. v3.1.3

    More accurate costs, Kimi Code, smarter titles, and a more reliable phone remote.

    This release tightens Usage and Teams spend numbers, adds Kimi as a terminal provider, refreshes chat titles as you keep talking, and fixes remote loading hangs on your phone.

    New

    • Kimi Code — Start a Kimi terminal chat from the provider picker (replaces the older Droid option). Existing chats still open normally.
    • Teams PR leaderboard — On teams.agmux.dev, owners can turn on a leaderboard that ranks people by merged pull requests and usage after linking a GitHub organization.
    • On-device model for titles — Chat titles and short summaries use a small model that runs on your Mac (one-time download, no API key). First launch asks you to install it; you can upgrade later to newer options like Qwen3.

    Improved

    • Up-to-date cost estimates for new models — When a model isn’t in agmux’s built-in price list, estimated cost uses live public rates (OpenRouter) instead of guessing. If no price is known, cost shows as zero rather than a made-up number.
    • Cursor chat model list — Starting a Cursor chat shows every model available on your Cursor plan (not only Composer), so you can pick the same models Cursor itself offers for your account.
    • Teams member profile photos — Team people lists show each person’s GitHub or Google profile picture instead of only colored initials.
    • Smarter chat titles as you keep talking — After each new message in a long chat, the sidebar title updates from the whole conversation (with more weight on what you just asked). Short “go ahead” / “do it” replies no longer rename the chat. Right-click a chat and choose Resummarize anytime to refresh the title.
    • Teams leaderboard table — Member names line up cleanly (no more right-aligned handles), GitHub-style logins show as readable names, and you can click any column header to sort by merged PRs, tokens, tokens per PR, $/pt, and more.
    • Teams leaderboard for Nenu — When a team links the NenuAI GitHub organization, ranks use complexity points from each pull request’s Project Size (XS through XXL) instead of only small/medium/large by lines changed.
    • Teams groups and manager views — On teams.agmux.dev, owners can create groups and limit what each manager sees to specific groups or people.
    • Select text in terminals — Hold Shift while dragging, or use Shift+arrow keys, to select and copy text in agent terminals—even when the agent is using full-screen or mouse mode.
    • Terminal links open in your browser — Web links in agent terminals open in your system browser (not the in-app side panel).

    Fixed

    • Session timeline jump — Clicking a turn in the Session timeline scrolls the chat or terminal back to that prompt (with a brief highlight in chat). Works for Claude, Grok, Codex, Kimi, and OpenCode sessions.
    • Usage and Teams cost estimates — Estimated spend for Codex, Grok, and Claude models is much more accurate. Codex no longer double-counts cached prompt tokens (which inflated costs by several times), Grok now uses real token and cache numbers from sessions instead of rough guesses, and model rates match current public pricing (including Fable, Sonnet 5 intro pricing, and the July GPT-5.6 Terra/Luna cuts). The same numbers feed the Usage tab, Settings → Your Data, and Teams.
    • Composer removed from xAI chat — New Grok chats no longer offer Composer as a model under xAI. Composer stays available under Cursor chat.
    • Grok slash-skill chat titles — Starting a Grok terminal chat with only a slash skill (like `/checkagentsdk` or `/commit`) now gets a real sidebar title instead of staying “New Grok Thread” or showing the raw command.
    • Search for hyphenated words — Searching for phrases like “multi-prompt titles” in global search (⌘⇧F) finds matching chats again. Hyphenated terms were treated as “exclude this word,” so results came back empty.
    • Sessions stuck on “Loading… / Fetching history from your Mac” on your phone — Opening a session from your phone now shows the conversation right away instead of hanging on the loading screen. Your Mac was re-sending the whole session list and every open conversation every couple of seconds even when nothing had changed, which clogged the connection; it now sends updates only when something actually changes, and it stays quiet entirely when no phone is connected. This also cuts the data agmux uploads in the background to a small fraction of what it was.
    • Remote Control stuck on “Online” after the connection died — If the link to your phone silently broke, your Mac kept reporting Online while nothing actually reached the phone until you restarted the app. It now notices within about a minute and reconnects on its own.
    • What's New logo — After an update, the release notes popup shows the agmux app icon instead of a generic X mark.
    • Multi-Agent option removed — Starting a new chat no longer lists Multi-Agent in the provider picker. Use Claude, Codex, Grok, or another provider as usual.
    • App freeze with blank windows — Long Grok/Claude terminal sessions no longer fill the local database with huge terminal scrapes, which could make the app hang and leave windows blank. Old oversized scrapes are cleaned up on launch.
    • Thread name summaries — Auto-generated chat titles work again with the on-device model (they were failing with “No title returned”).
  5. v3.1.2

    Richer Teams dashboards and a more reliable Grok terminal.

    Managers get budgets, tool breakdowns, and exports; usage charts fill from real agent activity; Grok terminal refresh and scroll behave as expected.

    New

    • Teams budgets and exports — Managers can set a monthly spend budget with a month-end projection, download usage as a spreadsheet, and review a simple log of team changes (joins, budget edits, exports).
    • Tool activity on Teams — See work broken down by kind (terminal, edits, reads, search, web, helpers) plus how many files changed and lines added or removed — counts only, never your code or paths.

    Improved

    • Teams charts show real activity — Usage now comes from your actual Claude, Codex, and Grok sessions so dashboards fill in as you work instead of staying empty.
    • Friendlier Teams labels — Providers and models show as readable names (Claude Code, Claude Opus 4.6, Grok Code Fast) instead of raw codes.
    • Grok cost estimates — Usage and Teams cost figures for Grok use real rates instead of showing $0.

    Fixed

    • Grok terminal refresh — The refresh control next to the branch name redraws the Grok terminal again (including in split view).
    • Smoother Grok trackpad scroll — Scrolling a Grok conversation moves line by line instead of jumping by whole pages.
    • Teams Sync now — Syncing from Settings always rechecks and tells you whether something uploaded or you were already up to date.
  6. v3.1.1

    Multi-Agent chats, Teams usage, and a built-in browser.

    Start Multi-Agent from a new chat, share hourly team usage under Settings → Teams, and open pages beside your work. Grok terminals scroll with the wheel and stay correct after /clear.

    New

    • Multi-Agent chats — When starting a new chat, pick Multi-Agent and choose a main model (Claude, Codex, Grok, and others). You talk to that main agent like a normal chat; it can bring other agents in behind the scenes to help.
    • agmux Teams — Under Settings → Teams, sign in and join a team. See simple team usage in the app and on teams.agmux.dev. Only hourly summaries are shared — never your prompts, code, or file paths — and you review what is shared before joining.
    • Built-in browser — Open a browser from the chat top bar to view pages beside your work (back, forward, reload, or open in your system browser).

    Improved

    • Multi-Agent model picker — Main models show the right logos, and effort and permission controls match a normal chat for that model.
    • Grok terminal scrolling — Trackpad and mouse wheel scroll the Grok conversation instead of moving the cursor in the prompt.

    Fixed

    • Grok after /clear — Starting a fresh Grok session with `/clear` no longer gets stuck on the old session when you return to the tab.
  7. v3.1.0

    Control agents from your phone — plus timeline, orchestrator, and shared project memory.

    Run Claude, Codex, and Grok from your phone while the Mac keeps working. On the desktop: jump past turns with Timeline, watch every active agent from Orchestrator, share memory across chats, and dispatch GitHub issues to a new agent.

    New

    • Phone remote control — Turn on Remote control under Settings to manage Claude, Codex, and Grok chats and terminals from your phone at agmux.dev/remote. Pair with a short code (QR link), see your sessions, read the conversation, send messages, stop a run, and approve or deny tool requests. While remote is on, the Mac can stay awake with the lid closed so agents keep going when you’re away. Turn remote off anytime to disconnect phones (even if the Mac was offline when you turned it off).
    • Session timeline — On any agent chat or terminal, open Timeline in the top bar to see past turns in this session (what you asked, a short summary of what the agent did, done/running status, and how long ago). Click a turn to jump back to that point in the conversation.
    • Issues tab — Browse open GitHub issues for your project (uses your existing GitHub login from the terminal). Pick an issue and Dispatch to agent to start a new chat on it, with the issue title and description filled in. Add extra repos to track if you like.
    • Orchestrator tab — See every active agent as a tile: who’s working, who needs your OK, last action, and approve/deny without hunting through the sidebar. The full agent list stays in the sidebar while you’re there. Message or launch agents from the composer at the bottom, including pasting or dropping images into the prompt (same as normal chat).
    • Horizontal agent tabs — In Settings → Appearance, switch Agent tabs to Horizontal for a browser-style top bar: project pills, sessions in a strip (active ones first), compact + / compose to start new agents, and full-width chat. Vertical (sidebar) stays the default. Includes Running (live sessions across projects) and Your Threads (opened sessions stay until you close them with × — like multi-view tabs for the top bar).
    • Smarter chat search — Search finds text inside past messages and notes (not just chat titles), with short previews of the match.
    • Claude Cowork chat — When starting a new Claude chat, toggle Code / Cowork on the composer. Cowork is for everyday work (docs, files, research) instead of coding, still using your Claude subscription.
    • Shared project memory — Every chat and terminal in a project shares one memory (Claude, Grok, Codex, and others — including terminal mode). Agents can save decisions and facts so the next model or terminal session still knows them. Browse everything in the sidebar Memory tab (replaces the old Agents tab): durable memory, session history, and archived items now have separate views, with clear labels showing whether an entry was recorded by you, an agent, or an automatic summary. You can edit, archive, restore, resolve, and reopen entries there. Agents can search past memory and sessions, open a summary, then pull a short slice of the chat log if they need more — without pasting whole histories. If an agent forgets to write a session note, a local model can fill a short handoff (only then — never overwrites what the agent wrote). New sessions can get a tiny recent session list (titles only; optional under Settings → Behavior). Turn project memory off anytime under Settings → Behavior → Project memory (on by default).
    • Update project path & move threads — Right-click a project to Update project path… when the folder moved on disk (the sidebar name follows the folder, and chats that still used the old path come along). Or Move all threads… to another project if you reorganized folders.

    Improved

    • Richer first-time setup — Setup walks through visual themes, fonts, vertical vs horizontal session tabs, what ⌘N / compose opens, which AI drafts commit messages, notifications, chat vs terminal defaults, and an optional local AI model download. Re-run anytime from Settings → About → Run setup. After updates that add new setup choices, a short refresh may appear once.
    • Tasks on the right of chat — To-do lists and plans (Claude, Cowork, Codex, Grok, OpenCode, and local models) show as a floating checklist on the right of the chat, with progress and a collapse chip — no longer a bar above the message box. Chat text and tool lines stay lined up with the left edge of the message box.
    • View commit after you push — When a commit finishes, use View commit (bottom left of the success dialog) to open that commit on GitHub.
    • Click a notification to open that chat — When an agent finishes or needs your OK while you’re in another app, clicking the macOS notification brings you straight to that conversation. You can also click a row in the in-app notification list to jump there.
    • Codex says when tools are still starting — If Codex is still connecting its tools at the start of a turn, the status line shows starting MCP (with the tool name) instead of a silent “thinking.”
    • Finish toast clears when you open the chat — Opening a finished agent’s chat (from the sidebar, a tab, or split view) dismisses its “Finished” toast so it doesn’t linger.

    Fixed

    • Grok helper workers stay out of the sidebar — When Grok Terminal spins up short helper workers for a task, those no longer show up as extra chats in the project list (and the list rows stay lined up).
    • Grok token history in Usage — Past Grok chats (including terminal ones) now show up in the token charts and totals, not only the SuperGrok credit bar.
    • Selected items readable in light mode — The highlighted Settings tab and the selected chat in the sidebar no longer use pale text on a pale background.
    • Smarter Grok approval pings — While Grok’s Auto mode is still deciding (classifying), the sidebar no longer flashes amber early. You only get the amber “needs approval” pulse and Mac notification when the Yes/No menu is actually on screen — not for silent auto-approves, and not during the wait. After you approve or deny, the amber clears right away (not only when the command finishes).
    • Codex terminal model label — When you switch models inside a Codex Terminal session, the sidebar and top bar update to the new model instead of staying on the old name.
    • Codex terminal context meter — The top bar shows how full the context window is for Codex Terminal sessions (same as Codex chat), and it updates as the session continues.
  8. v3.0.0

    A major refresh — new models, glass UI, and agents that keep working with the lid closed.

    agmux 3.0 brings GPT-5.6 and Grok 4.5, a unified glass chat experience for every agent, SuperGrok usage on Home, and the option to keep agents running when your MacBook is shut.

    New

    • GPT-5.6 models — Codex and OpenCode now include Sol (default), Terra, and Luna. Sol and Terra also offer Max and Ultra reasoning levels.
    • Grok 4.5 — New default Grok model. Existing threads keep their old model names.
    • Codex Auto Review — A new permission option that lets Codex auto-review approval requests for you (alongside Default and Full Permissions).
    • Grok usage on Home & Usage — See SuperGrok credit use (how much is left and when it resets), plus Grok session history in the same charts as Claude and Codex.
    • Show only running threads — Right-click a project in the sidebar to hide idle history and keep only threads that are working, need your attention, or are open.
    • Keep running with the lid closed — Under Settings → General, allow agents to keep going with the MacBook lid shut (works on power and battery). Uses Touch ID once to set up; normal sleep returns when the agent finishes or you quit the app.

    Improved

    • Fresh glass look throughout — Chat, Home, Usage, Settings, the sidebar, and the slide-out terminal share the same soft emerald frosted-glass style: translucent panels, quiet dividers, and a calmer overall surface.
    • Cleaner chat for every agent — Claude, Grok, OpenCode, and Codex chats now share the same layout: plain agent replies (not speech bubbles), short one-line tool rows you can expand for details, and finished turns that fold into a simple “Thought for …” summary. Click to expand the full step-by-step again.
    • Smarter message composer — Model, reasoning effort, permissions, and send sit on one row. Effort is a Faster ↔ Smarter slider (same control everywhere), the context meter is a clear ring, and menus match the glass look.
    • Smoother chat — Replies stream more naturally, expansions animate instead of snapping, and tables/code blocks match the glass style (with a copy button on code).
    • Smarter commit messages — The commit dialog drafts a message automatically (and you can pick which model does it under Settings → General).
    • Clearer agent-done sound — The default finish chime is a soft double-hit instead of a low hum.
    • Lighter on memory when terminals sit unused — Idle background terminals free memory after a couple of minutes and come back when you open them again. Grok also releases heavy helper tools it started, so long sessions use less RAM.
    • Simpler Settings — Removed tabs that didn’t do anything. Models is now Summaries; terminal history length lives under General. Quick Open can start any agent type, not just a few.
    • Keep-awake while waiting on you — The Mac stays awake not only while the agent is working, but also while it’s waiting for your approval.
    • Tidier project menu — Removed the unused “Edit conventions” item from the project right-click menu.

    Fixed

    • Settings and sidebar look right in light mode — Text, cards, and +/− line counts stay readable on a bright theme.
    • Codex model list is cleaner — Retired models are gone; GPT-5.3 Codex no longer appears twice.
    • Context meter stays accurate for Grok — Updates while the agent is working, and no longer sticks after you compact a long chat.
    • Codex sub-agents read clearly — Launching helpers shows one stable “Launched … Agent” line (not a clutter of internal steps), live and when you reopen the chat.
    • Codex Terminal starts cleanly — No more frozen “Fitting terminal…”, sudden window crash, “session not found,” or an extra Chat thread appearing in the sidebar.
    • Codex working spinner clears on time — Stops soon after the agent finishes, and clears right away if you press Escape. Stray red “/” badge next to the title is gone.
    • Grok (and similar) terminals are more reliable — No endless “Fitting terminal…,” no garbled layout when you return to a resting session, correct +/− counts in the sidebar and completion toast, and the working spinner clears when you press Escape.
    • Grok asks for attention properly — When Grok asks you a question, the sidebar pulses amber and you get a Mac notification.
    • Terminal refresh button works again — Clicking refresh next to the branch name resizes the terminal instead of dragging the window.
    • Reopening a terminal doesn’t reset its time to “now” — Last activity stays honest when you open an existing Grok, Droid, or OpenCode terminal.
    • Home shows friendly model names — e.g. Grok 4.5 instead of a raw code like `grok-4.5`.
    • In-app updates after the rename — Auto-update works again after the Xanom → agmux name change. If an update still can’t install, a banner points you to agmux.dev.
  9. v2.2.0

    Now called agmux — leaner on your CPU and friendlier to drag-and-drop.

    This release renames Xanom to agmux and lands a round of performance work: running many terminal sessions at once no longer heats up your machine, off-screen terminals stop repainting, plus fixes for file drops and terminal offloading.

    New

    • New name: agmux — Xanom is now agmux, with a refreshed logo and app icons across macOS, Windows, iOS, and Android.

    Improved

    • Much lower CPU with many terminals open — Running several Claude terminal sessions at once no longer heats up the machine. Idle terminal sessions no longer wake the CPU on a timer, background sessions stop polling git and decoding output they aren't showing, and only the visible session refreshes its branch/status — so CPU stays flat as you open more sessions instead of climbing with each one.
    • Home screen no longer keeps the GPU busy — A background Codex or shell terminal that was still streaming would keep repainting off-screen while you were on the Home screen (or any other tab), holding CPU/GPU usage up. Off-screen terminals now pause rendering whenever they aren't the visible view.

    Fixed

    • Dropping a non-image file now pastes its path — Dragging a PDF, document, or any non-image file from Finder into a chat composer or terminal now inserts its full path (quoted when it contains spaces); previously only images were handled and other files did nothing. Images continue to attach as before.
    • Terminals no longer unload while an agent is waiting on you — A backgrounded Claude session with a pending permission prompt, or a shell terminal running a full-screen interactive agent, now stays loaded instead of being offloaded after inactivity, so the question isn't torn down out from under you.
  10. v2.1.4

    Buttery-smooth chat, instant launch.

    This release is a focused performance pass — chat streaming, the sidebar, and app startup are all noticeably snappier — plus a couple of Codex protocol fixes and a fresh app icon.

    New

    • Claude Sonnet 5 — Added to the model picker with proper display-name formatting.

    Improved

    • Smoother chat streaming — Markdown rendering is now memoized and streaming updates are batched, cutting redraw overhead during long responses across Claude, Codex, and OpenCode sessions.
    • Snappier sidebar and project list — Zustand store subscriptions are scoped more precisely and background polling pauses while the window is hidden, so the sidebar re-renders far less during heavy activity.
    • Faster app launch — The settings dialog and CodeMirror language modes now load on demand instead of bundling upfront, shrinking the startup bundle.
    • Codex sidebar loads instantly — The thread list no longer waits on reading every session's model from disk; model labels backfill in the background as they resolve, and app startup no longer blocks on this fetch.
    • Refreshed app icon — New icon artwork across macOS, Windows, iOS, and Android.

    Fixed

    • Codex thread rename, compaction, and rate-limit status work again — Updated to match a Codex app-server protocol rename that had silently broken these actions.
    • Model labels in the thread header show proper names — Claude and Codex model slugs are now prettified (e.g. "claude-sonnet-5" → "Sonnet 5") instead of raw slugs.
    • Streaming updates no longer stall — Fixed a timing edge case where coalesced streaming deltas could be delayed past their flush deadline.
  11. v2.1.3

    Cursor joins the lineup — a new agent, a new flagship Claude model, and clearer multi-agent views.

    Xanom 2.1.3 adds Cursor as a fully supported coding agent, introduces Anthropic's new Claude Fable 5 model, and makes collaborating agents and Codex sessions easier to follow and more reliable.

    New

    • Cursor agent support — Run Cursor as a first-class coding agent in both chat and task modes, with the same worktree isolation as your other agents.
    • Claude Fable 5 — Pick Anthropic's most capable model, with a 1M-token context window, right from the model dropdown.
    • Subagent threads — Agents spawned during a run now show up as their own threads, so you can follow exactly what each collaborating agent is doing.

    Improved

    • Clearer multi-agent view — Collaborating agents are visualized more clearly, making it easier to see who's working on what.
    • Smoother Codex sessions — Codex handles concurrent work and conversation history more reliably.

    Fixed

    • Cleaner task shutdown — Task agents now stop properly when a task ends or is archived, so stray background processes no longer linger.
  12. v2.1.2

    Claude Opus 4.8, a faster Codex, and a smoother long-running app.

    This release adds Anthropic's new Opus 4.8 flagship model, brings the Priority service tier and smarter project defaults to Codex, and clears up resource buildup that could slow the app down over multi-day sessions.

    New

    • Claude Opus 4.8 (1M context) — Anthropic's latest flagship is now selectable in the model picker, with a full 1M-token context window.

    Improved

    • XHigh & Max reasoning on Opus 4.8 — The highest extended-thinking effort levels now work with Opus 4.8 (and still work on 4.7).
    • Faster Codex responses — Codex now runs on the Priority service tier for quicker turnarounds.
    • Codex inherits your project defaults — New Codex chats automatically pick up the workspace's configured model and reasoning effort, while still honoring any model or effort you set manually.
    • Codex remembers fast mode — Your fast-mode preference now persists across new chats.
    • Cleaner input fields — Lighter borders and improved focus states across the chat inputs.

    Fixed

    • Long inline code wraps — Long monospace snippets no longer overflow or stretch the message column.
    • No more process buildup over long sessions — Stopped agents are now fully cleaned up, so the app no longer accumulates leftover "zombie" processes that dragged down system performance during multi-day sessions.
    • Reliable Claude session detection — Fixed a race when switching threads quickly that could leave orphaned file watchers running in the background.
  13. v2.1.1

    Stability and CLI-compatibility fixes — Xanom now survives long-running sessions and works with the latest Codex and Claude CLIs.

    A maintenance release focused on subprocess hygiene, macOS input fidelity, updated agent CLI flags, and a smoother chat-composer experience for Claude.

    New

    • Grok per-thread chat sessions — Each Grok SDK thread now runs its own `grok agent stdio` process, so per-thread model, reasoning effort, and permission settings actually stick. Filesystem reads outside the workspace are gated by an approval prompt, and chat history survives an app restart.
    • AskUserQuestion picker — When Claude asks a multiple-choice question in an SDK chat, you now get a real interactive option picker instead of a text input.
    • Complex-script rendering tip — If a Claude PTY chat is rendering Tamil, Devanagari, Arabic, or another complex script and the glyphs misalign, Xanom now shows a one-time amber tip suggesting you switch that thread to SDK chat mode (which shapes correctly).

    Improved

    • Picking Opus from the chat composer always opens a real chat — The new-chat composer no longer silently drops you into the \`claude\` CLI in an xterm; Claude submissions from the composer always create an SDK chat thread.
    • Approval toast and commit dialog polish — Smaller pre-release fixes to the approval banner, commit-message flow, and Claude SDK session view.

    Fixed

    • Holding Shift no longer scrambles capital letters on macOS — Xanom now disables the macOS press-and-hold accent popup for its own bundle, so holding Shift to type capitals in xterm-backed Claude / Codex sessions no longer duplicates or reorders keystrokes. (The fix activates on the *next* launch after install.)
    • Codex spawns work again on the latest CLI — The removed \`--full-auto\` flag is replaced with the equivalent \`--sandbox workspace-write --ask-for-approval never\`, so Codex sessions no longer exit before the TUI renders. Warp shell-out (\`codex exec\`) is updated to match.
    • Zombie subprocess pile-up on long uptime — After ~2 days of uptime, timed-out CLI calls (thread-name summarization, Cmd+K Ask AI, commit-message generation, task spawns) could accumulate 600+ zombie processes and drive load average past 300. Subprocesses are now reliably killed and reaped on timeout.
    • DMG sidecar packaging — The release DMG now bundles the sidecar Node dependencies correctly.
    • Claude Agent SDK bumped to v0.3.145 and OpenCode SDK bumped to v1.15.6 — picks up upstream fixes from both providers.
  14. v2.1.0

    Meet Grok — Xanom now manages a fifth coding agent.

    v2.1.0 brings Grok in as a first-class agent alongside Claude, Codex, Droid, and OpenCode, plus a home screen that loads instantly, a commit dialog that remembers where you left off, and a round of stability fixes for running multiple agent sessions at once.

    New

    • Grok agent support — Start a thread with Grok and chat just like you do with Claude, including session discovery, resume-after-restart, model selection, and live context-usage tracking.
    • Installer setup instructions — The macOS installer window now shows the exact one-line command to clear Apple's quarantine flag, so the app launches cleanly the first time.

    Improved

    • Commit dialog remembers your progress — Close the commit dialog mid-message or mid-push, do something else, and reopen it to find your subject, body, and progress exactly where you left them.
    • Instant home screen — Discovered Claude, Codex, and Droid sessions now appear immediately from cache instead of flashing empty and slowly refilling.
    • Lower CPU with multiple terminals — Hidden terminal tabs stop rendering while their pane is inactive, cutting background CPU when several terminals are open.

    Fixed

    • Concurrent Codex chats no longer cross-talk — Running two Codex chats in the same workspace no longer leaks one chat's output into the other.
    • Stuck approval prompts — Approval toasts that were already handled elsewhere no longer linger, and you can now dismiss a toast manually with an X button.
    • Grok terminal colors — Grok's terminal UI now renders in full color instead of a washed-out 16-color palette.
    • Stale session rows — Removing a thread no longer leaves outdated Grok session entries behind in the sidebar.
    • Claude terminal startup — Fixed Claude's terminal-mode startup when running with bypass-permissions enabled (#73).
  15. v2.0.8

    Lighter on your Mac, easier on your eyes, and a smarter top bar.

    This release brings major performance improvements when Xanom is running in the background, a fully theme-aware light mode, and a brand-new status row in the top bar that surfaces usage, quotas, and pacing at a glance.

    New

    • Top bar status row — A second row under the breadcrumb shows live clock, context-usage %, Claude session/weekly quota bars, and pacing deltas. Hidden in split-pane mode.
    • Per-provider lock icon — The bypass-permissions toggle now works for every provider: Claude (`--dangerously-skip-permissions`), Codex (`--full-auto`), OpenCode (`permissionMode`), and MLX (auto-approve). Tooltip names the flag per provider.
    • Worktree branch chip — Top bar highlights the worktree branch in green when a thread is running inside a worktree.
    • Move status line to top bar — New Settings toggle. When enabled, quota/pace/context info renders in the top bar and the Claude CLI's built-in statusline is suppressed so info isn't duplicated in the PTY.
    • Bulk delete archived threads — Hover the Archived panel to reveal a trash icon that wipes every archived thread across projects after a confirm.
    • Drag-and-drop file paths into the terminal — Dragging files (non-images) from Finder now pastes quoted paths into the prompt instead of being silently swallowed.

    Improved

    • Lower idle CPU when Xanom is backgrounded — Git-status and Claude-session polling now pause while the window is hidden and resume with an immediate refresh on focus. IPC coalescing matches the display refresh rate, and xterm cursor blink is suppressed when terminals are off-screen. Big win for laptops running multiple Claude terminals.
    • Light-mode coverage — Sidebar hover/active states, tab bars, the commit dialog, git sidebar, terminal panel chrome, settings dialog theme previews, and confirmation modals all now adapt correctly in Light/Auto theme — no more white-on-white surfaces.
    • Top bar pacing deltas now visible — Fixed a frontend bug where the pace delta (e.g. "+5%" or "-3%") next to your quota was silently invisible. The colored delta now shows correctly.
    • Pace delta readability — Pace deltas are now wrapped in parens ("34% (-6%)") so the two percentages don't read as one number.
    • Claude Agent SDK updated — Bumped to v0.2.138 for Claude Code v2.1.132–138 parity. OpenCode SDK bumped to v1.14.46 with HTTP query fixes, MCP tool discovery fix, and a Plan Mode security fix.
    • Approval banner for Grep / Glob — Tools with a `path` field no longer get mis-rendered as file operations in the approval banner.

    Fixed

    • Codex no longer crashes when resuming a missing session — If a thread's saved Codex session was pruned (e.g. by `codex` upgrade or manual cleanup), the CLI used to exit instantly with "No saved session found". Xanom now checks for the session on disk and spawns fresh when it's missing.
    • Settings dialog opens cleanly in Light mode — The theme preview swatches no longer render pitch-black against light backgrounds.
    • Auto-approve state no longer drifts on thread switch — Switching between threads now keeps the auto-approve toggle in sync.
    • Terminal no longer flashes loading screen on rapid session switch — Fixed an xterm re-init flash caused by an unstable `isResume` prop.
  16. v2.0.5

    Run AI coding agents fully on-device with Apple's MLX — no cloud, no API keys.

    This release adds a complete local-model chat experience built on MLX. Pick a Qwen coder model, let Xanom install the runtime for you, and chat with an agent that can read, write, edit, and run commands on your machine — all without leaving your Mac.

    New

    • MLX local chat — Brand new provider that runs coding models entirely on your Apple Silicon Mac. Streaming responses, tool use, file edits, and bash execution work just like the cloud agents.
    • Local Models settings panel — Browse curated MLX models in Settings → Local Models, see which fit your hardware tier, and download them with live progress.
    • Auto-bootstrap installer — First time you open MLX chat, Xanom detects Python, creates a venv, and installs `mlx-lm` for you with a progress banner. No terminal commands required.
    • Model auto-discovery — Xanom finds models you've already downloaded via LM Studio or Hugging Face and lists them alongside the curated set.
    • Eject button on local models — One-click way to free RAM by stopping the local server from the model dropdown.
    • Sticky todo bar — Active task todos stay pinned at the top of TaskView while you scroll through the conversation.
    • TaskView terminal toggle — Open and hide an integrated terminal panel inside any task without leaving the workspace.

    Improved

    • Hardware-aware tuning — Xanom now picks a kv-cache size, max tokens, and concurrency settings that match your Mac's chip tier so local models stay fast.
    • Native tool calling for MLX — Qwen 2.5-Coder uses the model's native tool-call format for cleaner, faster tool execution. Qwen 3-Coder automatically falls back to the XML protocol that works best for it.
    • Prettier model names — The provider/model dropdown shows readable names like "Qwen 2.5 Coder 32B" instead of raw Hugging Face IDs, while preserving tags like A3B.
    • Local/Worktree branch indicator for MLX — MLX threads now show the same workspace + branch chip as the cloud providers.
    • Provider dropdown grouping — MLX models are grouped by source (curated, LM Studio, Hugging Face) so you can find the one you want quickly.

    Fixed

    • MLX chat history now persists — Conversations survive app restarts instead of resetting to empty.
    • Model-mismatch HF lookups — Fixed a bug where a stale model arg caused MLX to re-download files that were already on disk.
    • Local server lifecycle — Cleaner shutdown, orphan cleanup on startup, and graceful kill instead of leaked `mlx_lm.server` processes.
    • Image drops on MLX threads — Now show a clear "not supported" message instead of silently failing.
    • Approval banner reliability — Fixed a race where approval prompts could be missed for long-running tool calls.
    • Sidebar project state — Collapsed/expanded state in agent mode now persists across app restarts.
    • Tab titles with ANSI codes — Stripped escape sequences so tab labels show the actual session name instead of color codes.
  17. v2.0.4

    Multi-tab terminals, smarter sidebar badges, and a fix for the lock-icon crash on fresh Claude sessions.

    This release brings tabbed shells to IDE mode, a configurable worktree folder layout, friendlier pace labels, and a handful of fixes that quietly remove papercuts you've been seeing in the sidebar and on long-running OpenCode turns.

    New

    • Tabbed terminals in IDE mode — The bottom terminal panel now supports multiple shells side-by-side. Click the + to spawn another shell in the same working directory, switch with a click, close individual tabs, or close them all to dismiss the panel.
    • Branch-first worktree layout — New Settings toggle that organizes task worktrees as `<root>/<branch>/<repo>` instead of `<root>/<repo>/<branch>`. Useful when you tend to think branch-first and want sibling repos grouped under one feature.
    • Commit button in task worktree header — Each task worktree now has a dedicated Commit button in the header that opens a slimmed-down commit dialog (no Create PR — that lives in its own button).
    • Per-file diff counts in Codex sessions — Codex `apply_patch` blocks now render with a colored unified-diff style and show a `+N / -M` summary per file, matching what you already see for Claude sessions.

    Improved

    • Sidebar diff stats stay fresh — The `+lines / -lines` badge next to each Claude session now updates live as the agent edits files. Sessions whose first scan landed before any tool-use diffs were on disk no longer get stuck at `0+ / 0-` until you click them.
    • Model badge shows on cold start — Claude sessions now display their model in the sidebar even when the most recent transcript chunk doesn't contain an assistant turn (long tool result, mid-tool-call, etc.). No more opening a session just to learn what model it's on.
    • OpenCode handles long agent turns — Long-running OpenCode SDK turns no longer surface a misleading "timed out" error after 30 seconds. The Stop button stays visible for the full turn and turn-end is signaled cleanly when the agent finishes.
    • Friendlier pace labels — Usage/pace badges now read "Behind pace by X%", "On track", "Ahead of pace by X%", or "Well over pace by X%" with a sensible decimal for small deltas.
    • Polished New Task dialog — Surfaces, borders, and the error banner now respect light/dark mode and feel more consistent with the rest of the UI.

    Fixed

    • Lock-icon no longer crashes a fresh Claude session — Toggling the permission-skipping (lock) icon on a brand-new Claude terminal session before sending any message previously crashed the TUI with `No conversation found with session ID: …`. Xanom now verifies the underlying transcript actually has a real turn before passing `--resume`, and otherwise starts cleanly.
    • OpenCode threads receive their first-message attachments — Image attachments handed off from the draft chat to a freshly-created OpenCode SDK thread are now forwarded in the OpenCode-native shape, so the agent sees them on the very first turn instead of silently losing them.
    • Effort auto-downgrades when leaving Opus 4.7 — XHigh effort is restricted to Opus 4.7. Switching to any other model now automatically downgrades effort instead of leaving the session in an invalid state.
    • Files.persisted events surfaced from OpenCode — File-write events from the OpenCode SDK bridge now reach the frontend, so the UI can react when the agent actually persists files to disk.
  18. v2.0.3

    Task Mode is now available on every machine.

    A small follow-up to v2.0.2 that unlocks Task Mode for all users and picks up the latest Claude Agent SDK parity patch.

    New

    • Task Mode for everyone — The worktree-isolated task view (Cmd+Shift+T) is no longer gated to a single development machine. Toggle into task mode and run agents in their own git branches with the dedicated review sidebar.

    Improved

    • Claude Agent SDK — Updated to 0.2.123 for parity with Claude Code 2.1.123.
  19. v2.0.2

    Codex gets smarter, Claude chat feels lighter, and a handful of papercuts disappear.

    This release expands Codex with custom slash commands, attached images, persistent auto-approval rules, and an "Extra High" reasoning effort. Claude SDK chat is more compact and unified visually, multiview tab restoration is fixed, and dialogs/toasts are properly themed across the app.

    New

    • Codex slash commands — Type `/` in a Codex chat to run built-in commands or your own custom prompts from `~/.codex/prompts/`.
    • Image attachments in Codex chat — Drop or paste images straight into a draft Codex thread; they're sent with your first message.
    • Codex auto-approval rules — Approve once and Xanom can remember the decision for that command pattern, so trusted tool calls stop interrupting you.
    • "Extra High" reasoning effort for Codex — A new `xhigh` option for the deepest reasoning pass when you really want Codex to think.
    • MCP tool block — A dedicated, keyboard-accessible block for MCP tool calls in chat, with proper screen-reader support.

    Improved

    • Tighter Claude SDK chat layout — Reduced spacing around assistant messages, thinking blocks, and todo-list tool blocks so more of the conversation fits on screen.
    • Unified user message bubbles — User bubbles are now the same font size in Codex and Claude SDK chats.
    • Theme-aware approval toasts and dialogs — Approval toast text and buttons, the Quit Xanom confirmation, and the tool detail modal now respect the dark theme correctly.
    • Cleaner ThinkingBlock styling — Thinking blocks now match the visual style of the other tool blocks.
    • Faster CI release builds — Apple Silicon and Intel builds now run in parallel on self-hosted runners, so updates ship sooner.
    • Claude Agent SDK updated — Bumped to 0.2.122 (parity with Claude Code 2.1.122).

    Fixed

    • Multiview Claude tabs resume correctly — Restored Claude tabs in split view no longer fail with "no conversation found" after restarting the app.
    • Quit Xanom dialog no longer freezes — The Cmd+Q confirmation now properly transitions into the shutdown spinner instead of locking up.
    • Codex auto-approval failures fall through cleanly — When Codex can't auto-approve internally, it now prompts you manually instead of silently hanging on the request.
    • Codex image attachments clear after send — Pending images and references are properly cleaned up after the first message ships.
    • Tool detail modal background darkened — No more washed-out modal background in the chat interface.
  20. v2.0.1

    Polish pass — terminal redraw, light-mode visuals, and SDK chat reliability.

    Small but high-impact fixes for everyday flows: switching back to a terminal tab now repaints reliably, light mode no longer shows dark bands above editor tabs, and Claude SDK sessions resume against the right transcript more often.

    Improved

    • Terminal redraw on tab switch — Switching back to a terminal that was hidden no longer leaves a black panel until you resize the window; the redraw runs every frame for ~200ms so the paint always catches WKWebView's compositor.
    • Manual terminal refresh now triggers a real SIGWINCH — Hitting refresh on a stuck terminal wiggles the PTY size by one row and back, which forces TUI apps (Claude Code, vim, etc.) to repaint and clears any rendering artifacts.
    • xhigh effort level — The Claude effort selector now persists and restores `xhigh` alongside `low`, `medium`, `high`, and `max`.
    • Distinct accents for Skill, MCP, and other tools — Tool-use blocks now use different left-border colors so Skill calls (purple), MCP tools (cyan), and uncategorized tools (zinc) are easier to spot at a glance.
    • Light-mode editor and file tree — Removed a dark band above editor tabs and re-skinned the file tree filter input so they fit cleanly into a light workspace.
    • Stable input bar spacing — In SDK chat, the gap between the last message and the input bar no longer shifts as turns start and stop.

    Fixed

    • Thinking content no longer drops mid-turn — Streamed-text and streamed-thinking states are now tracked independently, so models that stream text live but emit the thinking block only in the final assistant message (extended-thinking summary mode, certain effort levels) keep their reasoning visible.
    • Claude SDK session resume binds to the right transcript — When the SDK reports a logical session ID that doesn't match the actual JSONL transcript filename, Xanom reconciles it from the first few user prompts and persists the corrected ID, so chat history loads cleanly on resume.
    • More accurate Codex pace tracking — Pace status now flips to behind/ahead on a smaller threshold and the weekly window stops dampening short bursts, so the pace label tracks current usage more closely.
  21. v2.0.0

    Xanom 2.0 — every coding agent, one home, one workflow.

    This release brings OpenCode to Xanom as a full chat experience alongside Claude, introduces a redesigned Task mode with isolated worktrees and built-in pull-request flow, and unifies every provider's sessions on a single home screen. Plus dozens of quality-of-life upgrades to usage tracking, the input bar, and the sidebar.

    New

    • OpenCode chat is here — Talk to OpenCode the same way you talk to Claude: file mentions, image drops, permission prompts, model picker, and live token + cost stats. No terminal required.
    • Sign in to OpenCode providers from inside Xanom — Add API keys or run OAuth flows for any OpenCode provider without leaving the app.
    • Browse every OpenCode model in one dropdown — Including providers you haven't connected yet, sorted by recents and grouped logically. Fuzzy-search across long lists.
    • Task mode — A dedicated workspace for running agents inside isolated git worktrees, with a built-in review sidebar, status pills, and per-task agent tabs.
    • One-click pull requests from a task — Create PRs straight from the task view, with auto-generated titles and descriptions.
    • Unified home screen — Every provider's recent sessions (Claude, Codex, OpenCode, Droid) show up in one deduplicated list with pretty model names.
    • Live usage overlay — See your current token burn, cost, and pacing in real time as the agent works.
    • Auto permission mode — Let Claude SDK chats run hands-free without approving every tool call.
    • Keep-awake — Xanom keeps your Mac from sleeping while an agent is actively running, so long jobs finish even if you walk away.
    • Live diff stats in the sidebar — See lines added/removed update in real time as the agent edits files.
    • Resumable local-model downloads — If a local LLM download gets interrupted, it picks up where it left off with a visible progress bar.
    • Did-you-know tips — Friendly tips that surface lesser-known features as you work.
    • Provider shown in the thread top bar — At-a-glance confirmation of which agent you're chatting with.

    Improved

    • Redesigned input bar — Cleaner layout with a live context ring, shared composer dropdown across providers, and consistent file-mention + image handling.
    • Revamped approval prompts — The approval toast now shows the full command on hover, with cleaner styling and proper routing for OpenCode.
    • Git sidebar overhaul — Reworked branches, diffs, and PR creation; branch matching is now case-insensitive.
    • Better model names everywhere — No more cryptic IDs in dropdowns, tabs, or session lists.
    • Smarter session resume — Reopening a Claude task resumes the existing session instead of starting fresh.
    • Project memory in Task mode — Xanom now remembers the last project you used and your worktree state across restarts.
    • Faster, calmer home screen — Duplicate sessions across providers are now collapsed into a single entry.
    • Tighter Codex chat — Updated session lifecycle and event handling for smoother streaming.
    • Better commit dialog and thread top bar — Refreshed visuals with clearer state indicators.

    Fixed

    • Phantom sessions are gone — Fixed an issue where deleted sessions could reappear in the sidebar.
    • Stale diff stats no longer linger — Numbers in the sidebar always reflect the actual state of your worktree.
    • Approval state stays in sync — No more leftover "approval pending" indicators after you've already responded.
    • Task-mode model picker remembers your choice — The model you select now persists across restarts.
    • Drafts auto-submit reliably — Fixed a race that could swallow the first message in a new task.
    • Toast notifications no longer fire mid-prompt — Completion toasts wait until the agent is actually done.
    • OpenCode tasks route through the SDK view — Drafts targeting OpenCode now open in the right chat experience.
    • Bundled OpenCode binary — Xanom auto-detects and ships its own OpenCode runtime, so you no longer need to install it separately.
    • Hono security patch — Updated the OpenCode SDK to pull in a security fix for the Hono web framework.
    • Markdown, terminal links, and command-block rendering glitches — Lots of small visual fixes across chat output.
  22. v1.1.3

    New Providers

    • OpenCode support — Launch and manage OpenCode sessions alongside your other agents, with full terminal integration.
    • Ollama Cloud support — Connect to Ollama Cloud models directly from the provider picker; cloud models now load eagerly so they appear instantly on hover.

    Ollama Improvements

    • New Ollama Terminal button — One-click new terminal with a centered model picker so you can jump into a local model in seconds.

    Claude Code

    • Terminal-only Claude Code — Claude Code now runs exclusively in the terminal view for a snappier, more consistent experience.
    • Five-level effort system — New `xhigh` reasoning mode joins low / medium / high / max, giving you finer control over how hard Claude thinks on tough problems.

    Terminal Rendering Fixes

    • Fixed garbled glyphs on Retina displays — Swapped the terminal renderer to Canvas to resolve the WebKit DPR bug that caused fuzzy or scrambled text.
    • No more duplicate-frame flashes — Terminal snapshot rehydration now uses offset-based dedup, so switching threads no longer flickers.

    UI Polish & Accessibility

    • Ctrl+Enter to submit — Added the keyboard shortcut for the task creation dialog so you can fly through the flow.
    • Better notification panel — The notifications history panel now has proper dialog semantics, focus management, and keyboard navigation.
    • Terminal errors surface in notifications — Failed terminal spawns now show up in the notification panel instead of disappearing silently.

    Other

    • Safer archival — Replaced the native browser confirm with Tauri's dialog for a cleaner, more reliable archive confirmation.
  23. v1.1.2

    Collapsible Sidebar Rail

    • Icon-only sidebar when collapsed — pressing ⌘B now shrinks the sidebar to a slim icon rail instead of hiding it completely, so you can still switch tabs and expand it without losing your place

    Scroll to Bottom in SDK Chat

    • Quick-scroll button — a "scroll to bottom" button now appears in Claude SDK chat when you scroll up, letting you jump back to the latest output instantly

    SDK Session Stability

    • Messages no longer lost on multiview reopen — if you sent a message right after reopening a split-view pane, it was silently dropped; now it's buffered and automatically retried
    • Slash commands no longer crash inactive sessions — typing a slash command when the SDK session isn't ready now shows an error message instead of crashing
    • Session cleanup always runs — closing a thread mid-turn no longer leaves the session running in the background

    Terminal Reliability

    • No more missing output before exit — terminal output that arrived just before a process exited could occasionally be lost; now all output is guaranteed to arrive before the exit notification

    Bug Fixes

    • Deleting Claude sessions with trailing-slash paths — project paths ending in `/` no longer cause session deletion to silently fail
    • Archived threads restore correctly — unarchiving a thread now works reliably even if the sidebar hasn't fully loaded yet
    • Droid sessions stay visible on spawn failure — if starting a Droid session fails, it no longer vanishes from the sidebar
    • Command palette keyboard guard — arrow keys in an empty command palette no longer cause unexpected behavior
    • Tab bar alignment — left padding is now correct when the sidebar is collapsed

    Under the Hood

    • Claude Agent SDK updated to v0.2.104 — picks up the latest stability fixes and improvements from the SDK
  24. v1.1.1

    Slash Commands in SDK Mode

    • Completely overhauled slash command handling — commands like /compact, /clear, and custom commands now route through a dedicated path instead of fragile regex detection, eliminating crashes and message disappearance
    • Slash commands work immediately — sending a slash command before the session is fully started now works reliably instead of hanging or crashing
    • Concurrent command protection — rapidly sending multiple slash commands no longer causes race conditions

    Clickable File Paths in Terminal

    • Cmd-click to open files — file paths printed in the terminal are now clickable links that open directly in the built-in editor

    Better Chat Rendering

    • Newlines display correctly — ASCII art, plain-text lists, and multi-line content from agents now render with proper line breaks instead of collapsing into a single line

    Smarter Approval Notifications

    • Tool name in notification title — approval notifications now show which tool needs approval (e.g. "Xanom — Bash Approval") so you can triage without switching windows
    • Dangerous command warnings — notifications flag potentially dangerous commands so you know when to pay extra attention

    Subagent Reliability

    • Stop button no longer gets stuck — when agents use sub-agents (like explore or search), the stop button stays responsive and the session doesn't stall mid-stream

    Thread Management

    • Archive and delete persist across restarts — deleting a Claude session now properly removes the transcript file so it doesn't reappear on next launch

    Terminal & IDE Improvements

    • Live font size changes — changing terminal font size no longer causes a full terminal rebuild; the resize is instant and seamless
    • All font sizes available — the quick appearance popover now shows every terminal font size option instead of every other one
    • Tab switching fixed — switching between terminal tabs in IDE mode now properly redraws the canvas instead of showing a blank pane
    • Quieter session handling — no more false "stream ended" error banners when you intentionally stop a session
  25. v1.1.0

    Two New AI Providers: Droid & OpenCode

    • Droid support — You can now run Droid sessions directly inside Xanom. Your model selection is remembered across threads, sessions auto-launch when you switch back to them, and loading spinners keep you informed while things start up.
    • OpenCode support — OpenCode is now available as a provider. Create threads with OpenCode just like you would with Claude Code or Codex.
    • Automatic session discovery — Droid sessions you've started outside Xanom are detected and surfaced in your project sidebar, so you can pick up where you left off.

    Command Palette

    • Cmd+K to search everything — A new command palette lets you quickly jump to any project, thread, or action with fuzzy search. Type a few letters and go.

    Redesigned Terminal Engine

    • Faster, smoother terminal — The terminal rendering engine has been completely rebuilt. Scrolling is smoother, text is crisper, and switching between tabs no longer freezes the screen.
    • Instant tab switching — When you switch back to a terminal tab, your scrollback is restored immediately instead of replaying line by line.
    • Better font handling — Changing your terminal font or font size now updates cleanly without garbled text or needing to restart the session.

    Archived Threads

    • Archive old threads — You can now archive threads you're done with to keep your sidebar clean. Archived threads are accessible from a dedicated panel, and you can unarchive them anytime.

    Notification History

    • Never miss a notification — A new notification history panel tracks all your agent notifications with unread indicators, so you can review what happened while you were away.

    Quick Appearance Switcher

    • Fast theme and font switching — A new popover lets you quickly change your theme and font without opening the full settings dialog.

    Bug Fixes

    • Fixed memory leaks — Switching between threads no longer leaves old sessions running in the background. Agent subprocesses (MCP servers, language servers, etc.) are now properly cleaned up when you navigate away.
    • Fixed SDK session resume — Resuming a Claude SDK chat session now works reliably, even when the session ID stored internally didn't match the one on disk.
    • Fixed terminal font size changes — Changing font size now properly updates the terminal subprocess dimensions, so text reflows correctly.
    • Fixed Droid terminal panels — The terminal and git sidebar toggles in Droid sessions now work as expected.
    • Fixed Droid spawn loop — A bug that caused Droid sessions to endlessly retry spawning on failure has been resolved.
    • Fixed hook delivery — Hook payloads for Claude and Droid relay scripts are now delivered reliably.
    • Fixed terminal rehydration artifacts — Leftover sentinel markers no longer appear when restoring a terminal session.
    • Fixed OpenCode plugin paths — File paths with special characters are now encoded correctly in OpenCode's relay plugin.
    • Fixed Homebrew cask publishing — Auto-update releases now publish to the Homebrew tap correctly on CI.
  26. v1.0.3

    IDE Mode

    • Full IDE layout — Switch to IDE mode with `Cmd+Shift+.` for a four-panel workspace: file tree, code editor, integrated terminal, and AI chat — all in one window
    • Tabbed terminals — Open multiple terminal sessions side-by-side within IDE mode, each with its own ghostty-web instance
    • Integrated AI chat — Chat with Claude directly in the IDE sidebar, with full SDK session support, history dropdown, and thread creation
    • Resizable panels — Drag to resize any of the four IDE zones to fit your workflow

    Quick Open

    • Cmd+P file search — Instantly find and open any file in your project with fuzzy matching, just like VS Code

    Git Integration

    • File tree status indicators — See which files are modified, added, or untracked at a glance with color-coded icons in the file tree
    • Right-click context menu — Open, reveal in Finder, copy path, or perform actions on files directly from the file tree

    Smart File Tracking

    • Auto-open on AI edit — When the AI agent edits a file, it automatically opens in your editor with an animated badge so you never miss a change

    Thread Management

    • Rename threads — Right-click any conversation thread to give it a custom name that persists across sessions

    Reliability Improvements

    • SDK session recovery — Chat sessions now properly detect and handle new vs. resumed threads, eliminating "could not resume session" errors
    • Fixed usage tracking — Token counts and cost tracking now update reliably
    • Scroll and accessibility fixes — Resolved nested scroll issues in editor tabs and improved screen reader support
  27. v1.0.2

    Undo File Changes

    • Rewind any turn — click "Undo changes" on any assistant message to revert all file modifications from that turn, with clear loading and success/error feedback

    Improved Tool Visibility

    • Better command previews — tool executions now show cleaner previews with truncated content for large file writes, so you can see what's happening without information overload
    • Dedicated thinking display — Claude's reasoning process is now shown in a distinct, collapsible block so you can follow along or hide it
    • Files changed cards — each turn now shows a summary card of which files were modified

    Smarter Approval Dialogs

    • Approval banner for tool use — tool approval requests now appear as a prominent banner at the bottom of the chat instead of inline, making them impossible to miss
    • User input questions — when Claude asks a question, it now uses the same banner UI for a more consistent, polished experience
    • Better fallback parsing — approval dialogs now gracefully handle edge cases, showing file paths and action types even when details are incomplete

    Codex Enhancements

    • Fast mode toggle — enable or disable fast mode for Codex sessions directly from the draft view
    • Effort and permission settings — effort level and permission mode choices now persist between sessions

    SDK Session Improvements

    • Slash command support — /compact and /clear commands now work properly in SDK chat sessions with automatic session recovery
    • Background agent tracking — sub-agents spawned during a session are now tracked and displayed in the chat
    • Token usage display — see detailed input/output/cache token counts and context window consumption during conversations
    • Compacting indicator — a visual indicator now appears when the SDK is compacting context to free up space
    • Session persistence — PTY sessions now survive app restarts so your sidebar threads stay intact

    Bug Fixes

    • Fixed animation consistency — all Codex message items now animate in consistently
    • Fixed tab management — improved tab display and pane cleanup in split view
  28. v1.0.1

    Undo File Changes in SDK Chat

    • Rewind button on turn summaries — After Claude edits your files in SDK chat mode, you can now click "Undo" on the turn summary to revert all file changes back to how they were before that turn

    Background Agent Tracking

    • Live status for background agents — When Claude dispatches agents in the background, you now see running/completed/failed badges with progress info instead of a silent spinner
    • Agent group headers update in real time — The collapsible agent group shows how many background agents are still running

    Smarter Approval Prompts

    • Human-readable approval details — Tool approval banners now show the actual file name and path (for file edits) or the command being run (for bash), instead of raw JSON
    • Graceful fallback for broken payloads — Even if approval data is truncated, Xanom extracts what it can and shows a friendly summary

    Codex Effort & Permission Controls

    • Reasoning effort selector — Choose between Low, Medium, and High reasoning effort for Codex sessions directly from the draft view
    • Permission mode toggle — Switch between default and full-access permission modes when starting a Codex session

    Codex Stability Improvements

    • Server disconnection recovery — If the Codex server crashes or disconnects, Xanom now detects it immediately, clears the spinner, and shows a clear error instead of hanging forever
    • 5-minute safety timeout — Stuck Codex turns that receive no response for 5 minutes are automatically cleared so you're never left waiting on a frozen session

    Files Changed Cards

    • Per-turn file change summary — SDK chat now shows a dedicated card listing all files that were created or modified during each turn, making it easy to see what changed at a glance

    Tab Switching Fixes

    • Sidebar syncs with active tab — Switching between tabs in split view now properly updates the file browser to show the correct project context

    Fun Working Indicators

    • 150+ playful status verbs — The SDK thinking spinner now cycles through a much larger variety of fun verbs like "Clauding", "Percolating", "Moonwalking", and "Flambéing" while your agent works
  29. v1.0.0

    Xanom 1.0

    • The big one. Xanom graduates to v1.0 — a complete AI coding agent manager for macOS with two powerful ways to interact with your agents.

    Claude Agent SDK Mode

    • Chat with Claude using the structured SDK — a new interaction mode that gives you rich, structured conversations alongside the classic terminal experience
    • See tool calls as they happen — watch Claude read files, edit code, run commands, and search your codebase with dedicated visual renderers for each tool type
    • Approve or reject tool use inline — approval banners show exactly what Claude wants to do, with options to allow once, always, or for the whole project
    • Pending approval queue — when multiple approvals stack up, see a count badge and work through them one by one

    Setup Wizard

    • Guided first-run experience — a 4-step setup wizard walks you through configuring Xanom when you first launch the app
    • Re-run anytime — find the "Re-run Setup Wizard" button in Settings > General if you need it again

    @ File Mentions

    • Reference files directly in your prompts — type @ in the input bar to get autocomplete suggestions from your project directory
    • Browse your project tree — the file mention popup lets you navigate folders and select files to include as context

    Thread Forking

    • Fork any conversation — branch off from any point in a thread to explore a different direction without losing the original
    • Preserved history — forked threads keep the full conversation up to the fork point

    Git Worktree Support

    • Isolated workspaces per thread — each agent thread can work in its own git worktree, keeping changes separate until you're ready to merge

    Draft Composer

    • Compose before you commit — write and refine your initial prompt in a draft view before spinning up an agent session
    • Pick your model upfront — choose provider and model from the draft view so the thread starts exactly how you want

    Smarter Tool Rendering

    • Inline todo lists — Claude's task lists now render inline with live status indicators (pending, in-progress, completed) instead of hidden behind a click
    • Skill names visible at a glance — see which skill Claude is invoking without expanding the tool block
    • Grouped tool activity — consecutive tool calls are visually grouped with loading spinners and colored status indicators
    • Plan follow-up prompts — when Claude completes a plan, get a follow-up banner to continue the conversation

    Paginated Chat History

    • Infinite scrollback — long conversations no longer hit a wall; scroll up to load earlier messages automatically with cursor-based pagination

    Improved Session Naming

    • Smarter thread titles — slash commands get instant deterministic names instead of waiting for LLM summarization
    • More accurate summaries — tightened prompts prevent overly embellished or generic thread names

    Context Ring

    • Better token usage display — the context ring now shows more accurate token counts for your conversation

    UI & Quality of Life

    • Light mode fixes — improved text visibility and contrast across the app in light mode
    • Image attachments — attach images to your prompts for visual context
    • Model selection dropdown — quickly switch models from the input bar with a clean dropdown UI

    Bug Fixes

    • Fixed stuck sidebar spinner — the processing indicator no longer gets stuck when an SDK session completes
    • Fixed chat scrollback issues — resolved a bug where long conversations would jump or fail to scroll properly
    • Fixed race conditions in session file watching — partial JSONL lines no longer cause parsing errors
    • Cleaner process cleanup — failed SDK sessions now properly clean up orphaned child processes
    • Sidecar error handling — unhandled rejections and exit conditions are now caught and surfaced properly

    Streamlined Providers

    • Focused on Claude Code and Codex — removed the experimental Ollama integration to streamline the app around the two production-ready providers
  30. v0.4.15

    Light Mode Overhaul

    • Dramatically improved light mode visibility — text, icons, buttons, and borders across the entire app are now properly readable in light mode
    • Settings dialog fixed — section labels, slider tracks, and segmented buttons are now clearly visible against the glass overlay
    • Chat view fixed — user message bubbles, Claude's name, thinking indicators, tool use blocks, and approval banners all render with proper contrast
    • Chat input text fixed — typed text is now dark and readable in light mode instead of invisible white-on-white
    • Top bar fixed — Terminal/Chat/Split tabs, action buttons, and IDE selector are now visible in light mode
    • Sidebar elements fixed — drag handles, terminal session icons, usage dashboard, and MCP server paths are no longer invisible

    Terminal Light Theme

    • Shell terminals now use a light color scheme — the standalone terminal panel and general terminal views automatically switch to a light background with dark text when in light mode
    • Claude Code terminal stays dark — since Claude Code's TUI manages its own colors, its terminal keeps the dark theme for proper rendering

    Better Text Contrast

    • Improved muted text readability — darkened the muted and tertiary text colors in light mode so labels and descriptions stand out against glass surfaces
    • Context ring adapts to theme — the token usage ring in the status bar now uses theme-aware colors instead of hardcoded values
  31. v0.4.14

    Live Tab Status Indicators

    • Pane tabs now show real-time status — an amber pinging dot appears when a session needs your attention (e.g. tool approval), a blue spinner shows when the agent is actively working, and an emerald dot signals when a task is complete
    • Tab underlines match status — the active tab's accent bar changes color to match the current state so you can spot what needs action at a glance

    Input Field No Longer Clears During Approvals

    • Your typed text is preserved when a permission dialog pops up — previously, if you were typing while an approval banner appeared, your input would be lost

    Image Attachment Fix

    • Messages with attached images now display correctly — fixed a bug where sending an image with your message could cause duplicate or missing chat bubbles

    Smarter Unread Badges in Split View

    • Sessions you're actively viewing no longer get marked as unread — in split view, only sessions outside your focused pane will show unread indicators, reducing unnecessary visual noise
  32. v0.4.13

    Ollama Agent Support

    • Run local AI models directly in Xanom — Ollama is now a first-class provider alongside Claude Code and Codex. Create Ollama threads from the sidebar, pick from your installed models, and chat with full tool-use support (file read/write/edit, bash, search).
    • Agentic tool loop — Ollama models can read, write, and edit files in your project with an approval flow before each action, just like Claude Code.
    • Auto-starting sessions — Ollama threads start automatically when selected, no extra clicks needed.
    • Git sidebar and terminal — Ollama threads get the same ThreadTopBar with commit, open-in-IDE, and git sidebar controls.

    Chat Reliability Improvements

    • Fixed messages sometimes not appearing — Added a polling fallback so chat messages always show up, even when macOS file events are missed.
    • Slash command messages now visible — Sending a slash command no longer causes your message to disappear from the conversation.
    • Better tool approval banners — Subagent permissions and Agent/Task tool uses now show clearer descriptions in the approval prompt.

    New Fonts

    • Zed Sans and Zed Mono — Two new font options available in Settings > Typography. Clean, modern fonts designed for code editors.

    Settings & Permissions

    • Image read whitelist — New toggle in Settings to automatically allow Claude Code to read images you drag into Xanom, so you no longer need to manually approve each image read.

    Visual Polish

    • Redesigned thinking spinner — The processing indicator is now a smooth 13-arm starburst animation, replacing the old cross spinner.
    • Improved dark theme styling — Refined CSS with better scrollbar styling and glass effects.

    Security Hardening

    • Path traversal protection — File operations now validate paths stay within the project boundary.
    • Race condition fixes — Fixed potential issues with concurrent file deletion and model locking.
    • Command injection prevention — Hardened shell command construction for search tools.
  33. v0.4.12

    Parallel Agent Display

    • Grouped agent view — when Claude launches multiple agents in parallel, they now appear as a single grouped block instead of deeply nested individual items
    • Live progress tracking — the group header shows how many agents are running vs completed, with spinner and checkmark indicators
    • Agent type badges — each agent displays its type (e.g. code-reviewer, Explore) so you can tell them apart at a glance

    Session Stability Fix

    • Fixed stuck "Processing..." indicator — resolved a race condition where the processing spinner would get stuck indefinitely after sending a message, requiring you to restart the session
    • More reliable session state — session state now syncs correctly even when Claude's internal session ID is mapped after hook events have already fired
  34. v0.4.11

    Usage Dashboard

    • Session cost tracking — see how much each coding session costs across Claude Code and Codex, broken down by model
    • Pace monitoring — track your daily and weekly spending pace with visual indicators
    • Model breakdown — view token usage and costs per model in a clear dashboard

    Codex Interactive Mode

    • Full Codex support — run OpenAI Codex sessions directly in Xanom with interactive mode
    • Keyboard shortcuts — navigate and control Codex sessions with keyboard shortcuts just like Claude Code

    Terminal Clickable File Paths

    • Click to open files — file paths mentioned in terminal output are now clickable links that open directly in your editor
    • Smart path resolution — relative paths are resolved against your project directory automatically

    MCP Server Management

    • Improved server controls — better UI for managing MCP (Model Context Protocol) servers in settings
    • Server status visibility — clearer indication of which MCP servers are running

    Global Keyboard Shortcuts

    • Quick navigation — new keyboard shortcuts for switching between agents, terminals, and views
    • Multi-view tabs — improved tab management in split view with keyboard support

    Bug Fixes

    • Fixed loading spinner flicker — the loading indicator no longer flickers between tool calls during Claude Code sessions
    • Fixed file path links — terminal file path detection is more reliable across different output formats
    • Improved thread view switching — smoother transitions when switching between chat and terminal views
  35. v0.4.10

    Light Mode

    • Switch between Dark, Light, and System (follows your macOS appearance) in Settings → Appearance → Color Mode
    • All glass themes adapt automatically — surfaces, text, borders, and scrollbars adjust for comfortable daytime use

    Search Across Sessions

    • New search dialog (Cmd+K) lets you search across all your sessions by name or prompt content
    • Results are ranked by relevance and take you straight to the matching session

    Real Context & Cost Tracking

    • The context ring now shows real token usage from Claude's API — input/output tokens, cache reads/writes, session cost, and turn count
    • Before the first API response, falls back to an estimate marked with ~

    Custom Notification Sounds

    • Choose your notification sound in Settings → Behavior
    • Pick from the bundled Xanom sound, macOS system sounds (Basso, Glass, Ping, etc.), or go silent

    Better Session Ordering

    • Sessions in the sidebar now sort by when you last sent a prompt, keeping active sessions at the top

    Terminal Improvements

    • Font size setting now respected in all terminal panels
    • Clipboard paste uses Tauri's native clipboard API, fixing paste issues in the macOS WebView
    • Auto-refresh no longer interrupts scrollback — scrolling up won't snap you back to the bottom
    • Reduced refresh frequency (4s instead of 1s) for less CPU usage when idle
    • Debug logging stripped from production builds for cleaner console output

    Smoother Chat Scrolling

    • Auto-scroll no longer fights with Virtuoso's built-in scroll when Claude is actively working, eliminating jitter

    Session Naming Fix

    • Slash commands with arguments (like `/release 0.4.10`) now get proper session names

    Vibrancy Update

    • Window vibrancy uses the Sidebar material for a cleaner frosted-glass look matching native macOS apps

    Git Account Validation

    • Email addresses are now validated when adding git accounts in Settings
  36. v0.4.9

    What's New in v0.4.9

    Browser-Style Navigation

    Navigate between sessions like browser tabs — new Back and Forward buttons in the sidebar toolbar let you quickly jump between recently viewed sessions without scrolling through the sidebar.

    Redesigned Sidebar Navigation

    The sidebar tabs have been reorganized into a clean vertical list with a dedicated Home button to return to the welcome screen. Switching to the Agents tab now intelligently restores your last viewed session instead of dropping you on an empty screen.

    Right-Click Context Menus

    Right-click any session or thread in the sidebar to access quick actions:

    • Rename — edit the name inline
    • Archive — archive threads you're done with
    • Delete — remove threads entirely
    • Hide — temporarily hide Claude or Codex sessions you don't want to see

    Smoother Sidebar Animations

    Collapsing and expanding the sidebar now has a smooth slide animation instead of an instant snap. The expand button also fades in gracefully.

    Fixed Paste in Terminals

    Pasting text via right-click or keyboard now works reliably across all terminal types. Previously, ghostty-web could mangle pasted text into garbled characters (em-dashes, random symbols). Also added support for pasting via the system context menu in Tauri's WebView.

    More Accurate Context Usage Ring

    The context usage indicator now correctly includes both input and output tokens, giving you a more accurate picture of how much context window is being used.

    Fixed Loading Bar Disappearing

    The loading bar no longer vanishes during long sessions. Previously, it could disappear after context compaction or between batched operations — it now correctly reappears whenever the agent resumes work.

    Fixed Approval Queue Not Advancing

    Tool approval prompts now reliably advance to the next queued item after you approve one, regardless of whether hooks are active.

    Fixed Session Data Cross-Contamination

    Resolved a bug where background sessions could accidentally pick up data from other sessions, causing the wrong content to appear in the wrong session view.

    Fixed Duplicate Content Blocks

    Messages with multiple content blocks (e.g. thinking + text in the same response) no longer disappear or flicker due to UUID collisions.

    Open Existing Folder Shortcut

    The "Open Existing" button on the home screen now opens a native folder picker directly, instead of routing through the new project dialog.

    Settings Improvements

    • Updated cloud models — Added DeepSeek R1 70B and Qwen QwQ 32B to Groq model options; removed deprecated models
    • System info — The About page now shows your app version, Tauri version, and platform
    • Better layout — Font selectors and settings controls are now properly right-aligned
    • Keyboard shortcuts — Updated description to clarify context-dependent behavior

    Performance

    • Reduced console logging overhead throughout the app
    • Usage panel now refreshes every 10 minutes instead of 5
    • Drag handles in the sidebar no longer cause layout shifts on hover
  37. v0.4.8

    What's New in v0.4.8

    Faster Terminal Responsiveness

    The terminal display now refreshes much more frequently (every 4 seconds vs every 30 seconds), so layout changes and content updates appear almost instantly. This refresh is also smart — it only runs when the terminal is actually visible on screen, so background sessions don't waste any CPU.

    Fixed Spurious Notifications

    Fixed a bug where Xanom would sometimes show "Claude needs your attention" notifications even when Claude had already finished working. Empty status pings from Claude Code are now correctly recognized as idle signals instead of being misclassified as requiring your attention.

    Cleaner Notification Behavior After Task Completion

    Removed a workaround that was suppressing notifications too broadly after Claude stopped working. Notifications are now handled correctly at the source — you'll get notified when Claude genuinely needs your input, and won't be bothered when it doesn't.

  38. v0.4.7

    What's New in v0.4.7

    Full Permissions Mode

    You can now run Claude with full permissions directly from Xanom — no more manually restarting with flags.

    • Lock button in the top bar — click the lock icon to toggle full permissions mode. Xanom will automatically restart the session with `--dangerously-skip-permissions` and accept the bypass prompt for you.
    • Permission selector in Chat view — the permission dropdown in the chat input bar is now wired to the same control, so you can switch modes from either place.
    • A loading overlay appears while the session restarts, with automatic recovery if the restart gets stuck.

    Multiline Input in Terminal

    Shift+Enter now inserts a newline in the terminal input instead of submitting the prompt. This lets you compose multiline messages before sending them to Claude.

    Fewer Unwanted Notifications

    Fixed a bug where a delayed "Claude needs your attention" notification would pop up 30–60 seconds after the agent had already finished working. Since you already receive a "Claude Finished" notification, this duplicate has been suppressed.

  39. v0.4.6

    Chat Experience

    • Chat now starts at the bottom — when you open a session, you see the latest messages immediately instead of having to scroll down
    • Auto-scroll fixed — chat properly follows new messages as Claude works, including the thinking spinner at the bottom
    • Scroll-to-bottom button now reliably jumps to the very end of the conversation
    • No more phantom permission popups — auto-approved commands no longer trigger unnecessary approval prompts in chat view

    Approval Notifications

    • Smarter approval toasts — multiple pending approvals from the same session are now collapsed into a single toast with a count badge (e.g. "Action Required (+2)") instead of flooding your screen
    • Notification throttling — non-critical notifications are now rate-limited so you don't get spammed with OS alerts while Claude is working

    Codex Integration

    • Full permissions mode now works — toggling "Full Permissions" in Codex sessions actually sends the setting to the backend now (previously it only changed the UI toggle without effect)

    New Fonts

    • 5 new font options in Settings → Typography:
    • UI fonts: SF Pro, New York
    • Monospace fonts: SF Mono, Menlo, Source Code Pro

    Safety & Security

    • Expanded command warnings — Xanom now flags 11 additional dangerous command patterns before you approve them, including disk tools, filesystem formatters, world-writable permissions, git clean, redirects to sensitive directories, fork bombs, and more

    Bug Fixes

    • Fixed settings layout where label text would get squeezed when controls wrapped to a new line
    • Fixed terminal getting stuck on "Receiving session data..." during new session creation
    • Fixed stale processing state that could cause the spinner to persist after Claude finished
    • Fixed session state machine handling duplicate session-start events mid-session
  40. v0.4.5

    What's New in v0.4.5

    Smoother, faster chat scrolling

    Long conversations now use virtualized rendering — only the messages on screen are drawn, so even sessions with hundreds of messages scroll smoothly without lag.

    Rename sessions right from the sidebar

    Click the pencil icon next to any Claude session to rename it inline. No more hunting through menus — just click, type, and press Enter.

    Control Claude's reasoning effort

    A new selector in the input bar lets you choose how hard Claude thinks before responding: low, medium, high, or max. Useful for quick answers vs. deep problem-solving.

    Collapsible usage panel

    The token usage panel in the sidebar now collapses on hover/focus, giving you more room when you need it and staying out of the way when you don't.

    Better commit messages

    Commit message generation is now faster and produces higher-quality summaries by sending actual diff content to the LLM instead of just file names.

    Image attachments in chat

    You can now see image attachments displayed directly in the conversation for both Claude and Codex sessions.

    Codex timeline view

    Codex sessions now display all events — messages, tool calls, and file changes — in a single chronological timeline, making it easier to follow what happened.

    Fixes

    • Approval notifications now correctly navigate to the right session, even after switching between projects
    • The amber "needs attention" dot no longer disappears while waiting for tool approval
    • Codex sessions show their names immediately in the sidebar instead of loading as blank
    • Terminals stay mounted when switching between split-view tabs — no more reloading
    • "Compacting conversation" status now shows in the chat instead of appearing stuck
  41. v0.4.4

    What's New in v0.4.4

    Threads now show their names immediately

    Previously, new threads could appear as unnamed placeholders in the sidebar — especially when switching between sessions quickly. Thread names now appear right away and stay in sync, so you always know which conversation is which.

    Terminal text renders correctly on first load

    Fixed an issue where terminal text could appear misaligned or incorrectly sized when first opening a session. Terminals now wait for fonts to fully load before rendering, so text looks crisp from the start.

    Cleaner sidebar

    Removed the redundant settings icon from project headers to reduce visual clutter. The sidebar feels a bit tidier now.

  42. v0.4.3

    What's New in v0.4.3

    Codex Integration

    • Sign in to Codex — Log into your Codex account directly from Settings. Your browser opens, login completes automatically, and your account status appears in the app
    • MCP Server Status — See which MCP servers are connected to Codex with a live status indicator
    • Approval Rules — Set persistent approval rules so Codex remembers which tools you've allowed
    • Rate Limits — View your Codex rate limits and usage at a glance
    • Collaboration Modes — Switch between autonomous, semi-autonomous, and manual modes from the session UI

    Smarter Sessions

    • Session State Tracking — Sessions now show clear status indicators (running, processing, waiting for input, stopped) so you always know what's happening
    • Auto Thread Naming — New sessions are automatically named based on your first message
    • Processing & Unread Badges — The sidebar shows live processing dots and unread message counts

    Redesigned Settings

    • Better organization — Settings are now grouped into logical categories: Accounts, Appearance, Typography, Editor, Terminal, Models, MCP Servers, Notifications, Shortcuts, and About
    • Dedicated Accounts page — Codex login and Git accounts are in their own section

    Approval Handling

    • Faster prompts — Approval banners appear with smart debouncing to avoid false flashes
    • Subagent approvals — When Claude dispatches subagents that need approval, the prompt surfaces in the parent session
    • Keyboard shortcuts — Press Enter or a number key to quickly respond to approval prompts

    Terminal Improvements

    • Faster startup — Terminals now appear in ~500ms (down from ~3 seconds)
    • Image paste & drop — Paste or drag-and-drop images directly into terminal sessions
    • Scroll preservation — Terminal scroll position is preserved when switching between sessions
    • Font selection — Choose your preferred terminal font in Settings

    Split View Polish

    • Cleaner toolbar — Branch name and IDE launcher are hidden in split mode to save space
    • Compact controls — Commit button and view mode switcher go icon-only in split panes

    MCP Server Management

    • Add & remove servers — Manage MCP server connections from a dedicated Settings panel
    • Live connection status — See the state of each configured server

    What's New Dialog

    • Now automatic — Release notes are fetched live when you update, so you'll always see what changed

    Fixes

    • Corrected model size display — Local AI model download now shows the accurate size (~1.1 GB)
    • Cleaner chat messages — System tags are filtered from the conversation view
    • File Explorer — Hidden files are no longer filtered out
    • Usage panel — Time formatting now uses proper rounding and labels
  43. v0.4.2

    What's New in v0.4.2

    Dynamic Release Notes

    • What's New dialog is now fully automatic — version and release notes are fetched from GitHub at runtime, no more hardcoded content to update each release
    • Fallback handling — if the GitHub API is unreachable, shows a generic "Bug fixes and improvements" message

    Fixes

    • What's New dialog was stuck on v0.3.7 — the dialog never showed for v0.4.0 or v0.4.1 because the version was hardcoded and never updated
    • CSP updated — added `api.github.com` to connect-src for release notes fetching
    • Process kill and App.tsx improvements — misc local fixes included
  44. v0.4.1

    What's New in v0.4.1

    Codex Login Now Works

    • OAuth login flow fixed — clicking "Log in to Codex" in Settings now correctly opens your browser, detects when login completes, and shows your account status
    • Authentication check before sessions — Xanom now verifies you're logged in before starting a new Codex session, with a clear error message if not

    Redesigned Settings

    • Better organization — Settings are now grouped into logical categories: Accounts, Appearance, Typography, Editor, Terminal, Models, MCP Servers, Notifications, Shortcuts, and About
    • Dedicated Accounts page — Codex login status and Git accounts are in their own section for easy access

    Split View Polish

    • Cleaner toolbar in split mode — branch name and IDE launcher are hidden to save space
    • Icon-only controls — commit button and view mode switcher go compact in split panes

    Fixes

    • Corrected model size display — local AI model download prompt now shows the accurate size (~1.1 GB instead of ~230 MB)
    • Cleaner chat messages — IDE-related system tags are now filtered from the conversation view
  45. v0.4.0

    What's New in v0.4.0

    This is a major update focused on Codex integration, smarter session management, and a more responsive approval workflow.

    ---

    Codex Integration

    • Codex Account & Login — Sign into your Codex account directly from Settings. Your login state and account info are displayed in the General settings page.
    • MCP Server Status — See which MCP servers are connected to Codex, with a refresh button to check live status.
    • Approval Rules — Configure persistent approval rules so Codex remembers which tools you've allowed, reducing repeated prompts.
    • Rate Limits — View your Codex account rate limits and current usage at a glance.
    • Collaboration Modes — Switch between Codex collaboration modes (autonomous, semi-autonomous, manual) from the session UI.
    • New JSON-RPC Methods — Backend support for fork, compact, steer, and collaboration mode operations.

    Smarter Session Lifecycle

    • Session State Machine — Sessions now follow a well-defined lifecycle (idle → spawning → running → processing → awaiting approval → stopped) with smooth UI transitions and no invalid state flickers.
    • Auto Thread Naming — New sessions are automatically named based on your first message — no more "Untitled Session" clutter.
    • Processing & Unread Indicators — The sidebar shows live processing dots and unread message badges so you always know which sessions need attention.

    Approval Handling

    • Faster Approval Display — Approval prompts appear with a 2-second debounce to avoid false flashes on fast tool runs.
    • Subagent Approval Synthesis — When Claude dispatches subagents that need approval, the prompt is surfaced to you in the parent session.
    • Instant Rejection Clearing — Denying a tool clears the approval banner immediately.
    • Keyboard Shortcuts — Press Enter or a number key to quickly respond to approval prompts.

    Terminal Improvements

    • Faster Terminal Startup — Terminals now appear in ~500ms (down from ~3 seconds) with smarter idle detection.
    • Image Paste & Drop — Paste or drag-and-drop images directly into terminal sessions.
    • Scroll Preservation — Terminal scroll position is preserved when switching between sessions.
    • Font Selection — Choose your preferred terminal font in Settings, including Hack font support.
    • Post-Reveal Alt-Screen Detection — Better handling of full-screen terminal apps (vim, htop, etc.) that launch after session start.

    MCP Server Management

    • Add & Remove MCP Servers — Manage MCP server connections from Settings with a dedicated configuration panel.
    • Live Server Status — See connection state for each configured MCP server.

    Settings & UI

    • Notification Sound Setting — Toggle notification sounds on or off.
    • Default Model Configuration — Set your preferred default model in Settings.
    • Expanded Settings Dialog — Reorganized settings with dedicated sections for MCP, fonts, notifications, and model preferences.
    • Agent Type Labels — Tool use blocks now show the agent type (e.g., "Dispatched Explore Agent") for better context.
    • Usage Panel Fix — Time formatting now uses proper rounding and singular/plural labels.
    • File Explorer — Hidden files are no longer filtered out; drag-and-drop disabled to prevent accidental moves.

    ---

    Full Changelog: https://github.com/neel-xanom/xanom/compare/v0.3.8...v0.4.0

  46. v0.3.8

    What's New in v0.3.8

    Terminal in Agents Tab

    • New "New Terminal" option in the project `+` dropdown — creates a terminal session directly in the agents list alongside Claude and Codex sessions
    • Terminal sessions include the full Warp-style input bar with git info, cwd tracking, and alt-screen detection
    • Right-click context menu to close terminal sessions

    Split View Improvements

    • Split view toggle in sidebar header — quick toggle without opening Settings
    • Fixed duplicate tabs — splitting a tab now moves it to the new pane instead of duplicating
    • Unsplit button — collapse back to single pane when split (preserves focused pane's tabs)
    • Terminal sessions fully supported in split view mode

    Other

    • Terminal dot color (amber) in split view tab bar
    • Terminal entity deduplication in split view store
  47. v0.3.7

    See the assets below to download and install this version.

  48. v0.3.6

    What's New in v0.3.6

    ✨ New Features

    • UI polish — refined themes, updated settings, and component cleanup

    🐛 Bug Fixes

    • Force dark mode regardless of system settings
    • Rewrite updater URLs to point to public xanom-releases repo
    • Resolve terminal stuck on "Loading terminal engine" in production builds

    🔧 Improvements

    • Parallelize CI builds for aarch64 and x86_64
  49. v0.3.5

    See the assets below to download and install this version.

  50. v0.3.4

    See the assets below to download and install this version.

  51. v0.3.3

    See the assets below to download and install this version.

  52. v0.3.2

    See the assets below to download and install this version.

  53. v0.3.1

    What's New in v0.3.1

    ✨ New Features

    • Warp-style terminal input with CWD display, git branch info, and inline directory explorer
    • Groq LLM provider support (llama-3.3-70b via Groq API/proxy)
    • Context Ring — live token usage and cost visualization for Claude sessions
    • Directory Explorer for browsing and navigating files directly from terminal
    • Desktop notifications when background tasks complete
    • Content Security Policy enabled for webview security hardening

    🔧 Improvements

    • OpenRouter provider refinements
    • Updater endpoint moved to dedicated releases repository
    • Release workflow configuration updates
    • Various component and store refinements across frontend and backend