This release includes 2 breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
Summary
AI summaryBroad release touches @Dicklesworthstone, Others, Quick Install ```bash, and Bug Fixes.
Full changelog
NTM v1.11.0
Named Tmux Manager - Orchestrate AI coding agents in tmux sessions with beautiful TUI interfaces.
Quick Install
# One-liner install (Linux/macOS)
curl -fsSL https://raw.githubusercontent.com/Dicklesworthstone/ntm/main/install.sh | bash
# Homebrew (macOS/Linux)
brew install dicklesworthstone/tap/ntm
# Go install
go install github.com/Dicklesworthstone/ntm/cmd/[email protected]
Shell Integration
Add to your shell rc file:
eval "$(ntm shell zsh)" # for zsh
eval "$(ntm shell bash)" # for bash
eval "$(ntm shell fish)" # for fish
Changelog
Features
- dbfd08cb103970a2b490675ce4423f0572e76949: feat(agent): add Canonical() method for centralized agent type normalization (@Dicklesworthstone)
- a1fa218f3a6a0ac01d57f0bd65fb8222f53e41ea: feat(agent): improve parser accuracy and add NeedsDoubleEnter agent trait (@Dicklesworthstone)
- dcc63778772486b37e9852c4b8dea44852779b60: feat(agentmail): add direct GetMessage fetch with inbox-scan fallback (@Dicklesworthstone)
- 6042558458e7f05f58581d3bf37952fe0254271a: feat(robot): add Ollama agent counting, fix pane-agent mapping, and propagate Canonical() normalization (@Dicklesworthstone)
- 3e95821754a1a7445a92df171fa277e5baebf8a9: feat(robot): add registry-backed metadata for machine consumers (bd-j9jo3.7.3) (@Dicklesworthstone)
- d879ef14119d283779d26a8db7ed362ec6a13baf: feat(robot): add schema goldens and contract stability tests (bd-j9jo3.9.1) (@Dicklesworthstone)
- 0ebfe538779737ea85d6d2904b9e375a4bd24866: feat(robot): add unified section projection model for renderer parity [bd-j9jo3.6.5] (@Dicklesworthstone)
- d8577f573878bc50b65e827ca18fee5921750f64: feat(robot): add validation harness with deterministic fixtures (bd-j9jo3.9.6) (@Dicklesworthstone)
- 89c0868506dd769c01135cd26abce80b87383480: feat(robot): align TUI dashboard with shared section model [bd-j9jo3.8.2] (@Dicklesworthstone)
- 1276b218e99386beef09d85d09a6fc23509400e5: feat(serve): add REST parity for robot surfaces [bd-j9jo3.8.1] (@Dicklesworthstone)
- c6c453b74832b518199f05d81d082b3cc60ad994: feat(tui): add 6 TUI Inspector profiles for new tui-upgrade features [bd-jynig] (@Dicklesworthstone)
- fbfc27d6193084b523d9c0f4ed905fbdb83c1239: feat(util): add SafeSliceFromEnd, GetLastNLines, and CountNonEmptyLines shared helpers (@Dicklesworthstone)
- c7a8defc300ea867bd966b336ade3b6eca7ab76d: feat: add Ollama/Cursor/Windsurf/Aider agent types, parallel pane capture, and cross-platform process state (@Dicklesworthstone)
Bug Fixes
- 76b3bf2842563b6192de84d3e50c0b3a0b1e9e73: fix(docs): correct golden fixtures path in redesign transition guide (@Dicklesworthstone)
- c62ad00037da896aada5c9494e476612f2863582: fix(e2e): remove redundant min function shadowing Go builtin (@Dicklesworthstone)
- bae98d3c2cd6652160312a474ba70a449ce02c7c: fix(handoff): sort mail threads by recency and normalize thread IDs (@Dicklesworthstone)
- f964585ce90db8794dd79357770ce8d4e9ba9a49: fix(robot): correct mixed workload benchmark writer/reader assignment (@Dicklesworthstone)
- ddcbc8c2f59ba40ea1b13552045fecb7a1c9d191: fix(robot): fix unread mail accounting and consolidate agent type resolution (@Dicklesworthstone)
- f119bcfeb8dc56113ce85771684a236ee1d60c5a: fix(robot): remove unused goroutine parameter in concurrent test (@Dicklesworthstone)
- a6886d354b92bb8c6ae2a1fea14a8d5bba1241b2: fix(serve): add request_id to all robot REST handlers for consistency (@Dicklesworthstone)
- 6972308c13ea98855739c92a4c22fcb81a3f5d19: fix(serve): harden memory daemon lifecycle and store copy semantics (@Dicklesworthstone)
- b4159574b24df4488a8a5b772be7dbb0ce5147d9: fix(serve): remove redundant session filtering in WS attention delivery (@Dicklesworthstone)
- 755c9b0b2602fbd8aef50436afcc21fba8ab576f: fix(serve): update TestToJSONMap nil-input expectation to match new empty-map behavior (@Dicklesworthstone)
- f968ccb14de344a6b68890a2693e8dd659ffdbc0: fix(status): expand agent type pattern matching and harden unified status (@Dicklesworthstone)
- 4cfe52905f77c68e10150d0ce95dc8066d68cabe: fix(status): prevent false idle classification from prompt-like output during active work (@Dicklesworthstone)
- df04cd0690af12226c9741b263054239f2de3511: fix(swarm): propagate context.Context through auto-respawner lifecycle (@Dicklesworthstone)
- d26f8c652b48ef4f006be6804702f7e9b3bcef53: fix(swarm): remove unused sync import from pane_launcher.go (@Dicklesworthstone)
- 01d75f2041bbce9e55949a30a41fcdc33d17316b: fix(worktrees): harden input validation and fix git command lifecycle (@Dicklesworthstone)
- 033aaed74e1f921ca49a0b3205425ecdb7493bd0: fix: remove deprecated robot assembly functions and unused wrappers (@Dicklesworthstone)
- 9c3a613ea88a717d6d6877217065cf42d99f20c3: fix: restore os.Getwd error handling in dashboard agent mail (@Dicklesworthstone)
- 418f83e43c9f87979ba9f185692d4bfb7e367f63: fix: unblock v1.11.0 release checks (@Dicklesworthstone)
Performance
- d3498daa983652dd0bf5a9fe8eb5741e07c440e1: perf(tui): async Ollama PS fetching and binary-search text truncation (@Dicklesworthstone)
Documentation
- 9ec30b826344fd35aa33d509e56d41599f9841ba: docs(robot): add migration path comment for markdown renderer [bd-j9jo3.6.5] (@Dicklesworthstone)
- c882ae37db5336e92f7bafb55b9ab569aa2f914e: docs(skill): update SKILL.md, add reference docs, and sync beads database (@Dicklesworthstone)
Others
- 13a337069c2732328de2f878e86e5dfc45d540a6: chore(beads): bump migration hint timestamp (@Dicklesworthstone)
- d50069112ec206e208d96d346b3620bb4c5237d9: chore(beads): close bd-rpa8o TUI regression suite [bd-rpa8o] (@Dicklesworthstone)
- 133dcdaa7f84b72af77276f23b09f1e890315145: chore(beads): sync beads issue database export (@Dicklesworthstone)
- 70c302153d6109d8669dad2f25304229cc487c1b: chore(beads): sync beads issue database export (@Dicklesworthstone)
- f46b09d958f80556d186238eecdff0c23e9a0159: chore(beads): sync beads issue database export (@Dicklesworthstone)
- fb27e93637abe9b46fc4e7ee78124c0784f31264: chore(beads): sync beads issue database export (@Dicklesworthstone)
- 6b0ee478a3d3f5beec6c957ee4991ee5a91117f3: chore(beads): sync beads issue database export (@Dicklesworthstone)
- a2af79c5722a8c30887e9c3d837df2f640397936: chore(beads): sync beads issue database export (@Dicklesworthstone)
- 6320fba05e58725ca033735faad075eb7e5f9f06: chore(beads): sync beads issue database export (@Dicklesworthstone)
- c30a3d427ffb98967493f4f0633b1977c0fb8961: chore(beads): sync beads issue database export (@Dicklesworthstone)
- b4ca1a03520b4884d2b86e7f072f4dc43384d862: chore(beads): sync beads issue database export (@Dicklesworthstone)
- e933160b0112d943f63114c735cf158e3157036a: chore(beads): sync issue tracker state (@Dicklesworthstone)
- 39a015abe226fb01b390a26823c16888428b2dc4: chore(beads): sync issues database with new build-fix tracking bead (@Dicklesworthstone)
- b8d7f9301f05523bfcf7b61ba766a08c29ec9af4: feat(assign,status,models,policy): extend multi-agent support and harden path/policy validation (@Dicklesworthstone)
- cc4fc0594f6e290fde82a85d1cee0ded4f642004: fix(agent,serve,tmux,watcher,coordinator,process): harden agent type normalization, fix idempotency scoping, improve daemon lifecycle, and eliminate test flakiness (@Dicklesworthstone)
- b5409835cf5f011c07ce48e54416b5c3fac97a30: fix(cli/mail): harden display sanitization and add action-aware mark filtering (@Dicklesworthstone)
- dc1a21dda07abc4e38b6bc6a203078d9ffead6da: fix(cli/safety): unify approval-required exit codes and refresh status UI (@Dicklesworthstone)
- 85944f8d297195ae3a542c3ac95f7c20ec787536: fix(cli/util): support shell-style quoting in editor command parsing (@Dicklesworthstone)
- 2c51e95ab16bcbb7665d8dcde106a72269f893e5: fix(palette,swarm): eliminate stale state bugs in palette reload/search and false prompt detection in auto-respawner (@Dicklesworthstone)
- d8f08134d8ad6b38eb8cc62a23e1853070508167: fix(robot,serve): markdown rendering improvement and server config update (@Dicklesworthstone)
- ee43bbaa865b9af33e1ac7fd2a89af67fe9e7565: fix(robot,worktrees): correct unread mail accounting and isolate worktree directories by session (@Dicklesworthstone)
- 2df1f0867abe2f97cdfe9f0cd47a25a70d30bf64: fix(serve,ensemble,bv,state): pipeline defer safety, mail BCC, ring buffer optimization, stale PID cleanup (@Dicklesworthstone)
- 83b62822e3dc8720454befaeae25542c0bff3002: fix(tui,serve,palette): eliminate stale state across dashboard panels, harden sidebar focus model, and fix memory daemon lifecycle (@Dicklesworthstone)
- 1052a0af1b90bc8b1e2d6054db871e84e0335c51: perf(audit,events): backward-scan for last entry, logger cache cleanup, query optimization (@Dicklesworthstone)
- 0a8417cd1410ad85d204cc2940b99769e532f343: perf(resilience,ratelimit,health,tracker,checkpoint,redaction): async persistence, ring buffers, and allocation reduction (@Dicklesworthstone)
- e725ff08ab70174a4333cc3c7b75f94533e628c2: refactor(agents,persona,cli): unify agent type normalization across remaining packages (@Dicklesworthstone)
- ed6a4b90075dc19c42ebeeae5368daffb70a8a39: refactor(cli): propagate Canonical() normalization and add extended tests (@Dicklesworthstone)
- a58872b24422914f60e5782ae74affa57d0778ab: refactor(cli): unify agent type normalization across all CLI commands (@Dicklesworthstone)
- 969fe6572cabace377b94b57def8cee7f999ed63: refactor(cli,robot): expand assign detection and agent name normalization (@Dicklesworthstone)
- 0c8e11eaba11cdd8e71db5d912aec20576e070f3: refactor(cli/adopt): generalize session adoption to support all agent types (@Dicklesworthstone)
- f4f3756bec512657d4c7afe66d81947924b1140f: refactor(config): adopt Canonical() for model resolution and webhook agent type validation (@Dicklesworthstone)
- d20fa9e83f31cbf7f0716dffd1f77f34aefe1534: refactor(context): adopt Canonical() for agent capabilities, compaction, rotation, and triggers (@Dicklesworthstone)
- 4907918a53cbdfcfcf5ac4ea5a1f1dcd74508073: refactor(pipeline,workflow): unify agent type normalization via Canonical() (@Dicklesworthstone)
- 1dda8d5416c7ec1de5fa83a5c233020d4f8c2803: refactor(robot,auth,session,swarm): adopt SendKeysForAgent and fix concurrency issues (@Dicklesworthstone)
- 60c014f8ee40ad870bd746d06aa0ee2e621ae4bc: refactor(scheduler,swarm,infra): propagate Canonical() across all remaining subsystems (@Dicklesworthstone)
- 7c4841cd81eff3a95608cfa5883e6c3901546ec2: refactor(status): tighten comments on velocity-vs-prompt priority in state detection (@Dicklesworthstone)
- bf6e6dc551000d3d2bdb092fd74281e29e27b284: refactor(tmux): DRY pane parsing, secure FIFO directory, and robust content hashing (@Dicklesworthstone)
- c702c4e470acd88e9e37cbc1f57c8796b30c47a8: refactor(tmux): replace canonicalAgentType switch-case with Canonical() (@Dicklesworthstone)
- 1109a0e83d1f2a0dbd2f42a6da51ae862bcd3778: refactor(tui): adopt Canonical() for agent badges, icons, themes, and dashboard panels (@Dicklesworthstone)
- 69a5a8e54e3bff9947a69d016d29de655765ddae: test(agent,auth,swarm): update tests for shared util functions and SendKeysForAgent (@Dicklesworthstone)
- ba1015c3ddcea3e15a1f2015100d84d941bd2e84: test(e2e): add comprehensive operator-loop E2E coverage [bd-j9jo3.9.3] (@Dicklesworthstone)
- d1969e8e2cddc72a7d4b4a24fd6e75afc36980d8: test(overlay-feed): add integration tests and e2e scenarios [br-rb9oj] (@Dicklesworthstone)
- 7287f7d9cb83cc5cf61c9c36ad877a7e7853b94c: test(robot): add SQLite, adapter, and restart-recovery integration tests [bd-j9jo3.9.2] (@Dicklesworthstone)
- 364a8a9062065fc9a5dcf7b8cadbd7dfa9066569: test(robot): add adapter and SSE attention unit tests [bd-j9jo3.9.8, bd-j9jo3.8.3] (@Dicklesworthstone)
- f696cde034799d8e2400a3d59c77c0ee25722e9f: test(robot): add benchmark and regression coverage for latency, payload size, and storage churn [bd-j9jo3.9.10] (@Dicklesworthstone)
- c9eb186bde5e6321363034da10a32a1d06e997f1: test(robot): add comprehensive sensitivity and disclosure-control verification [bd-j9jo3.9.11] (@Dicklesworthstone)
- 53ac2cedcf407e2354dc5a54ee515167e3ca88bb: test(robot): add contract, schema, and registry discovery unit tests [bd-j9jo3.9.7] (@Dicklesworthstone)
- cc08c9af48def057e25b19e487360a3be7f988fa: test(robot): add unit tests for section projection and renderer parity [bd-j9jo3.9.9] (@Dicklesworthstone)
Full Changelog: https://github.com/Dicklesworthstone/ntm/compare/v1.10.0...v1.11.0
Container Image: ghcr.io/dicklesworthstone/ntm:v1.11.0
Breaking Changes
- feat(robot): remove deprecated robot assembly functions and unused wrappers
- refactor(tmux): replace canonicalAgentType switch-case with Canonical()
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About ntm
Named Tmux Manager — spawn, tile, and coordinate multiple AI coding agents (Claude, Codex, Gemini) across tmux panes with a TUI command palette.
Related context
Related tools
Beta — feedback welcome: [email protected]