Releases: Digital-Threads/aimux
v0.13.0
fix(plugins): per-profile plugin metadata so marketplace refresh works under a profile (PR #11). A profile's plugins/ is now a real dir — content symlinked to the shared source, but known_marketplaces.json + installed_plugins.json are real path-projected copies so Claude's installLocation check passes under $CLAUDE_CONFIG_DIR. Profile-side installs back-merge into the source. Conversion is lazy on next aimux run, idempotent, downgrade-safe, never touches ~/.claude.
v0.12.0 — public core: active-profile helpers
[0.12.0] - 2026-06-08
Added
corebarrel now re-exportsloadActiveProfile,saveActiveProfile, and
getActiveProfilePathfrom@digital-threads/aimux/core. Additive — lets
external consumers read/switch the active profile through the public API
without deep-importing. No behavior change.
v0.11.2 — attach mirrors terminal resume
[0.11.2] - 2026-06-08
Changed
- Attaching a session from the agents view now mirrors the terminal. It runs
claude --resume <id>under the active profile — exactly like
aimux run <profile> --resume <id>— so the chosen profile (and its
subscription) always wins. A still-running background agent is continued with
--fork-session(claude requires it for a live session); a finished or
interactive session resumes in place under the chosen profile, same session id.
Removed the previous join/stop special-casing that could land you back on the
original (possibly exhausted) subscription.
v0.11.1 — attach honors chosen profile
[0.11.1] - 2026-06-08
Fixed
- Attaching now honors the chosen profile. A live background agent is owned
by the profile it was dispatched under, and aimux always joined via that owner
— so switching profile withp(e.g. after a subscription ran out) had no
effect and the row kept showing the old profile. Now, when the chosen/active
profile differs from the owner, aimux stops the owner's live agent and resumes
the shared transcript under the chosen profile (billing andlast:follow it).
When the chosen profile matches the owner, it still joins the live agent as
before. To simply join another profile's live agent, make that profile active
first.
v0.11.0 — session titles + re-attach escape fix
[0.11.0] - 2026-06-07
Added
- Session names from Claude titles. The agents list now shows a session's
real title — a user/rename(custom-title) takes precedence, otherwise
Claude's generated ai-title — instead of the raw first prompt. Falls back to
the first prompt, then a short session id. Titles are read from the end of the
transcript (where Claude appends them) with a bounded tail read, so the default
7-day scan stays fast.
Fixed
- Escape sequence no longer leaks into a re-attached session. The terminal's
Device-Attributes response is drained before handing the tty to Claude, and
stdin is restored to a clean paused state afterward so the agents TUI no longer
freezes on return from a session.
v0.10.0 — agents TUI live UX overhaul + fallback model
[0.10.0] - 2026-06-07
Added
- Per-profile fallback model. Set a model that Claude falls back to when the
primary is overloaded or unavailable:
aimux profile update <name> --fallback-model <model>(and
--unset-fallback-model). Applies toaimux runand to background dispatch
from the agents view.aimux profile add --fallback-modelandclonecarry it
too. Maps to Claude's--fallback-model. aimux agentslive view. The session list now refreshes on its own while
agents are working (state transitions and newly dispatched agents appear
without a keypress), with an animated spinner on running rows.- Short-id column and clearer status labels in the agents list.
Changed
- Agents view is now near-instant to open. Profile token/$ usage
(summarizeUsage) is no longer computed on the render path and is skipped
entirely when no API-endpoint profile is present — previously it scanned every
transcript on every open/return (several seconds on busy machines) for a result
that is only shown for API profiles. - Faster re-scans via a per-file parse cache and an in-process list cache, so
returning from an attached session paints immediately. - Agents view restyled to match Claude's own agents UI (status glyphs, header
rules, selected-row accent, footer) while keeping aimux's multi-profile status
bar, rate limits, profile colors, pinning, grouping, filtering and peek.
Fixed
- Dispatching a background agent no longer tears down the TUI.
n→ prompt →
Enter now runs in place and refreshes the list, instead of unmounting the view
and dumping the rawbackgrounded · <short>banner into the terminal. - Compaction-continuation and
<local-command-stdout/stderr>lines are no longer
used as session names.
Known issues
- A terminal Device-Attributes response (
;…c) can still leak into the prompt
v0.9.1 — per-profile limits & API usage in agents
Highlights
A per-profile status strip in aimux agents (under the header):
- Subscription profiles show live 5h / 7d rate-limit utilization, coloured by how close you are (green → yellow >60% → red >80%). Probed live from
anthropic-ratelimit-unified-*headers; expired/offline profiles degrade to—. - API-endpoint profiles show tokens used and an estimated
$cost (tokens × per-model price table; transcripts carry no cost field).
Also: resuming a session that's live as a background agent no longer fails with Resume exited with code 1.
Published to npm: npm i -g @digital-threads/aimux@0.9.1
v0.9.0 — auto-mode posture in status
aimux status now shows a per-profile AUTOMODE column: whether a profile has an autoMode block in its settings.json and how many allow/soft_deny rules (✓N ✗M). Read-only — reads the user's settings.json, never interprets the internal classifier, so it stays stable across Claude Code releases. Verified against claude-code 2.1.160.
v0.8.0 — 3rd-party API endpoint profiles
Per-profile API endpoints: aimux profile add <name> --api configures a 3rd-party / self-hosted Claude-compatible endpoint (Microsoft Foundry, your own gateway, Bedrock/Vertex) instead of an OAuth subscription. Credentials live in a per-profile .env (chmod 600), injected at launch. Closes #2.
v0.6.0 — pinning + split-pane peek
Features
Pin sessions with *
The selected session can now be pinned with *. Pinned sessions float to the top within their group regardless of recency/cwd/state sort. Persisted to ~/.aimux/pinned-sessions.json — pins survive restarts. A ★ next to the name marks pinned rows.
Split-pane peek with Space
Space now toggles a right-hand side panel with rich detail for the selected session: full name, state, cwd, intent, detail, events count, last update time, last-used profile, bg profile, session id prefix. Previous inline single-line peek was too cramped for the data.
What's not in this release
Inline reply to needs_input sessions was planned but blocked upstream — claude does not expose a public command to inject text into a live background session from outside its attach TUI. Will revisit once Anthropic ships a claude agents send <short> "<msg>" (or equivalent).
Install
```bash
npm install -g @digital-threads/aimux@0.6.0
```