Skip to content

ntm

v1.2.0 Maintenance

This release keeps dependencies and maintenance posture current for teams operating this tool.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai-agents cli developer-tools go tmux

Affected surfaces

auth

Summary

AI summary

Broad release touches @Dicklesworthstone, Quick Install ```bash, Others, and Bug Fixes.

Full changelog

NTM v1.2.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 init zsh)"   # for zsh
eval "$(ntm init bash)"  # for bash
eval "$(ntm init fish)"  # for fish

Changelog

Features

  • d0c03084424b468e67dc84345a3141785bee6d1d: feat(auth): add Claude Code authentication flow handler (@Dicklesworthstone)
  • b2beca09a4d9c3f457e29f7f3591485ad9508893: feat(auth): implement Claude auth flow logic with detection patterns (@Dicklesworthstone)
  • 79b7c0547af8d094ecf0f84b258d6e5ba052ca78: feat(auth): implement restart strategy with shell detection (@Dicklesworthstone)
  • 78fb96a4da46806034eafcc3e1309b619eba5280: feat(beads): add comprehensive Dashboard 360-View Cockpit bead structure (@Dicklesworthstone)
  • 5a86d625fa66a3e26c59f9364ddf449d4a2feaec: feat(cass): add initial Go client for CASS robot mode (@Dicklesworthstone)
  • 5fb96dd4fe822d089c102c43cb43f1fd885022ac: feat(cass): add ntm cass CLI commands (status, search, insights, timeline) (@Dicklesworthstone)
  • 8eb688f6f592799488b3cac50dbe63f15d999984: feat(cass): add robot mode flags for CASS integration (@Dicklesworthstone)
  • 143a113aaeee7f2966175800163c66876a4315de: feat(cass): implement context injection and duplicate detection (@Dicklesworthstone)
  • 330dec72803927a50bf3ea554d6a7f67c01bc4a6: feat(cass): implement full health check and capabilities discovery (@Dicklesworthstone)
  • 0326d4080019f71c98c29f3678ae3c26ad2d9c2c: feat(cass): implement full search query options support (@Dicklesworthstone)
  • 07b8d359d442b8562f9efee37eac4b9fad09e99d: feat(cass): implement graceful degradation when cass is missing (@Dicklesworthstone)
  • b8c04d1d84a92bae4af03c892909957b268145a6: feat(checkpoint): add storage and type tests (27% → 39.5%) (ntm-960) (@Dicklesworthstone)
  • 079cc4966d6ddef283e1f63533660d0892d8201c: feat(cli): CASS context injection, improved rotation, and watcher ignores (@Dicklesworthstone)
  • 19967d86af3ad77933e8841019630d6d439fda62: feat(cli): add 'What next?' success footers for spawn and quick (ntm-952.2.3) (@Dicklesworthstone)
  • ddcfff648abeb5e3bff184c19bce172341fff7ed: feat(cli): add --ssh flag to all commands for remote execution (@Dicklesworthstone)
  • 249ad5cddab70c71f81171dba36ef87f7c946556: feat(cli): add changes and conflicts commands for file modification tracking (@Dicklesworthstone)
  • 0cc100eca6a4eae5fb501d4cee0f3f5456ad56b2: feat(cli): add file watching mode, plugins command, and hooks directory support (@Dicklesworthstone)
  • a99e626d39a7d240092c422faca35bb24ec84942: feat(cli): add integration tests for spawn command and fix pane title parsing (@Dicklesworthstone)
  • da53e6f457561b55bdc1d88b5e739f4cafbe8c2b: feat(cli): add rotate command and interactive guards (@Dicklesworthstone)
  • 836b2229ca8320f2b3e039d195c3d27b573a8f83: feat(cli): add rotate command for account rotation (@Dicklesworthstone)
  • bb9e2fe736f2903b905281e38549afd9d83f2fee: feat(cli): add standard progress patterns for long operations (ntm-952.2.4) (@Dicklesworthstone)
  • d34cdda652519491fe5822f5acae1cfeee20540a: feat(cli): add tag filtering to send command (@Dicklesworthstone)
  • f8a9dadf244e3062f2f310ab301ce04fcf0fc267: feat(cli): implement --tag filtering for send, list, status, interrupt, and kill commands (@Dicklesworthstone)
  • 6d6fb720211116eefa4ad937f577472574a83c97: feat(cli): implement clipboard integration (EPIC: ntm-gon) (@Dicklesworthstone)
  • 66a85ef80ba6f539c347eb87c209d2ca9e11d156: feat(cli): unified session resolution and command improvements (@Dicklesworthstone)
  • 6efe37538eebf04e95752085bb7fe88aefda24d0: feat(clipboard): implement internal clipboard package and update copy command (@Dicklesworthstone)
  • 0c87071b7bc8657b760d6333a0553ac8c5384e18: feat(config): add --force flag to project init, improve template resolution (@Dicklesworthstone)
  • ac629f4256e4153ef3d8cf89031553e0b47e47ff: feat(config): add CASS integration configuration (@Dicklesworthstone)
  • ddde51e7e251f4b7cf4ba9a1510ccac553a8ffc6: feat(config): add CASS integration configuration options (@Dicklesworthstone)
  • bd24bcaaa8a3ecb3e4a7b5fc7e2b24a18282527c: feat(config): add NTM_CONFIG env var and JSON output for quick command (@Dicklesworthstone)
  • 3fa8af335182141a7f5261873663de8242c0c21d: feat(config): add accounts and rotation configuration schema (@Dicklesworthstone)
  • 8bcc773779e0a2033910771512dae724ab19bfe5: feat(config): add config file watcher and theme configuration (@Dicklesworthstone)
  • e9222b691eeee7e448f3eed92db76f85bd12c34a: feat(config): implement per-project configuration via .ntm/config.toml (@Dicklesworthstone)
  • a41b24a51ab5021953944472c8222d50e6803865: feat(copy): add pane selector, output file, and enhanced filtering options (@Dicklesworthstone)
  • e4f28b846eb43ccb34753e9e65f66b2d3a23a140: feat(dashboard): add Agent Mail integration fields to model (@Dicklesworthstone)
  • 5c20bcd12e68bedc8dd56fdcfd2d77d70a038346: feat(dashboard): add MetricsPanel and HistoryPanel components (@Dicklesworthstone)
  • 9d54b97aa13deaa92e737c7bad226f39fb1c84c7: feat(dashboard): add UBS scan status badge and layout fixes (@Dicklesworthstone)
  • 90454d1bf67b21443e14e543b70c9dfe53996954: feat(dashboard): add comprehensive layout and helper tests (39.9% → 48.4%) (ntm-m1tw) (@Dicklesworthstone)
  • ccb6c717ee37d4251ba4c73c39a706fdcd6060f1: feat(dashboard): add error handling for failed data fetches (@Dicklesworthstone)
  • 0244fe5db93a703f08c1be662166c44a7a2e76c3: feat(dashboard): add fetch coalescing, cancellation, and diagnostics (@Dicklesworthstone)
  • 28fd034af907a4440c3362c38712c647b226740b: feat(dashboard): add files panel and CASS context panel to sidebar (@Dicklesworthstone)
  • 5048c890b6c1a8788a1a9100e1540c82350cad89: feat(dashboard): add glamour renderer for detail pane output (@Dicklesworthstone)
  • d281f186387ebe0e00f71119aa5dba68a637484e: feat(dashboard): add help overlay with '?' toggle (ntm-952.4.1) (@Dicklesworthstone)
  • 7c04fc7e75c8dae0ffeac2b172ba40d49f003148: feat(dashboard): add panel focus system and enhanced pane row building (@Dicklesworthstone)
  • e1c6bd1f1beea38b32f36bea75205daf7f32af9c: feat(dashboard): add panel system with beads and alerts components (@Dicklesworthstone)
  • ecf13e3880d4c6d71d492b35e974f2a48f23223e: feat(dashboard): add project health and file locks to detail pane (@Dicklesworthstone)
  • 1aaf5371f7584058256b7277232b21d0faabdc8e: feat(dashboard): add shimmer animation for high context warnings (@Dicklesworthstone)
  • ac552b4059125648907652b0a82cd17a1bbb0b2d: feat(dashboard): add spinner animation for working state agents (@Dicklesworthstone)
  • 15d20b75d4d892a9f8a8d7c4439f94f7b42b3b24: feat(dashboard): add ticker panel and refactor panel system (@Dicklesworthstone)
  • 2616208fb495c74af668a869038150b040927cb3: feat(dashboard): center align banner and stats bar in dashboard view (@Dicklesworthstone)
  • b3341b752dc56a7fbe1928fb81de77086a67cd03: feat(dashboard): enhance terse output format for agent states (@Dicklesworthstone)
  • 9546122ffc900b34e41a899dc7c706eb18b38c04: feat(dashboard): enhanced pane grid with status icons and activity badges (@Dicklesworthstone)
  • 6dfb343ec082a1d2d7c83abe5ee787ada7eb9031: feat(dashboard): implement per-agent border colors with pulse animation (ntm-t0f2) (@Dicklesworthstone)
  • 44314f322b7fe05e385b022015542b7110c81800: feat(dashboard): integrate new panels into dashboard system (@Dicklesworthstone)
  • f40cf61682a7cb6a36828937f548e6a2d19f51da: feat(dashboard): integrate shimmer progress bar and refactor row building (@Dicklesworthstone)
  • 907069b23b10f9b1122f4698f190333aa2d9a7fc: feat(dashboard): integrate status detection with refresh cycle (@Dicklesworthstone)
  • 304b8195041093cb43690277ac6257675bed7693: feat(diff): add ntm diff command for comparing output (@Dicklesworthstone)
  • 8687242275be245e3afabeca77e56ba4a01ae2cc: feat(gemini): add auto-select Pro model feature for Gemini agents (@Dicklesworthstone)
  • 91dc8338fe375e058fc94f892b7e1e7f620ddec3: feat(history): add duration tracking for send operations (@Dicklesworthstone)
  • 836c98f767c5878801f54deb38fb69dba0a898f4: feat(history): display duration column in prompt history list (@Dicklesworthstone)
  • 64a546f32359c9eae38916f676cc35ab7923c598: feat(history): stabilize JSON output and add validation (@Dicklesworthstone)
  • 8c30c1450f688b977590135451511e67a6046480: feat(hooks): implement pre/post hooks for add and create commands (@Dicklesworthstone)
  • 1d262b9279932e60464f8495bd1f0e6401a044a2: feat(layout): add TierUltra and TierMega for ultra-wide display layouts (@Dicklesworthstone)
  • 7a27dcbaf8625e82c7d65c21e7b6e428d9bab11a: feat(mail): add Human Overseer messaging CLI for agent communication (@Dicklesworthstone)
  • ef672366a0c0b0f17c230d4d9b691704338536c0: feat(mail): add read/ack commands for Agent Mail messages (@Dicklesworthstone)
  • 4b4d3cf0239add06432f46785ef5cae97affaf14: feat(mail): implement ntm mail inbox command (@Dicklesworthstone)
  • 5d118aae2f966b0bc531c1151164451ee442fc65: feat(mail): restore full inbox implementation and fix dashboard references (@Dicklesworthstone)
  • 9a712a62a096c23d441a21ec7ec75972e11c6736: feat(mail): restore inbox functionality with stub fallback (@Dicklesworthstone)
  • 8304cc3bb5cf39b6ec87decce3e78074a4ff16b7: feat(output): add Agent Mail status to StatusResponse schema (@Dicklesworthstone)
  • 859c9142b40c482e67dc2a7980f4bb9df6d93193: feat(output): add CLIError system with remediation hints (ntm-952.2.1) (@Dicklesworthstone)
  • 72c89cfc7c858e7ed5d440ced40074a59e8831c2: feat(palette): add live reload, history tracking, and responsive layout (@Dicklesworthstone)
  • 474938fb806ff81095f783e0f86a43e5e73e37d9: feat(palette): add pinned commands, favorites, recents, and help overlay (@Dicklesworthstone)
  • 45f310963390cbc4a760ae1eaeb9217d1ffe85f7: feat(palette): improve navigation, filtering, and visual feedback (@Dicklesworthstone)
  • 9da54954b977caca168e56bb8264412d7cb74ac6: feat(panels): enhance beads and alerts panels with richer displays (@Dicklesworthstone)
  • 1ea7fcf3bd3e4ddeb4b296db47575acdfa4a543d: feat(persona): implement persona system for role-based agent spawning (@Dicklesworthstone)
  • 402617fbde485a9242322eede35a35197c8cf87b: feat(pipeline): add ntm pipeline command for multi-stage execution (@Dicklesworthstone)
  • f28750565d1f41cad22e3fc284055781fedc606d: feat(plugins): implement command plugins support (@Dicklesworthstone)
  • cf2fb9666821d87885ab16195e381cf941eace9f: feat(plugins): implement custom agent definitions via toml files (@Dicklesworthstone)
  • a8757296fa1768397d6b2e74b703f771c6310d89: feat(profiler): integrate recommendations into profile output (@Dicklesworthstone)
  • 0f60f21ee9dddb24eb55f4cd14c62d3aeebb1ecd: feat(quota): add ntm quota command and provider usage fetching (@Dicklesworthstone)
  • d9ab1273e51760aba4417196413cbdd0bdd5baae: feat(quota): implement quota tracking system core package (@Dicklesworthstone)
  • 7fcce1fc6e0ee614da62a2c559db3919a899c712: feat(resilience): add comprehensive test coverage (16.6% → 97.2%) (ntm-959) (@Dicklesworthstone)
  • f13c127c5bb89267bde0580e44b38dca1cb350e1: feat(robot): add --robot-dashboard for AI orchestrator consumption (@Dicklesworthstone)
  • eb13a912e3704fb5268849ef6bbb63b66db26c79: feat(robot): add --robot-markdown for token-efficient LLM output (ntm-xqbq) (@Dicklesworthstone)
  • bfbe6399941a0e15cb7232792e9b33b9bdcae09a: feat(robot): add --robot-save and --robot-restore flags for session persistence (@Dicklesworthstone)
  • 7f5231992d014b2d6a10b755a0219d3233da0958: feat(robot): add model/variant to robot output structs (@Dicklesworthstone)
  • 02e573ed76c651c894a8dfdbc858240fb8a031a1: feat(robot): comprehensive markdown table output for --robot-dashboard (@Dicklesworthstone)
  • bfa030ac7f8f090d4ea7eb95aa3df36fc7d649f5: feat(robot): enhance --robot-mail with pane mapping and conflict detection (@Dicklesworthstone)
  • 31bea69fee4cf42a0797b036ded0469ecb9168fe: feat(robot): enhance agent mail integration and add markdown section filtering (@Dicklesworthstone)
  • 0adc0746e89e78f6374c92f838014d789b369f52: feat(robot): enrich status output with Agent Mail and file changes (@Dicklesworthstone)
  • 6d0a8f9bec1e0dbf2733ceb5c49354e2a1d8bcb6: feat(rollback): interrupt agents before rolling back git state (@Dicklesworthstone)
  • c463c1770629195933c564261131a46d3cac5568: feat(rotate): implement full restart and re-auth strategies (@Dicklesworthstone)
  • 5163bed69a6917eda51d528463eaf3631f7ac516: feat(rotation): add --all-limited flag for batch rotation of rate-limited agents (@Dicklesworthstone)
  • 496bb3c4f7b2a7d151c3c9459778170d89071a40: feat(rotation): add multi-provider support (Codex, Gemini) via Provider interface (@Dicklesworthstone)
  • 1d98c451f18376645a7f4118c7c607b32136cb7f: feat(rotation): auto-trigger rotation on rate limit detection (@Dicklesworthstone)
  • 61a07a9bf3c2ee057816e611fcbdb3f07d8d9e78: feat(scan): add --watch mode for continuous scanning (@Dicklesworthstone)
  • 08b85cc2ba9ec9bec0f1000748f7ae132917a269: feat(scan): add agent mail notifications for scan results (@Dicklesworthstone)
  • ba331df0c04fb2445cd928494c63a99040a8cb3a: feat(scanner): integrate bv graph analysis with scan findings (@Dicklesworthstone)
  • 7e94badb912feabfd14d8d0ff6e02d826b39dca0: feat(startup): implement two-phase startup architecture (@Dicklesworthstone)
  • 6aed17861d88c8a231083efcdb4f404df6cb1d88: feat(status): display Agent Mail status and file reservations (@Dicklesworthstone)
  • 49bd65a6de7121914d0389ba1563ffbd69ad1d8b: feat(storage): add atomic writes, file locking, and efficient scanning (@Dicklesworthstone)
  • 1e86dd56bcbb87c141aa6e8a0e009cf5319cfa15: feat(styles): add shimmer progress bar and extend badge tests (@Dicklesworthstone)
  • ab98b4e82d27f5e0fdc8ad3f2dc0db8cd5cb27ea: feat(styles): add style builder functions using design tokens (ntm-952.1.3) (@Dicklesworthstone)
  • f42736a5f508a8c20deaba6427a465a5a1692f88: feat(theme): add Catppuccin Latte light theme and auto-detection (@Dicklesworthstone)
  • ab90a66d2e28be2ad72dc6e3fe1ecc400d56a843: feat(theme): add NO_COLOR standard support for accessibility (ntm-952.5.2) (@Dicklesworthstone)
  • 3bddb390baa50313145fae5190a1bee2724baff8: feat(tmux): add capture caching infrastructure (ntm-952.6.3) (@Dicklesworthstone)
  • a3a732fc08ff82845414ad70d5aae1b4ae58a71b: feat(tmux): add context.Context support for cancellable operations (@Dicklesworthstone)
  • 821d3b12b59c03723e6e91104f42bf376a2c7588: feat(tmux): add tag parsing and manipulation support (@Dicklesworthstone)
  • 1de71bbabb83c0c034cca0d8a608abee38b9944d: feat(tmux): refactor to use Client struct for remote execution support (@Dicklesworthstone)
  • 113c5069a4936129b2afe7c05b7ce4749961c53b: feat(tracker): add git-ignore aware file snapshots (@Dicklesworthstone)
  • d0cf74a361e7718604d6ac1496d51c6c0a1f165f: feat(tracker): add severity classification and LastAt tracking for conflicts (@Dicklesworthstone)
  • 61abde28842b994d30ad2a6481df9e10e21ddc42: feat(tracker): enhance conflict detection with severity levels and filtering (@Dicklesworthstone)
  • e24a3144324eb44939ad79c8bbcf23597bbeb32e: feat(tui): add CASS search palette to dashboard (@Dicklesworthstone)
  • 3a1c0526a3d9c916c1100385e74f3bb68e648760: feat(tui): add regression snapshot tests for state components (ntm-952.1.4) (@Dicklesworthstone)
  • 15daa474ef7cd1254c2fcae3e051f1c3e97fba5f: feat(tui): add responsive layouts and enhanced badge styling (@Dicklesworthstone)
  • 324ace6802ba2502559534b67785bc8857c1666a: feat(vscode): create initial extension scaffold (@Dicklesworthstone)
  • fba5c3f40140036dcafd254fe1bada8f0ed93938: feat(vscode): enhance dashboard with mail integration and improved styling (@Dicklesworthstone)
  • e77f0695c9fcb0715a1bed7d7988f6aef14c7307: feat(vscode): implement cli wrapper and status bar integration (@Dicklesworthstone)
  • 1571c2566c2e5d04825f121af78c95491425699f: feat(vscode): implement context commands and fix send targets (@Dicklesworthstone)
  • a3f2450d5119b0615037db0cf6adac40a41a460b: feat(vscode): implement webview dashboard with beads and mail status (@Dicklesworthstone)
  • 97a6894b4472fa36bb4e40dd635e5781b3a939af: feat(vscode): improve status bar context and color coding (@Dicklesworthstone)
  • d8938ce669ad0aa18459d7e6ddf90f1ed867eed1: feat(watcher): add WithIgnorePaths option for directory filtering (@Dicklesworthstone)

Bug Fixes

  • 02300cb3dd294ead0ee73112b7ee5e5e8a0b22ed: fix(agentmail): ensure session activity updates target correct project (@Dicklesworthstone)
  • 066c2d03e4e55c0b92f43c408d14deb3c2368ae1: fix(agentmail): normalize base URL, atomic session file writes (@Dicklesworthstone)
  • e465e3c9c644446f2af56c5816c1979bebbfa522: fix(agentmail): prevent thundering herd and improve Unicode handling (@Dicklesworthstone)
  • f62bfc3a5fe55318f3ce1b0a785ca42dd2e52c6b: fix(checkpoint): handle utf8 truncation and stderr warnings (@Dicklesworthstone)
  • 373e6123d59c2cc9070bccbf4d20b261e8022768: fix(ci): resolve CI failures in lint, GoReleaser, and tests (@Dicklesworthstone)
  • 8fd17e8e0338bf4003c461b6ecc54b7536fd92ce: fix(ci): skip flaky tests and SARIF upload issues (@Dicklesworthstone)
  • 251d3ba3ed156c08ffdbf989d16008e727b0a8a1: fix(cli): correct break statement and simplify agent counting (@Dicklesworthstone)
  • a4fa233edd50d173bcf30373f490b32404d6f76d: fix(cli): ensure non-zero exit codes on error in JSON output mode (@Dicklesworthstone)
  • 09af15a64bed0e5fd434aa9362b8e87be23f893f: fix(cli): improve mail JSON output and integration test setup (@Dicklesworthstone)
  • 54b3e67ad1dad9499e79d63ce9567349533b48ec: fix(cli): remove duplicate isInteractive and fix test assertion (@Dicklesworthstone)
  • eaefa7c497d3ae8a8b39ffb25a7311e66de60a68: fix(cli): require explicit args in non-interactive environments (@Dicklesworthstone)
  • 1a442c0da9cc5435a93de20d3e592b5ed2f6f5a7: fix(dashboard): add missing scanDuration field to Model struct (@Dicklesworthstone)
  • 4959909d95e58dba2e54e304d1763916e8d13027: fix(dashboard): add missing scanner import (@Dicklesworthstone)
  • 5775669b1bd8aa6eaa4ad1da3f338f475b4771a5: fix(dashboard): add scan duration timing (@Dicklesworthstone)
  • 06f904403330e2acd5f7e8e9facfe7cbfe03c9eb: fix(dashboard): preserve metrics data and fix shimmer effect (@Dicklesworthstone)
  • ce9c9960027f505bbe3c5a72264e4308bbff61b2: fix(dashboard): use loaded config for alerts instead of defaults (@Dicklesworthstone)
  • a8777bd61f44632554d8395f393acc47dc69a91a: fix(e2e): create project directory in variants test (@Dicklesworthstone)
  • d99318ef7c1a86d1dba96fadb6c6a6e4feb7a631: fix(e2e): tolerate spawn exit code in variants test (@Dicklesworthstone)
  • c8fb14833c242a480710b1ca9aeeb9745f0d32aa: fix(health): simplify agent detection and improve idle state accuracy (@Dicklesworthstone)
  • 74f3a489a016093b2b0335a2a347124ee144d004: fix(icons): default to ASCII icons to prevent width drift (@Dicklesworthstone)
  • 724db10c4028d54fcba51bd1dab13b552fdc78e4: fix(icons): replace emoji with ASCII-safe glyphs for terminal compatibility (@Dicklesworthstone)
  • 30afaef71cafe8c08c7947a624f6b8c31d3f188a: fix(mail): resolve duplicate function definitions (@Dicklesworthstone)
  • 9b39f8fe1a8c0d47f2f08cdf6c1765a767538f43: fix(pipeline): increase stage timeout from 5 to 30 minutes (@Dicklesworthstone)
  • 46dd5a69b8516bf75970dc56f66c353a5346f8a2: fix(prompt): improve file range handling and size limit enforcement (@Dicklesworthstone)
  • 38465d688b65f5bded614e77e8b574443d36b6cd: fix(prompt): improve line range parsing for Windows paths and validation (@Dicklesworthstone)
  • 40987f863947828c1fb97d92e0d0692403827a25: fix(rotate): update test expectation for dry-run validation (@Dicklesworthstone)
  • a686aeecca6e496a1ceb76414e7a92352e63c152: fix(status): check up to 3 non-empty lines for idle prompt detection (@Dicklesworthstone)
  • bacb1effadd4fece3cb463c82315d3ba6b4a012b: fix(status): make JS stack frame pattern more specific to avoid false positives (@Dicklesworthstone)
  • 77abd5ede1e005d7969357dad9eb5be92fba1292: fix(status): prevent false idle detection from $ in command history (@Dicklesworthstone)
  • c19d8ef32ffeb2a5f6bfbaa11cb41bb66600608b: fix(status): remove overly broad dollar-sign prompt detection in DetectAll (@Dicklesworthstone)
  • 5b946da00a7d16f3abd608c48086e18359ac2e67: fix(tests): add cleanup and error checking to CLI integration tests (@Dicklesworthstone)
  • 1af88d3c3a8c010dbcc134907619d125a103af78: fix(tests): improve E2E test reliability and formatting (@Dicklesworthstone)
  • 28d650a588a44e11454e717ced6f2fcc7605dcc4: fix(tests): update test expectations and improve test robustness (@Dicklesworthstone)
  • 02df9277309117701ee0a20c602dbc1908d8aea1: fix(theme): safer auto-detection with panic recovery and named return (@Dicklesworthstone)
  • bab88ba728b20433c2861d66fca6d333521b292b: fix(ticker): prevent ANSI escape code corruption in scrolling text (@Dicklesworthstone)
  • 332bad0407143e68074e1a4c656d09062b605226: fix(tmux): correct pane name regex to properly capture bracket tags (@Dicklesworthstone)
  • 55fc4f3b2415fcdf0f93cd7fa310dd475b87b4a3: fix(tmux): prevent command injection via unsafe directory quoting (@Dicklesworthstone)
  • c522dbbe04a84c9bdc83c05d70457839ee564a2e: fix(tmux): use client method for session checks and escape remote commands (@Dicklesworthstone)
  • 44c59943b64be19274ea8550468454a8461e7382: fix(vscode): resolve switch-case break warnings in dashboard (@Dicklesworthstone)
  • 6770aee59c3cb9645891a919cde13c220d1ba0c1: fix: remove dead code and use os.UserHomeDir() (@Dicklesworthstone)
  • 400d9d470593b47c6c4f60a2531f9b7c6260dd1a: fix: remove stub files and ensure all functionality is real (@Dicklesworthstone)
  • 5ca77bec43d720874a2a3f7048de62de4ed849cf: fix: resolve build errors in session, tracker, and cli packages (@Dicklesworthstone)
  • 580e4302892abeafcb43cbc7d85aa77e126f3a23: fix: resolve compile errors and consolidate duplicate code (@Dicklesworthstone)
  • 26a87fde0a148eb0ec1c728d2de8d97b52af5c1a: fix: sanitize filenames correctly and use stderr for warnings (@Dicklesworthstone)
  • b5eae8f5dd8ca9cbbbb146969834c393111a00fe: fix: session JSON output, config watch path comparison, dashboard cfg (@Dicklesworthstone)

Others

  • a6119c02659ba2b5256389b0cba4f98b1b93795d: Add robot dashboard output and markdown helpers (@Dicklesworthstone)
  • 79aa0d0209a1121b443b95c64a6cdb1538707e78: Adjust mail inbox command to delegate aggregated fetch (@Dicklesworthstone)
  • 2df072fd41ce6ff9e2987c23f09993cd596f5703: Fix flaky and failing tests in config, hooks, robot, and tmux packages (@Dicklesworthstone)
  • 916b976b1bfe3274c4725c2488fb90119e238d25: Implement basic plugin loading infrastructure (@Dicklesworthstone)
  • 0e60898c125de4fbd759b745e00fb5f00757d77c: Implement multi-file hook loading and fix cli bugs (@Dicklesworthstone)
  • c461a395b7e408e1ed9db6cd38456ff696e48f4d: Implement wide/ultra-wide layout for ntm status and fix compilation errors (@Dicklesworthstone)
  • 42c849b845a9fb0090b02f7dc58e9476be1119cc: Refine robot dashboard output structure (@Dicklesworthstone)
  • 1b625671bb99741ca32ed3f74b0ce61959ac890e: bench(dashboard): add Mega/Ultra layout benchmarks for ntm-jypl (@Dicklesworthstone)
  • 330857a4db8b57601ada87a4df942036094053ec: build: add ignore build tag to mail inbox stub (@Dicklesworthstone)
  • c110f57085d339f75e698e71f06c38e9520c1aa4: chore(beads): close completed tasks and update status (@Dicklesworthstone)
  • 5aa0889526bc1975c9fb2e23ffc8cb010b40bbe6: chore(beads): close ntm-952.2.1 (CLI error format standardization) (@Dicklesworthstone)
  • 39f8a1716fc61fee8a361ed0f8987290256559b4: chore(beads): close ntm-952.2.3 (What next success footers) (@Dicklesworthstone)
  • 6b1d411969206ebaedbb4ef6ac04f6faf4275ac1: chore(beads): close ntm-952.4.1 (Dashboard help overlay) (@Dicklesworthstone)
  • b2f86736ef6c3cf9efa409bd14298eae9a8e5c61: chore(beads): close ntm-bke.1 (Project Config Discovery) (@Dicklesworthstone)
  • 5ad157678ca6bd8d67afb1fcbb0153fef09c5ac4: chore(beads): close ntm-gnyw (@Dicklesworthstone)
  • c87891ab18cd34063aeae273a5cffab86619c5b4: chore(beads): close ntm-t897 UBS watcher integration (@Dicklesworthstone)
  • 0c9293832f66541f77059d6559610c0cefcaabfd: chore(beads): close ntm-xi11 test fix (@Dicklesworthstone)
  • be98427c7c064f4dc20a6bfb393b9b6d2ce03ea6: chore(beads): close ntm-y7l agent tagging (@Dicklesworthstone)
  • 7d936fdaeec5a29993f675261ec9d584605f2798: chore(beads): mark ntm-xqbq as closed (@Dicklesworthstone)
  • 2b30f21676e7b7b12ac867b8bcf8e4a6870f96fb: chore(beads): mark ntm-yl9x (Files Panel) as closed (@Dicklesworthstone)
  • d1698aef490d1bb08d75d2bd06dbf2f0af760863: chore(beads): sync issue tracker state (@Dicklesworthstone)
  • dcf023b967bb2357b86b621532b3f15713662afa: chore(beads): sync issue tracker state (@Dicklesworthstone)
  • 422bcfa71e4e96522903c3f5ca1383b9904965f1: chore(beads): update issue tracker state (@Dicklesworthstone)
  • 02a46e3b32b3b3235b103f15ce7869c903448faa: chore(beads): update issue tracking for UX polish work (@Dicklesworthstone)
  • 56d44f93788a005f06bd28887ff349affb1ff6c3: chore(cli): updates from testing session (@Dicklesworthstone)
  • 90abdb46181ddd7e200c5c982bad1701df8fbb34: chore(lint): simplify golangci-lint config for CI compatibility (@Dicklesworthstone)
  • f6979b10625621a085729e56a69eb5d48240a297: chore(release): update GoReleaser config for v2 compatibility (@Dicklesworthstone)
  • 4431b7e6cf55164bcc8c7ba4677a05e7b0107207: chore(startup): add rotate and plugins to command classification (@Dicklesworthstone)
  • bfdaca8e8852b4ddc87f3be0026d35c3e0c9de8c: chore(vscode): include pending client updates (getMail, error handling) (@Dicklesworthstone)
  • a69ee4995f1bc82c4483d4571bfe68b4d76b69ff: feat(dashboard/panels): adopt shared state components and add alert pulsing (@Dicklesworthstone)
  • f3d00f09b8b295725c1e3086e2a8ee7e4b9a8949: feat(dashboard/panels): use shared state components for empty/error states (ntm-952.4.2) (@Dicklesworthstone)
  • a1b238830edf37e67b9ee683418b71f88ec41004: feat(tui/components): add shared HelpOverlay and KeyHint patterns (ntm-952.1.2) (@Dicklesworthstone)
  • 0435e846f7c5209caddc59b43be07366debb4cc0: feat(tui/components): add shared state rendering component (ntm-952.1.1) (@Dicklesworthstone)
  • 25ad3185ad1f6bf2285c18a672d27b6f08bdfa00: feat(tui/dashboard): configurable refresh, output caching, quick actions (ntm-0c8q, ntm-952.4.4) (@Dicklesworthstone)
  • ea3837cd129cc2133012132c16a31e65e042ef97: feat(tui/panels): add height stabilization to prevent layout jitter (ntm-952.4.3) (@Dicklesworthstone)
  • 512c2c3a18bf2efa0b98c785a61bc7fc9d9aceda: feat(tui/styles): add reduced motion accessibility support (ntm-952.5) (@Dicklesworthstone)
  • 75b322387f63721d25d40d3135bf1705080a9837: optimize(history): efficient time-based pruning and batch import (@Dicklesworthstone)
  • a2d2702311f37a332e2791f8dae19951f624a81b: optimize(tokens): use smart estimation and remove redundant calc (@Dicklesworthstone)
  • 6bb929a402f60ec1b804b1163d6ad264b4ba8ba4: perf(notify,resilience): parallelize notifications and async event handling (@Dicklesworthstone)
  • d643c9086afce6f645680ff942293d8150ba91cb: refactor(bv): replace global WorkDir with explicit dir parameter (@Dicklesworthstone)
  • 11c105aadf5ac20fc155713a6f8885b78c33e6ea: refactor(cli): add stub pattern for optional commands and improve session display (@Dicklesworthstone)
  • 75c8f4776225dfee138142a63ffbfe80bdb6c2cc: refactor(cli): improve binding detection, cleanup send.go, enhance watch (@Dicklesworthstone)
  • a465c7a261f10e3ef2fcb35224b3ca4cb15f83ae: refactor(cli): improve mail command testability and error handling (@Dicklesworthstone)
  • 3119159af21ff65c4a2d3f045158bf3ef30b96f0: refactor(cli): make help command testable using io.Writer (@Dicklesworthstone)
  • f767282db37a15bed68c93d94c7cd34db1b39dde: refactor(cli): make help functions accept io.Writer for testability (@Dicklesworthstone)
  • 9a1d0d4c80aceea922991aaa31ee60b28a3757c9: refactor(codeblock): replace regex with stateful parser for nested fences (@Dicklesworthstone)
  • a678b74d4c59a8e98f17bf6da69b254bd9912851: refactor(config): extract ExpandHome helper and add project config watching (@Dicklesworthstone)
  • 0bc0a3f47b72fc45c4e63fee39b24266496c8e4d: refactor(infra): watcher polling, events async, config cleanup (@Dicklesworthstone)
  • 4aba4eb9c2a31638264e005d0b346284b25f29f5: refactor(mail): consolidate inbox code and stub robot dashboard (@Dicklesworthstone)
  • d46fef90270255ab362ec2aae31b18186cc82aa1: refactor(mail): consolidate mail_inbox.go into mail.go and clean up comments (@Dicklesworthstone)
  • 88e0f53275a67bb022dabbae4d9956ad069ef3e1: refactor(quota): improve PTY output polling and parsing reliability (@Dicklesworthstone)
  • da45a61c3a6c4ba6c361b8120d63aa035ea2bd0d: refactor(scanner): use bv package, pass project context consistently (@Dicklesworthstone)
  • 44d12db69aec7c82f87a443840dc53b10b088137: refactor(session): use tmux client, improve workdir detection (@Dicklesworthstone)
  • b10a900c7fb8fe942bbd08fd6a0198786b137da5: refactor(tui): adopt theme system for dynamic colors in components (@Dicklesworthstone)
  • 3728497dbc89f93090604dce5692314d1c801392: refactor(tui): improve responsive layout across dashboard and tutorial (@Dicklesworthstone)
  • 2bd4bad54dbb09402b49bb7fc52195c3b6106d74: refactor(tui/theme): improve status styles and list selection visibility (@Dicklesworthstone)
  • 889c537ef499a2a489230c34b16a287a3a289cee: refactor: code cleanup and formatting improvements (@Dicklesworthstone)
  • 50c7234bccffb6689eb33d40697aa564d81424f1: security(cli): apply command sanitization to add command (@Dicklesworthstone)
  • 7b94278b0a9b5e3ccbf4f94899a35085f56dc745: security(cli): validate model names to prevent shell injection (@Dicklesworthstone)
  • a0013369f49030538b42a0c95a78a4025b71b7d2: security(robot,session): apply command sanitization to all launch paths (@Dicklesworthstone)
  • 074005cae122c5eaf16a97e569d2387cd4d3349b: security(tmux): add pane command sanitization to prevent injection (@Dicklesworthstone)
  • 26f4a65e6f3b407f66b8a446af1347385359fc3e: security: harden input validation and sanitization across subsystems (@Dicklesworthstone)
  • 82a838194f76ef459fd96fd4590a35cbcb8f6352: style(cli): apply gofmt formatting to CLI command files (@Dicklesworthstone)
  • 3c44d0ae41d8efb264cefc47f53fc69892d6da05: style(dashboard): apply gofmt formatting to commands and history panel (@Dicklesworthstone)
  • b21af19fb1897554b1265ba8bd674ac5149ef317: style(robot): apply gofmt formatting and fix indentation (@Dicklesworthstone)
  • 0d43a0e2bffb1eeb69a97ac14da35f4df815692f: style(tui): apply gofmt formatting to style and theme packages (@Dicklesworthstone)
  • c765d68c51043fba1b959bb15ddc480fef928429: test(auth): add tests for Claude auth flow detection methods (@Dicklesworthstone)
  • 3f8c7e2e3a4899b50fe473b4fe371891a2299d38: test(cli): add real-tmux integration test for send command (@Dicklesworthstone)
  • 8f7b9c13200316784858dc2b8333cafa18031bf4: test(cli): add real-tmux integration test for status command (@Dicklesworthstone)
  • 45279837d079e76ff1d2554b073df54d866ad7fb: test(cli): add unit tests for help.go (@Dicklesworthstone)
  • 126cf2be25fb8b12c8b931d14193a18ab1cc98a8: test(config): add unit tests for config package (scanner, helpers) (@Dicklesworthstone)
  • 1aeb1a4a0a9bb5aa5604185657a2d80f25bdb71f: test(dashboard): add benchmarks for wide rendering performance (@Dicklesworthstone)
  • cab5f51a3038c044d14ec7c207cbdfd5434f86df: test(dashboard): add layout tier and split proportion tests (@Dicklesworthstone)
  • 60a9e862000752128f94baecaf3918e0489f0b1a: test(e2e): add comprehensive agent workflow integration tests (@Dicklesworthstone)
  • b4fc2c7da75d571cb4ea08f44491a338280f803b: test(e2e): add quick command E2E tests (@Dicklesworthstone)
  • 4a5ed404c649843fab37ab7505de0ce9a782e908: test(e2e): strengthen robot mode JSON output validation (@Dicklesworthstone)
  • f08b44003f4d24abd4c0fd3fb2185a375e651c6c: test(history): add JSON output integration test (@Dicklesworthstone)
  • 34cacb6f31f920d17966a763a2c0cea1047fefd5: test(hooks): skip timeout test on CI environments (@Dicklesworthstone)
  • 94c9f80e74e6090d995a3dbaf7b877439fc05f62: test(infra): add BuildLocalNTM helper and improve test reliability (@Dicklesworthstone)
  • e56109aa61fced51fe2abdae45200a92fabe70c7: test(integration): add CLI spawn/send/status integration test (@Dicklesworthstone)
  • fb35dbc3c1524a452d501c972fd9d968f7275ec1: test(integration): add CLI → tmux integration tests (@Dicklesworthstone)
  • 373af00b0a1b932443f91d163e4957b72d1e7917: test(integration): add config loading integration tests (@Dicklesworthstone)
  • c6c2501c53bebfb25868828067111080809b16bc: test(integration): improve flaky status detection tests (@Dicklesworthstone)
  • 9a3ca38d07af390315daa000e48443389a2595d1: test(integration): skip TestStatusDetectsAgentTypes on CI (@Dicklesworthstone)
  • 0d01c5b2a7a3b2da3135ceb2ea90f5059911af7d: test(layout): add comprehensive tier system boundary tests (@Dicklesworthstone)
  • a072b73fb4e70106e5103a6507b6830f966cc3e1: test(output): add unit tests for output package to improve coverage (@Dicklesworthstone)
  • 0fc92255b5ca0a53a6cab3f6f1e6f1bf60046d18: test(panels): add comprehensive tests for all dashboard panels (@Dicklesworthstone)
  • fcf50257caa1ad7b776bf4f0af6b047f34928b36: test(panels): add comprehensive ticker panel tests (@Dicklesworthstone)
  • f84c8e94e91098faa40b30a1d5b19fa3e6b53dfb: test(resilience): add testability hooks and restartAgent test (@Dicklesworthstone)
  • 65a4111aeba8e7afbbff291f541f3bb68246cd52: test(robot): add unit tests for PrintTerse, PrintSpawn, Save/Restore (@Dicklesworthstone)
  • b87914945a6687f76e10940f28f11786cf835097: test(security): add model validation tests for shell injection prevention (@Dicklesworthstone)
  • f90d0cd82fd6ace8ef3825bfe0ca9ca88b0fb02b: test(styles): add tests for theme-aware gradient and color helpers (@Dicklesworthstone)
  • 8a606177da327f78abb645192ef5657120afc28f: test(templates): add shell quoting tests and fix doc comment (@Dicklesworthstone)
  • 61ca083ccd41e02910b802689924890381aa41f7: test(tmux): add unit tests for internal/tmux to improve coverage (@Dicklesworthstone)
  • b7dc262b8d62db62de6b970b081a096f1c23cbef: test(tui): add comprehensive unit tests for TUI packages (@Dicklesworthstone)
  • af063a71bb55544a5560fdbea3765e30c2624905: test(tutorial): add comprehensive unit tests for tutorial model (@Dicklesworthstone)
  • 00eceb02d78961943efb2d6c41b87d57d8c9dc3c: test(updater): add unit tests for version comparison and update checks (@Dicklesworthstone)

Full Changelog: https://github.com/Dicklesworthstone/ntm/compare/v1.1.0...v1.2.0

Container Image: ghcr.io/dicklesworthstone/ntm:v1.2.0

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

Track ntm

Get notified when new releases ship.

Sign up free

About ntm

Named Tmux Manager — spawn, tile, and coordinate multiple AI coding agents (Claude, Codex, Gemini) across tmux panes with a TUI command palette.

All releases →

Beta — feedback welcome: [email protected]