开发与工程 terminal-emulatorterminal-multiplexersshgitgpuirustpersistent-sessions

tty7 终端工作台

一个纯 Rust 终端工作台:持久会话、远程开发与多智能体感知,GPU 渲染,无需 tmux。

FollowAgents 评估 · FARS-2.1
谨慎使用
67/ 100 五分制 3.4 / 5
1 2 3 4 5 6
1信任安全19 / 29 · 3.3/5

CI 工作流显式声明 contents: read 最小权限;状态钩子需在设置中一键安装(选择性加入);SSH 凭据走系统钥匙串(keyring),CredentialRef 不含秘密;远程安装的服务器刻意不启用 gssapi 与 HTTP 下载路径,配置分割有明确理由。扣分点:远程 install 将服务器二进制推送到目标机器、Windows 更新器使用提权与注册表写入、来源为未验证发布者,且无安全文档或威胁模型说明;版本回滚路径未见明确机制(仅stable/nightly通道区分),故 rollback 仅 1 分。上游署名(gpui、alacritty_terminal、russh 补丁、issue 编号)非常完整,source_attribution 满分。

2可靠稳定6 / 14 · 2.1/5

README、Cargo.toml 与 CI 相互一致(版本、目标矩阵、特性门控),但扣分点:依赖来自多个作者自有 fork(gpui、gpui-component、alacritty、russh),发布者身份未验证,单一维护者 fork 的长期可用性是实质供应链风险,故 dependency_availability 仅 1;本批文件未含实际错误处理代码,失败消息仅能从注释推断(测试挂起诊断、libtest 超时输出),给 1 分。CI 中承认测试套件约十分之一概率挂起且原因未查明,本身也是可靠性减分证据。

3适用触发15 / 18 · 4.2/5

目标用户(开发者、远程工作、AI 编码代理场景)界定清晰;环境适配证据充分:三平台矩阵、musl 静态服务器、gssapi 特性按平台裁剪、Linux 托盘降级行为有说明。支持矩阵按 Detected / Status / Fork 三档划分,边界诚实。扣分点:触发精度(钩子何时何种条件触发)仅有设置项描述,无细节文档;无 FAQ,故多项不给满分。

4规范维护14 / 18 · 3.9/5

文档架构清晰(docs/、skills/、README 双语);安装说明按平台详尽,Linux 源码构建依赖在 CI 与说明中一致;许可证文件完整(Apache-2.0,版权声明齐全),license 满分;命名稳定(tty7/tty7-core/tty7-server/tty7-cli 一致)。扣分点:CHANGELOG 仅是链接、内容未见;已知局限多埋在源码注释(notify-rust 弃用 API、GNOME 托盘缺失)而非面向用户文档;维护责任高度集中于单一未验证发布者,无治理或签署承诺。

5有效结果9 / 13 · 3.5/5

CLI 面向代理设计(run 透传退出码、capture、wait --until free、split/send)输出可用性好;无 tmux 依赖的持久会话与 19 代理感知构成实质边际价值。扣分点:~2× 吞吐等性能声明仅来自自述基准,静态审查无法独立证实,故 marginal_value 不给满分;自身维护多个 fork(gpui、alacritty、russh)的长期成本与单人维护风险使成本收益打了折扣。

6证据核验4 / 8 · 2.5/5

基准测试提供方法论与一键复现脚本链接、CI 中有打包后校验步骤(版本、签名、静态链接断言、checksums.txt),声明可追溯性尚可。扣分点:本审查范围内无第三方独立数据源可交叉印证性能与稳定性主张,cross_source_corroboration 仅 1;源码注释多处区分'已在本地验证'与'预期行为',事实与推断分离做得较好但未见测试代码本体,给 2。

证据充分度: 评估于 2026年9月7日 审查版本 bfabe0537547
使用前请注意
  • 核心依赖(gpui、gpui-component、alacritty_terminal、russh)均来自作者自有 fork 或补丁,发布者未经验证:应自行核对 pinned rev 与 Cargo.lock,并评估 fork 长期可用性。
  • 远程工作区会将 tty7-server 推送到目标机器,Windows 更新器涉及提权与注册表修改:部署前确认远端安装的权限范围与卸载方式。
  • 性能声明(~2× 吞吐、888 fps)仅为自述基准,使用前请用 scripts/bench/ 自行复现。
  • CI 自述测试套件约十分之一概率挂起且根因未查明;静态审查未覆盖任何运行时行为,生产采用前应在受控环境实测。
  • 未提供安全文档或数据流威胁模型;SSH 凭据管理建议在采用前独立审查 crates/tty7-core 的凭据处理代码。
