事实已定,Ghostty是终端命令行的最终答案,JetBrains系列全面接入

JetBrains 官方公布了一项更新。从 2026.3 版本开始,IntelliJ IDEA、PyCharm、WebStorm 这一整套 IDE 的内置终端,底层内核全部换成了 libghostty。

每天在 IDE 里敲命令的人不在少数。JetBrains 自己的年度报告显示,全球有超过 1500 万活跃开发者在使用他们的产品。这意味着很多人每天顺手调出的那个内置终端,不再是修修补补十几年的旧模拟器,而是换上了目前开源界支持现代协议最完整的一套新引擎。

笔者打小就看 ghostty 行:

JetBrains 非换不可

在这次替换之前,JetBrains 系列一直用自家纯 Java 编写的 JediTerm。早年间只要敲个 git status,跑个构建脚本,或者起个本地服务,JediTerm 已经够用。那时候终端里偶尔漏掉几个特性,大家也不会专门去提 bug。

这两年情况变了。Neovim 和 tmux 成了很多人的日常界面,更明显的变化是 Claude Code、Codex 这类命令行 AI 工具普及开来。这些工具对终端交互的要求,远比过去跑脚本严格得多。

JetBrains 终端中的 AI Agents 入口

老终端的毛病立刻显现出来。比如多行输入,你在 AI 工具里按 Shift + Enter 想换行继续写要求,终端却把它当成普通回车,直接把半截 Prompt 发了出去。IDE 换成了暗色主题,终端里的命令行工具还在吐出黑底黑字。另外还有将近 50 个控制序列解析错误,一旦遇到复杂的终端界面,字符和高亮颜色很容易错位。

Ghostty Logo

JetBrains 选中的解决办法是 Ghostty。这是 HashiCorp 前联合创始人 Mitchell Hashimoto 全职主导开发的终端项目。Ghostty 用 Zig 语言写成,从一开始就主打快速渲染和对现代协议的严格兼容,在极客圈子里传得很广。

这次 JetBrains 采取的方式是把核心引擎 libghostty 拿来嵌入。两边的分工很清楚,libghostty 在底层专心处理 ANSI 与 VT 协议解析,IDE 则继续负责界面绘制和系统交互。有了 Kitty 键盘协议支持,Shift + Enter 和普通的 Enter 终于能分开识别,按键不再打架。终端也能主动同步 IDE 的明暗主题,多行指令和复杂终端工具在 IDE 里面终于能正常跑起来。

客户端只是演示,底层库才是主角

JetBrains 宣布之后,Mitchell Hashimoto 在社交平台上讲了这背后的想法。

Mitchell 说,libghostty 从第一天起就是整个 Ghostty 项目的核心目标。他以前开玩笑提到过,大家平时下载安装的那个带界面的 Ghostty 桌面软件,其实只是拿来给 libghostty 检验能力的高级演示品。

Ghostty macOS 客户端的多窗格界面

数据把这种底层想法体现得很清楚。Mitchell 估算,Ghostty 桌面客户端积累的用户大概在几百万。但仅凭 JetBrains 这一次集成,使用 libghostty 驱动终端的用户数量一夜之间多出六倍。

写一个带界面的独立终端并不算最难,难在怎么把几十年间零散遗留的协议与状态机彻底理顺,打包成随时能嵌进各处的高性能底层库。Mitchell 后来把整个 Ghostty 捐给了一家公共利益非营利组织,确保它长期中立开源。现在这套扎实的底层工程,在千万开发者面前真正派上了用场。

尘埃落定,Ghostty成为新一代终端标准

在 AI 时代,终端不再是 IDE 底下一个附带的辅助窗口,很多核心交互都在这里完成。

老牌工具厂商放弃维护多年的自研终端,全面换装 libghostty,说明这套技术方案已经跨过了临界点。开发者不用再因为内置环境能力残缺,来回切到外面的独立终端。

从极客圈子里的独立工具,到主流 IDE 默认采用的核心引擎,终端协议割裂的那段历史,总算有了一个明确的答案。