v1.9.73
glanceapp/glancev1.9.73Jun 21, 2026by github-actions[bot]
AI Summary
A maintenance release for Agent Deck fixing critical locale issues and improving conductor setup and session management.
Key Highlights
- Fixed sessions reading as 'error' under non-UTF-8 locales.
- Resolved self-heal bloat in config files.
- Enabled conductors to work without remote channels (local-first).
New Features
- Local-first conductor support
- `group_sort` config option
- Opt-in session-switcher hotkey
- Session-switcher dialog improvements
- Worktree-destruction hook
Full Release Notes
## Agent Deck v1.9.73 Terminal session manager for AI coding agents. This release bundles every fix and feature merged since **v1.9.70** (the v1.9.71 and v1.9.72 prep tags were never published, so their changes ride along here). ### ⭐ Headline fix — sessions no longer read as `error` under a non-UTF-8 locale ([#1496](https://github.com/asheshgoplani/agent-deck/pull/1496)) The status probe now uses a printable field delimiter so `tmux -F` reads survive a non-UTF-8 locale. Under `C`/`POSIX` or an unset `LANG` — the exact environment headless conductors and CI runners boot into — every session was being parsed as `error`. This is the standout fix for anyone running agent-deck outside an interactive UTF-8 terminal. ### Fixed - **Locale-safe status delimiter** so `tmux -F` probes survive a non-UTF-8 locale (`C`/`POSIX`/unset `LANG`); sessions no longer all read as `error`. ([#1496](https://github.com/asheshgoplani/agent-deck/pull/1496)) - **Self-heal no longer bloats `config.toml`** — the selfheal section stops growing the config file on every run. ([#1494](https://github.com/asheshgoplani/agent-deck/pull/1494)) - **Notify daemon logging initialized + bounded log** for the session-id lifecycle, so the notify daemon logs correctly without unbounded growth. ([#1498](https://github.com/asheshgoplani/agent-deck/pull/1498)) - **`--session-id` honored on the Start path** — an explicit session id is now respected when starting a session. ([#1473](https://github.com/asheshgoplani/agent-deck/pull/1473)) - **Uppercase group names work for `group create --parent` / `group delete`.** `normalizeGroupPath` preserves case, and `group delete` errors on ambiguity (with sorted suggestions) instead of silently deleting a random duplicate. ([#1501](https://github.com/asheshgoplani/agent-deck/pull/1501)) - **Forked sessions inherit tool identity** for Claude-compatible tools (gemini, codex, opencode, …) instead of resetting to `claude`. ([#1479](https://github.com/asheshgoplani/agent-deck/pull/1479)) - **Headless web menu no longer serves stale content** after session changes — the menu snapshot cache is invalidated on every change. ([#1477](https://github.com/asheshgoplani/agent-deck/pull/1477)) - **Dialogs respect terminal width** via a `fitDialogWidth` helper, preventing overflow/border clipping on narrow terminals. ([#1476](https://github.com/asheshgoplani/agent-deck/pull/1476)) - **Orphaned sub-sessions render in stable order** instead of shuffling between redraws. ([#1443](https://github.com/asheshgoplani/agent-deck/pull/1443)) - **tmux: live control pipes kept only for active sessions** (small LRU) — eliminates attach-storm freezes and tmux backpressure when running multiple deck instances. ([#1469](https://github.com/asheshgoplani/agent-deck/pull/1469)) ### Added - **Conductors work without remote channels (local-first).** `conductor setup` defaults to local-only; a single gateway question gates all channel prompts; heartbeat is always-on; re-running setup is credential-wipe-safe. ([#1474](https://github.com/asheshgoplani/agent-deck/pull/1474)) - **`group_sort` config option** to choose within-group session ordering (creation order by default; set `group_sort = "actionable"` to restore recency-first). ([#1443](https://github.com/asheshgoplani/agent-deck/pull/1443)) - **Session-switcher hotkey is opt-in** (no longer bound by default; set `switch_session` under `[hotkeys]` to enable). ([#1478](https://github.com/asheshgoplani/agent-deck/pull/1478)) - **Session-switcher dialog shows title/subtitle and auto-expands width** so labels are never truncated. ([#1475](https://github.com/asheshgoplani/agent-deck/pull/1475)) - **Worktree-destruction hook** — `agent-deck-worktree-destroy.sh` runs (60 s timeout) before `git worktree remove`, enabling pre-cleanup. ([#1487](https://github.com/asheshgoplani/agent-deck/pull/1487)) - **Test coverage for the worktree setup path.** ([#1472](https://github.com/asheshgoplani/agent-deck/pull/1472)) ### Installation **Homebrew (recommended):** ```bash brew install asheshgoplani/tap/agent-deck ``` **Quick Install:** ```bash curl -fsSL https://raw.githubusercontent.com/asheshgoplani/agent-deck/main/install.sh | bash ``` **Go Install:** ```bash go install github.com/asheshgoplani/agent-deck/cmd/agent-deck@v1.9.73 ``` --- **Full Changelog**: https://github.com/asheshgoplani/agent-deck/compare/v1.9.70...v1.9.73