评估证据 [1][2][3][4][5]
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

tty7(GitHub: l0ng-ai/tty7)是一个用纯 Rust 编写的终端工作台,采用 Zed 的 gpui 做 GPU 渲染,VT 核心来自 Alacritty 的 alacritty_terminal。其架构核心是一个后台常驻服务器:shell 和窗格归服务器所有而非窗口,因此退出应用甚至重启后,shell 和受支持的 agent 会话仍持续运行,无需 tmux。它对 AI 编码代理具备感知能力,可自动检测 19 种 CLI agent(如 Claude Code、Codex、Gemini、Copilot),显示状态点、通知、分支与 diff 信息,并支持通过托盘图标提示需要输入。它内置原生 russh SSH 栈、SFTP 面板、端口转发、跳板机,以及跟随焦点窗格的 Git 面板(暂存、提交、分支、worktree 等)。tty7 提供 macOS、Windows、Linux 原生安装包,Apache-2.0 许可证,README 自述性能约为 Alacritty、Ghostty 或 Kitty 的两倍吞吐量。

tty7 启动一个后台守护服务器来持有所有 PTY(shell 与 agent 进程),GUI 窗口只是连接到该服务器的客户端。每个窗格自动注入 shell 集成(zsh、bash、fish、PowerShell、WSL、远程窗格),无需安装插件即可获得提示符标记、工作目录、退出码和命令完成通知。输入侧提供历史幽灵建议、带解释的 Tab 补全、语法高亮、多行编辑、⌃R 模糊历史搜索。它按窗格检测 19 种 agent CLI,在 Settings → Agents 中一键安装 hook 后可启用状态点、通知、托盘图标、tty7 wait 以及重启后恢复会话;支持 fork agent 会话(如 Claude Code、Codex、Grok、OpenCode 等八个 agent 完整支持)。捆绑的 tty7 CLI 面向 agent 脚本化:run(流式执行命令并透传退出码)、split、send、wait --until free、capture。远程工作区通过原生 russh 栈把文件、仓库、diff、窗格留在远端机器,支持从任意客户端重连续接。Git 面板提供暂存、提交、amend、分支、push、stash、并排/unified diff、提交图(cherry-pick、revert、reset)与 worktree(新 worktree 自动开新标签)。窗口功能包括标签与分屏、⌘P 命令面板、⌘F 回滚搜索、⌘J 进程树与监听端口面板、13 种主题(支持自定义 YAML 与 iTerm2 导入)、IME。

  1. 同时管理多个仓库里 Claude Code / Codex 会话的开发者:在标签侧边栏按仓库分组查看各 agent 状态、分支与 diff,agent 需要输入时通过托盘图标得到提醒
  2. 需要会话在重启后依然存活的用户:shell 与受支持的 agent 会话由后台服务器持有,退出或重启后可恢复,无需学习和维护 tmux 配置
  3. 远程服务器上做开发的工程师:通过 SSH 工作区把文件、仓库和窗格留在远端,断线后从任意客户端重连并继续原状态
  4. 想让 agent 之间互相协作的自动化场景:一个 agent 通过 tty7 CLI 为另一个开窗格、发送任务(send)、等待空闲(wait --until free)并读取输出(capture),GUI 不运行也可用
  5. 重度终端用户:需要编辑器级输入体验(补全、高亮、模糊历史搜索)和内置 Git 面板(暂存、提交、worktree),不想离开终端窗口
  6. 在 macOS、Windows、Linux 之间切换的多平台用户:三个平台均有原生安装包,主题可从 iTerm2 导入

这个 Agent 有哪些优点和局限?

优点
  • 后台服务器架构使会话真正持久化:退出应用或重启后 shell 和受支持的 agent 会话继续运行,替代 tmux 且无需额外学习成本
  • 性能自述占优:README 基准显示 11 MB cat 吞吐 95 ms(对比 Alacritty 239 ms、Ghostty 179 ms、Kitty 185 ms),DOOM-fire 帧率 888 fps,且提供 scripts/bench/ 的一键复现方法
  • agent 感知深度集成且不包装代理:检测 19 种 agent CLI,不通过 wrapper 或 proxy 运行,agent 在普通 PTY 中保持原样,降低兼容风险
  • 面向 agent 的 CLI 设计完整:run/split/send/wait --until free/capture 让 agent 可以脚本化协作,甚至在没有 GUI 时运行
  • 内置原生 russh SSH 栈与 Git 面板,远程文件、diff、worktree 与终端工作流在同一窗口完成
