Releases: neel-xanom/agmux-releases
Release list
Xanom 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.
Xanom 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.
Xanom 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.
Xanom 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 stdioprocess, 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.
Xanom 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).
Xanom 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
pathfield 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
codexupgrade 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
isResumeprop.
Xanom 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-lmfor 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.serverprocesses. - 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.
Xanom 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_patchblocks now render with a colored unified-diff style and show a+N / -Msummary per file, matching what you already see for Claude sessions.
Improved
- Sidebar diff stats stay fresh — The
+lines / -linesbadge 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 at0+ / 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.
Xanom 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.
Xanom 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
xhighoption 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.