AI 时代 Ghostty 终端崛起的原因:cmux 与 Orca 展现终端复兴
有一段时间,终端只是“有就用”的工具。随着 IDE(集成开发环境)成为开发中心,终端被 relegated 为查看构建日志的辅助窗口。然而进入 2025 年后,氛围彻底改变。Claude Code、Codex CLI、Gemini CLI 等 AI 编程代理都以终端应用发布,终端因此重新回到开发工作流的核心。
在这股趋势中,最受关注的终端就是 Ghostty。近期走红的 cmux,以及 Orca 等代理运行工具,无一例外都将 Ghostty 作为技术基础或质量标准。本文将总结 Ghostty 有何不同、为何在 AI 时代存在感不断增强,以及 cmux 和 Orca 的案例分别展现了什么。
Ghostty,HashiCorp 创始人打造的终端
Ghostty 是由 Terraform 和 Vagrant 的开发公司 HashiCorp 联合创始人 Mitchell Hashimoto 开发的开源终端模拟器。1.0 于 2024 年 12 月 1 日发布,使用 Zig 编写。
终端模拟器市场早已饱和。iTerm2、Alacritty、kitty、WezTerm 等选择众多,但 Ghostty 找到的切入点很明确:现有终端总会放弃三者之一。
- 快速(Alacritty)— 但功能精简
- 功能丰富(iTerm2)— 但笨重
- 跨平台(kitty、WezTerm)— 但不是操作系统原生体验
Ghostty 的设计目标是兼得“快速、功能丰富、原生”三者。它通过 GPU 加速渲染确保速度,同时在 macOS 使用 AppKit 和 SwiftUI、在 Linux 使用 GTK4,提供各平台真正的原生 UI。标签页、分屏和快捷键都按操作系统标准方式运行,无需配置、安装后即可使用,这些都是早期口碑传播的关键。
版本发布也一直很稳定。2025 年 9 月的 1.2 增加了 macOS Tahoe 支持和命令面板;2026 年 3 月的 1.3 则加入了呼声最高的回滚搜索和原生滚动条。
为什么偏偏是 AI 时代的终端
打造 AI 编程代理的公司选择终端而不是 GUI(图形用户界面),有着实际原因。终端应用无论运行在本地 MacBook、通过 SSH 连接的服务器,还是 CI 流水线中,表现都完全一致。它不受编辑器限制,可以嵌入任何开发环境。对代理来说,终端就是最通用的运行环境。
不过,当代理进入终端后,终端本身的用途也发生了变化。
第一,**输出量暴增。**过去人们输入命令并读取结果,而代理会不停输出代码差异、构建日志和工具调用记录。流式输出越多,渲染性能越会影响实际体验,GPU 加速终端的优势也会在真实使用中显现。
第二,**开始同时运行多个会话。**代理工作时,人只能等待,因此并行运行两三个代理自然成为常态。终端从“输入一行命令的窗口”变成了“管理多个代理的基础设施”。
第三,**出现了运行在终端之上的应用需求。**要管理并行代理,需要标签页、通知和状态显示等控制功能,而这些已经超出终端模拟器原本的功能范围。于是,一个新的应用类别诞生了:“集成终端的代理管理应用”。这一类别的应用希望直接使用经过验证的引擎,而不是自行实现终端模拟。
Ghostty 真正的制胜招数,正是在这第三个转折点上出现的。
libghostty,将终端作为库
Mitchell Hashimoto 在 2025 年 9 月的文章《Libghostty Is Coming》中公开了 Ghostty 的下一步计划:将 Ghostty 的核心拆分为名为libghostty的可嵌入库,让任何应用都能集成经过验证的终端模拟功能。就像需要网页视图的应用不会重新开发浏览器,而是使用 WebKit;需要终端的应用也可以直接使用 libghostty。
第一个成果是 libghostty-vt。这是一个解析 VT(Virtual Terminal,虚拟终端)控制序列并管理终端状态的库,不依赖任何外部组件,并提供 C API(应用程序接口),因此可以从任何语言中使用。终端序列解析是一个由数十年复杂规范交织而成的领域,IDE 和 Web 控制台一直存在细微不同的实现;其目标是共享一个经过实际验证的统一实现。后续还计划逐步将输入处理、GPU 渲染和平台专属控件库化。
这一构想恰好赶上了 AI 代理热潮。对于想要打造代理管理应用的团队来说,终端模拟必不可少,却又深奥到难以自行实现;libghostty 成为了填补这一空缺的标准组件。
cmux,第一个嵌入 libghostty 的大型案例
cmux 是 manaflow-ai 发布的 macOS 专用终端应用,定位为“面向 AI 编程代理的终端”。它迅速受到关注,GitHub Star 数达到 2.5 万。
技术上有趣的一点是,cmux 并不是 Ghostty 的分支,而是一个用 Swift 和 AppKit 编写的原生应用,将 libghostty 嵌入为渲染引擎。开发团队将其解释为“应用在网页视图中使用 WebKit 的方式”。它还会直接读取现有 Ghostty 用户的配置文件(~/.config/ghostty/config),并继承主题和字体。
构建在其上的功能全部用于代理编排。通过垂直标签页可以浏览大量代理会话;当代理等待输入时,对应标签页会亮起蓝色边框。侧边栏显示 git 分支、PR 状态和已打开的端口,CLI 与套接字 API 则可以通过脚本控制从创建工作区到发送按键输入的所有操作。由于将终端仿真这一底层工作交给 libghostty,开发团队得以专注于编排功能。
Orca:“Ghostty 级”成为质量标准的案例
Orca 是由 Stably 打造的开源 ADE(Agent Development Environment,代理开发环境)。它为每个代理分配独立的 git worktree 并行运行,同时在一个应用中提供终端、diff 审查和内置浏览器。GitHub 星标数已超过 2.8 万,与 cmux 一起被视为这一类别的代表性产品。
Orca 展现的是另一种略有不同的影响力。Orca 在官方介绍中将自家终端称为“Ghostty-class terminals”。截至 2026 年 7 月,其实际实现基于 xterm.js 系列引擎,并叠加了 WebGL 渲染;它并未使用 libghostty。即便如此,在描述自家终端质量时,它仍以 Ghostty 作为衡量单位。产品介绍开始使用“Ghostty 级”而不是“原生级”这一表述,本身就是某个工具已成为事实标准的信号。
总的来说,这两个案例从不同角度证明了 Ghostty 的地位。cmux 是将 libghostty 采用为组件的案例,而 Orca 则是将 Ghostty 作为质量基准引用的案例。
终端会成为 AI 时代的浏览器吗
浏览器大战的胜负并不取决于浏览器应用,而取决于其中的引擎(WebKit、Blink)。如今,终端中也正在形成类似的格局。AI 代理这一杀手级工作负载将终端重新带回开发中心,基于终端的新应用类别正在出现,而 Ghostty 正通过 libghostty 争取成为整个类别的引擎。
当然,变数依然存在。libghostty 仍处于早期阶段,目前只公开了 vt 模块;只有 GPU 渲染和 widget 层也发布后,cmux 这样的集成才会对所有人变得容易。不过,方向似乎已经很明确。代理越多,终端会话就越多;会话越多,经过验证的终端引擎价值就越高。如果你一直把终端看作“全都一样的黑色窗口”,现在值得重新审视一番。

