Skip to content

Releases: Digital-Threads/aimux

v0.13.0

11 Jun 05:27
0e79677

Choose a tag to compare

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

08 Jun 08:46
b55e8dc

Choose a tag to compare

[0.12.0] - 2026-06-08

Added

  • core barrel now re-exports loadActiveProfile, saveActiveProfile, and
    getActiveProfilePath from @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

08 Jun 08:30

Choose a tag to compare

[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

08 Jun 07:54

Choose a tag to compare

[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 with p (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 and last: 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

07 Jun 10:36

Choose a tag to compare

[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

07 Jun 10:10

Choose a tag to compare

[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 to aimux run and to background dispatch
    from the agents view. aimux profile add --fallback-model and clone carry it
    too. Maps to Claude's --fallback-model.
  • aimux agents live 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 raw backgrounded · <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

07 Jun 07:07

Choose a tag to compare

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

02 Jun 06:17
7857366

Choose a tag to compare

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

01 Jun 11:15

Choose a tag to compare

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

26 May 14:06

Choose a tag to compare

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
```