局限
  • 完整的 agent 状态/恢复/fork 功能需为每个 agent 手动安装 hook(Settings → Agents),fork 还依赖 agent 自身的 fork 命令,目前仅 8 个 agent 获得完整支持
  • 采用 Zed 的 gpui 图形栈和自研持久服务器,属于较新的技术组合,长期稳定性证据有限;fork 功能甚至尚未覆盖 Gemini、Copilot 等常见 agent
  • 冷启动内存 116 MB(GUI 105 MB + 服务器 11 MB),高于 Alacritty 的 105 MB,对纯性能敏感的最小化用户并非最优
  • 远程模式需要在远端机器安装 tty7-server(虽为一次性非特权安装),企业受限环境下可能受阻
  • Linux 仅提供 x86_64 AppImage,无 ARM 包;仓库未提供包管理器(apt/brew/winget)安装渠道

如何安装或部署这个 Agent?

从 GitHub Releases(https://github.com/l0ng-ai/tty7/releases)下载对应平台的原生包:macOS 下载 …-macos-arm64.dmg 或 …-x86_64.dmg 并拖入 Applications;Windows 下载 …-setup.exe 或便携版 ….zip;Linux 下载 …-x86_64.AppImage,执行 chmod +x 后直接运行(X11/Wayland 库已捆绑)。如需给 agent 安装 tty7 技能,运行:npx skills add l0ng-ai/tty7(后续用 npx skills update tty7 更新)。高级配置通过 config. 完成,文档在 docs/ 目录(键盘快捷键、配置、CLI 参考)。

如何使用这个 Agent?

启动 tty7 后即可开标签和分屏窗格;shell 集成在窗格启动时自动注入,无需安装。要让 agent 感知生效,进入 Settings → Agents 对所用 agent 一键安装 hook,即可获得状态点、通知、托盘图标、重启后会话恢复和 tty7 wait 功能;fork 会话还需该 agent 自身的 fork 命令。agent 或脚本可使用捆绑的 tty7 CLI:tty7 run <命令>(流式输出并透传退出码)、tty7 split、tty7 send、tty7 wait --until free、tty7 capture。远程开发在 SSH 配置中设置档案(支持钥匙串密钥、跳板机、端口转发),首次连接会执行一次非特权 tty7-server 安装。配置文件为 config.,可用 agent_commands 把包装脚本启动的 agent 按名称映射到已知 agent。

这个 Agent 与同类方案有什么区别?

README 将其与 Alacritty、Ghostty、Kitty 进行性能基准对比,声称明文 I/O 吞吐约为三者的两倍(95 ms 对 239/179/185 ms)、DOOM-fire 帧率 888 fps 对 485/552/617 fps;tty7 的差异化在于持久会话(无需 tmux)、agent 感知和内置 SSH/Git 能力,而这三者均为纯终端模拟器。

常见问题

我必须放弃现有的 tmux 工作流吗?
tty7 的持久会话由内置后台服务器提供,README 定位为无需 tmux 的替代方案。你可以在 tty7 里继续运行 tmux,但 tty7 自身的持久化、恢复和 agent 会话管理由其服务器实现,两者功能会有重叠。
tty7 会包装或代理我的 AI agent 吗?
不会。README 明确说明 agent 不被包装或代理——你启动的 agent 在普通 PTY 中以其原有界面运行。如果 agent 通过包装脚本启动,可在 config. 中用 agent_commands 按名称映射。
使用 agent 状态功能需要什么配置?
检测(品牌头像、分支 + diff、标签标题)是自动且免费的;状态点、通知、托盘图标、tty7 wait 和重启后恢复需要在 Settings → Agents 中为该 agent 一键安装 hook;fork 功能还需 agent 自身支持 fork 命令。
远程开发会在服务器上留下什么?
首次连接时执行一次性、非特权的 tty7-server 安装;文件、仓库、窗格和 git 数据都留在远端机器上,客户端可从任意位置重连续接。
支持哪些平台,如何验证性能声明?
提供 macOS(arm64/x86_64 dmg)、Windows(安装器与便携 zip)、Linux(x86_64 AppImage)原生包。性能基准(Apple M1 Pro,2026-07-04,五次平均)的方法学和一键复现脚本位于 scripts/bench/,可自行验证。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents