tuios
Gaurav-Gosain/tuios加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个下午:你让 Claude Code 重构支付模块,让 Codex 写测试,让 Gemini CLI 跑迁移脚本。三分钟之后,四个终端面板全在滚动,你不知道谁卡在了"是否允许执行 rm",谁已经改完在等你 review,谁直接报错了。你只能一个一个切过去看——而每次切换,你都会丢掉另一个面板的上下文。
TUIOS(Terminal UI Operating System)就是为这个场景做的。它不是又一个 tmux 克隆,而是把"面板里跑的是个 AI agent"这件事当成一等公民:面板标题栏上有一个字形(●工作中 / ▲等你 / ■完成 / ×出错),右侧边栏列出所有 agent 及其状态,一个 Inbox 汇总"所有正在等你的人"——审批请求、提问、报错、完成通知,甚至来自另一台机器上的 agent。
tmux / zellij / i3 解决的是"窗口管理":分屏、布局、会话保持。但 2024 年之后终端里跑的越来越多不是 shell,而是 AI 编码助手,它们的交互模型与传统进程完全不同——一个 Claude Code 会先问你"允许我读这个文件吗",然后在你去开会的那 20 分钟里干等。
作者 Gaurav-Gosain 从 2025 年 9 月起做 TUIOS,到 v0.11.1(2026-10-26)已经积累了 6123 星、283 fork、5452 次提交、57 位贡献者,代码以 Go 为主(约 34.5MB Go 字节),MIT 协议,是 Terminal Trove 的"本周工具"。
传统多路复用器像一个停车场:你停好车就走,车的状态(还在开?坏了?)得你自己去看。TUIOS 更像一个快递分拣中心:每个包裹(面板)自己贴着运单(agent 状态),扫描即更新;分拣中心有一块"待处理区"(Inbox),堆积着所有需要你签收、回复、或者只是看一眼的包裹;甚至可以跨仓库调拨——在另一台服务器上开一个工位,把货送过来。
Agent 状态感知(六大信任源):状态按可信度分层——report(agent 主动上报,最准,只有它能可靠地说出 needs_input)、transcript(读 harness 的记录文件)、osc(OSC 9;4 进度或窗口标题)、screen(屏幕规则匹配)、detect(检测前台 agent CLI)、stall(静默超时)。低优先级源不能覆盖高优先级,但有个例外:屏幕规则识别到权限弹窗时,可以把陈旧的"工作中"纠正为"等你",弹窗一消失就还原。
Inbox 与 Review:Prefix+i 汇总所有会话(含远程机器)等待你处理的事项,直接在 Inbox 里回答提问;对 Claude Code、opencode、Kilo、Qwen Code 的权限请求可用一键授权。Review 视图左侧是文件列表、右侧是高亮 diff,可对具体 hunk 或文件留笔记回传给 agent。
Fleet 与 Worktree:tuios fan 用一条 prompt 启动多个 agent(可混合不同 harness),每个在独立 git worktree 中工作;tuios worktree pull 把改动拉回来。守护进程重启后,Inbox 会主动提示恢复每段被中断的 agent 对话。
跨机器协同:tuios hosts add 通过 SSH 命名远端机器,可用 tuios attach --host build api 把远端会话画到本地;每台机器的 [hosts] 策略限定其他机器能做什么。
MCP Server:tuios mcp 把同一套能力以 MCP 工具暴露给 agent,默认只读且限制在 agent 自己的会话内——这是很克制的设计,agent 可以查询状态而不能随意接管。
终端能力深度:自研 ANSI 模拟器(vt/)支持 scrollback、kitty/sixel 图形、kitty 键盘协议、OSC 133;kitty 图形透传用图片 ID 复用做到无闪烁,配合 mode 2026 同步输出避免撕裂;事件驱动渲染,空闲零 CPU;样式 LRU 缓存省掉 40-60% 分配。
docker run -it --rm ghcr.io/gaurav-gosain/tuios:latest,零依赖。brew install tuios / AUR / nix run github:Gaurav-Gosain/tuios#tuios / go install github.com/Gaurav-Gosain/tuios/cmd/tuios@latest。Web 终端另有 tuios-web 二进制(默认拒绝非 loopback 明文暴露,强制密码与 TLS,distroless nonroot 镜像)。
其一,它是"终端里的东西",全部价值依赖终端能力;要拿到 kitty 图形、无闪烁视频这类体验需要 kitty / WezTerm / Ghostty 等现代模拟器,经典 XTerm 下会降级。其二,agent 集成本质上是给 19 个 harness 打补丁式的 hook 安装(Claude Code、Codex、Gemini CLI、opencode、Kilo、Qwen Code、amp 等),上游 harness 一改协议就得跟着改。其三,项目同时兼容 tmux(tmux-shim 支持 Claude Code agent teams),说明它想吃掉 tmux 的存量场景,但也意味着兼容层是持续负担。其四,社区规模相对年轻(57 位贡献者),API 与协议仍可能变动。其五,README 顶部专门警告有人冒充官方 X 账号,生态安全意识尚在建立期。
TUIOS 代表一条清晰趋势:AI 编程工具的竞争,正从"模型能力"转向"人机协作的界面效率"。当一次会话里同时跑着五个 agent,"谁在等我"这个问题的价值超过了"窗口怎么排布"。它把 agent 编排、审批网关、跨机调度、MCP 暴露、diff review 全部收进一个终端多路复用器,等于给 agent 时代造了一层"操作系统式的调度外壳"。6123 星、两周一次的版本节奏(v0.11.1 到 v0.10.1 之间迭代密集)、18 条 CI 工作流(含 e2e、fuzz、govulncheck)说明它正在从个人项目走向有工程纪律的基础设施。




