NTM(Named Tmux Manager)
把 tmux 变成多 AI 编码代理的本地控制平面:在一个 Go 二进制里完成会话编排、任务分诊、安全审批与自动化接口。
证据显示安全设计相当突出:策略/审批系统、双人审批(self-approval被拒绝)、自动化指派把标签当授权边界、fail-closed 行为、worktree 隔离、检查点/时间线/审计等可回滚机制覆盖全面,故 user_confirmation 与 rollback 给满分。扣分项:产品本质是驱动多个能执行任意 shell 命令的编码代理并做 git 合并等高影响操作,external_effects 只靠策略层缓解,证据中未见执行层防护证明,给 1;安装推荐 curl | bash 直接执行远程脚本,削弱 least_privilege 与 data_flow_transparency;govulncheck 在 CI 中 continue-on-error 且 bubbletea 用本地 replace,dependency_security 扣为 2;敏感数据处理仅见『不在 NTM 配置存放凭据』的声明,给 2。
README 内部一致,明确 fail-closed、机器人接口返回类型化错误文档、ntm deps -v、优雅降级设计,CI 含 reality guards 与 parity gate,self_consistency/failure_messages/dependency_availability 均有实质支撑给 2;未给满分是因为提供的文件中没有核心 Go 源码,错误处理与一致性的实际实现无法静态核验。
受众与场景描述极为充分(多代理编排、工作分诊、协调、流水线),Grok 阶段一明确列出『不声称支持』的清单并 fail-closed,capability_boundaries 与 audience_and_scenarios 给满分;扣分:环境明确仅 Linux/macOS(Windows 被排除)、强依赖 tmux 及多个外部工具(br/bv/Agent Mail),environment_fit 给 2;触发精度依赖 readiness 正则与显式 robot 表面,证据充分但未见实现,给 2。
信息架构、命令地图、配置分层(用户级/项目级)非常好;已知限制披露诚实(Grok 范围、config 迁移提示),known_limitations 给满分。重扣:license 为 MIT 加针对 OpenAI/Anthropic 的限制性 rider,非 OSI 兼容、法律效力存疑,与仓库元数据 NOASSERTION 一致,license 给 1;安装说明只有 curl | bash 一行,无手动安装/校验和路径,install_notes 给 1;证据中未见 CHANGELOG 文件,versioning_changelog 给 1(CI 显示 VERSION 文件与发布预检存在但不足以到 2);单一作者(Jeffrey Emanuel)维护,bus factor 低,maintenance_responsibility 给 2。
输出可用性极强:robot JSON、OpenAPI 规范及漂移检测、parity matrix、markdown/terse 格式;问题陈述清晰且功能组合(tmux 多代理 + 策略审批 + 工作图分诊)边际价值明确,两项给满分;cost_benefit 扣为 2:系统要求 tmux、多个外部 CLI、Agent Mail 等整合,复杂度和维护面大,收益依赖整个生态可用。
README 的许多声明(防漂移的 OpenAPI、覆盖率阈值、parity gate、SHASum 固定的 CI 依赖)可由 CI 工作流和测试脚本部分佐证,cross_source_corroboration 给 2;claim_traceability 给 2:声明具体(如 badge 状态表、审批一次性消费)但本次证据不含主源码,无法逐条核对实现;fact_inference_separation 表现好——README 主动区分『尚未声称』的能力与已实现能力,但整体文档以第一人称断言为主,缺乏第三方验证,止步 2。
- 不要盲目执行 README 推荐的 curl | bash 安装;先审查 install.sh 并核对校验和。
- 许可证为 MIT 加禁止 OpenAI/Anthropic 及其关联方使用的 rider,企业采用(尤其涉及这两家公司工具链的团队)前必须法务审查;这不是标准 OSI 许可证。
- 该工具驱动能执行任意 shell 命令的编码代理并合并 git worktree,破坏性风险主要取决于策略配置质量;部署前审查默认策略并保持审批门槛开启。
- govulncheck 在 CI 中不阻断构建,本地 vendor 的 bubbletea 替换不受上游漏洞修复覆盖,需自行跟踪。
- 单一维护者项目,bus factor 为 1;无可见 CHANGELOG,升级时逐版核对行为变化。
这个 Agent 能做什么,适合哪些场景?
NTM 是一个纯 Go 编写的单二进制工具,将 tmux 封装为多代理开发控制平面。它围绕命名的 tmux 会话生成带标签的代理窗格(Claude、Codex、Antigravity/GY、Grok Build,Gemini 为遗留支持),并提供仪表盘与 TUI 命令面板。除会话管理外,它还集成了基于 br/bv 的工作图分诊与自动分配、Agent Mail 协调与文件预留、破坏性命令的策略与双人审批,以及检查点、时间线和审计日志等持久化状态。对自动化场景,它提供 --robot-* 机器可读接口和本地 REST/SSE/WebSocket 服务器(ntm serve),并生成 OpenAPI 规范。系统设计为本地优先,可选集成(Agent Mail、CASS 等)缺失时仍可优雅降级运行。
NTM 在 tmux 中生成命名会话(ntm quick、ntm spawn),按 --cc/--cod/--agy/--grok 等参数分配代理窗格,支持标签化多群、worktree 隔离分支与合并。操作者通过 ntm send 派发提示、ntm interrupt 中断、ntm watch/activity/health 监控、ntm diff/grep 检查输出。工作分诊通过 ntm work triage/next 和 ntm assign --auto 按 br/bv 工作图执行,带审批标签门控。协调层提供 ntm mail、ntm locks(含需审批的 force-release)、ntm coordinator 自动分配与摘要。安全层用 ntm safety check、ntm policy、ntm approve 实现审批门控。状态持久化通过 ntm checkpoint、ntm timeline、ntm audit、ntm pipeline(支持恢复)。自动化层暴露 --robot-snapshot/--robot-send 等接口及 ntm serve(/api/v1 REST、/events SSE、/ws WebSocket、OpenAPI 文档)。自定义代理类型可经 agents/ 目录的 TOML 插件加载(如内置的 Oh My Pi omp 预设)。
- 独立开发者在同一项目上并行运行 3–5 个 Claude/Codex 窗格,需要统一仪表盘和命令面板而非裸 tmux 窗格管理
- 技术负责人想按 br/bv 工作图自动把具体任务分配给特定代理,并保留审计记录
- 需要让多个代理在同一仓库工作但互不冲突的团队,使用 --worktrees 隔离 Git 检出并用 Agent Mail 预留文件
- 运维敏感环境中的工程师,需要在执行 git reset --hard 等破坏性命令前强制策略与双人审批
- 脚本或 CI 场景的自动化用户,通过 --robot-* JSON 接口或 ntm serve 的 REST/WebSocket 程序化驱动代理群
- 运行长流程多步骤代理流水线(review.yaml 等)且需要失败后从断点恢复的用户
这个 Agent 有哪些优点和局限?
- 单一 Go 二进制集成会话编排、工作分诊、安全审批、协调和 API,无需拼接多个脚本
- 破坏性操作默认审批门控(如 locks force-release 需第二人批准,拒绝自批),安全是核心设计而非事后补丁
- 持久化设计完善:检查点、时间线、审计日志和可恢复流水线使中断可恢复
- 双重自动化接口:本地 --robot-* JSON 命令用于脚本,ntm serve 提供 REST/SSE/WebSocket/OpenAPI 用于长期集成
- 插件化的自定义代理类型(agents/ 目录 TOML),内置 Oh My Pi 验证预设,可扩展非内置 CLI
- 深度依赖 tmux,仅在 Linux/macOS 上为主要环境,不适用于 Windows 原生终端
- 高级功能依赖外部工具:br、bv、Agent Mail、CASS 等未配置时相应能力不可用
- Grok Build 支持处于第一阶段:不支持自动提示投递、中断带消息、重启和恢复时重启,这些操作会失败关闭
- 不接受外部贡献,PR 不会直接合并,问题修复依赖作者与 AI 审核的独立流程
- 许可证为 MIT 加附加条款(OpenAI/Anthropic rider),GitHub 标注 NOASSERTION,合规使用前需阅读 LICENSE
- 配置加载严格(未知字段报错),从旧版本迁移需手动调整如 [health] 到 [resilience] 的配置段
如何安装或部署这个 Agent?
三种安装方式:1) 安装脚本:curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/ntm/main/install.sh?$(date +%s)" | bash -s -- --easy-mode;2) Homebrew:brew install dicklesworthstone/tap/ntm;3) 源码:git clone https://github.com/Dicklesworthstone/ntm.git && cd ntm && go install ./cmd/ntm。也可用 Docker 镜像 ghcr.io/dicklesworthstone/ntm:1(amd64/arm64)。运行必需 tmux,以及你想启动的代理 CLI(Claude Code、Codex、Antigravity CLI 或 Grok Build);安装后运行 ntm deps -v 验证。
如何使用这个 Agent?
启用 shell 集成:eval "$(ntm shell zsh)"。创建项目并启动混合群:ntm quick api --template=go,然后 ntm spawn api --cc=2 --cod=1 --agy=1。打开仪表盘与面板:ntm dashboard api、ntm palette api。派发任务:ntm send api --cc "Map the auth layer and propose a refactor plan."。用 ntm work triage 查看工作图,ntm assign payments --auto --strategy=dependency 自动分配。保存检查点:ntm checkpoint save api -m "before auth refactor"。启动本地 API:ntm serve --port 7337;脚本调用用 ntm --robot-snapshot 等接口。