研發背景
Ghostty是由Mitchell Hashimoto(HashiCorp聯合創始人)採用Zig語言創建的一款開源跨平台終端模擬器,其核心目標是打造一款在速度、功能性和原生平台體驗三者間取得平衡的現代化終端。Mitchell Hashimoto在2023年退休後,希望嘗試非基礎設施、非服務端的桌面軟體開發,由此萌生了創建Ghostty的想法,該項目實際啟動於2022年,其個人動機是希望玩轉Zig程式語言、進行圖形編程並加深對終端的理解。項目旨在為大多數用戶提供開箱即用的體驗。Hashimoto在其“Ghostty is coming”博文中指出,用戶常常被迫在速度、功能豐富性和平台原生GUI之間做出選擇,因此他決定構建Ghostty,使用戶無需被迫妥協。Mitchell Hashimoto認為,現有的終端模擬器在速度、功能性和原生平台UI三方面無法做到平衡,而Ghostty旨在同時在這三個方面都表現優異,提供快速、功能豐富且真正原生的終端體驗。選擇Zig作為主要開發語言,原因是創始人Mitchell Hashimoto喜愛該語言,且其語言特性非常適合終端項目。同時,Ghostty在支持跨平台時,堅持使用各平台的原生GUI框架來構建,以確保真正的原生體驗。
發展歷程
Ghostty項目由Mitchell Hashimoto於2022年啟動,旨在開發一款桌面端終端模擬器。項目啟動的初衷是探索Zig程式語言、進行圖形編程並加深對終端的理解。2023年,Mitchell Hashimoto透露了Ghostty項目及其最終將採用
FOSS(自由及開源軟體)許可證的計畫。在正式發布前,項目經過了長期的開發和測試,Mitchell Hashimoto在2023年10月宣布Ghostty 1.0計畫於同年12月發布,並且Ghostty已實現了足夠多的控制序列,在過去一年中被數百名測試者每日使用。在公開發布前,項目進行了封閉測試,最終約有5000名用戶從超過28000名申請者中被選中參與了內測。
Ghostty 1.0版本於2024年12月26日發布,並於2025年1月15日正式對外宣布,這是一款用Zig編寫的終端模擬器。該版本的核心功能亮點包括支持多視窗、選項卡和分割,以及使用GPU加速渲染和提供原生平台UI體驗等。
截至2026年初,Ghostty已成為一款穩定的軟體。
特點
Ghostty的設計目標是構建一款快速、功能豐富、跨平台且具有原生平台GUI體驗的終端模擬器,旨在讓用戶無需在速度、功能和原生體驗之間做出妥協。其遵循“零配置哲學”,提供合理的默認設定以開箱即用。
Ghostty利用GPU加速以提升性能,在
Linux上使用
OpenGL,在
macOS上使用
Metal進行渲染。針對電池續航進行了最佳化,並會智慧型選擇集成顯示卡而非獨立顯示卡以節省電量。當視窗被遮擋時,會自動降低渲染速度以進一步節能。支持垂直同步和可變刷新率。性能測試顯示,其純文本渲染速度具有競爭力。
Ghostty追求與作業系統一致的視覺和互動體驗,在
macOS上基於
SwiftUI,在
Linux上基於GTK4構建原生平台UI。支持多視窗、標籤頁和分屏,非活動窗格會自動變暗以提示焦點。提供原生選項卡、分割視窗以及標題欄代理圖示等原生互動組件。
Ghostty內置超過100個主題,支持預覽和自定義,並能根據系統亮/暗模式自動切換主題。提供強大的Shell集成功能,例如通過Ctrl+三次左鍵點擊智慧型選擇命令輸出、使用快捷鍵保存完整的滾動歷史等。支持Kitty圖形協定,允許終端應用程式直接在終端中渲染圖像;同時支持Kitty鍵盤協定,提供更豐富的輸入體驗。支持連字字型和正確的字素聚類,能妥善顯示多碼點表情符號及阿拉伯語、希伯來語等從右至左書寫的文字。
Ghostty具備同步渲染、亮/暗模式自動切換通知、快速終端(可從選單欄快速訪問)、安全鍵盤輸入(自動檢測密碼輸入場景)等實用功能。配置採用現代化的key-value純文本格式,簡潔直觀。
核心技術
Ghostty採用Zig語言編寫其核心部分,選擇Zig的原因是語言特性適合終端項目;在
Linux上,使用GTK4作為GUI工具包以符合平台標準。Ghostty是一款跨平台終端模擬器,但其設計目標並非提供最低公分母的體驗。在
macOS上,Ghostty套用是一個真正的基於
SwiftUI的應用程式,並使用
Metal渲染器;在Linux上,套用則基於GTK構建,並使用
OpenGL進行渲染。
Ghostty採用多渲染器架構,在Linux上使用
OpenGL,在macOS上使用
Metal以實現GPU加速渲染。在文本渲染方面,Ghostty支持連字、字素聚類,能正確顯示多碼點表情符號(如旗幟、膚色等)以及部分從右至左書寫的文字(如
阿拉伯語和
希伯來語)。Ghostty設有一個專用的輸入輸出(IO)執行緒,以在重IO負載下維持較低的抖動。此外,Ghostty提供了一個名為“libghostty”的C兼容庫,允許第三方項目嵌入其終端功能。該庫支持macOS、Linux、Windows和
WebAssembly平台。
運營模式
Ghostty構建了基於GNU gettext框架的國際化與本地化架構,支持多種語言。項目歡迎社區翻譯貢獻,已有24種語言得到支持,並提供了詳細的翻譯指南和審核流程。
Ghostty在AI生成代碼政策上的立場不是反對AI,而是追求高質量的貢獻。2025年8月,Ghostty開始要求貢獻者強制披露AI輔助使用情況。到2026年1月底,項目調整為“零容忍”政策,原則上僅允許維護者和已接受問題的貢獻者使用AI。2026年初,Ghostty進一步收緊政策,禁止了所有未經審核的AI生成代碼貢獻,並推出了基於信任的Vouch系統。
項目創始人Mitchell Hashimoto強調,對非開源許可證和開放核心商業模式不感興趣,並正在探索非盈利結構,以期可持續地支持項目並可能在未來補償主要貢獻者。他計畫在可預見的未來維持項目的“仁慈獨裁者”(BDFL)治理模式。
核心團隊
Ghostty由Mitchell Hashimoto創立並主導,Mitchell Hashimoto是基礎設施軟體公司
HashiCorp的聯合創始人。
重要事件
2024年12月,Ghostty 1.0正式發布,標誌著項目從封閉測試轉向公開可用。
2025年8月,Ghostty項目開始要求貢獻者強制披露AI輔助情況。到2026年1月底,項目轉為實施零容忍政策,僅允許維護者和已接受的問題使用AI生成代碼。項目創始人Mitchell Hashimoto澄清其立場不是反對AI,而是反對愚蠢,並強調Ghostty本身是在AI輔助下編寫的,但要求貢獻必須保證質量。
這一政策變化引發了開源社區的關注和討論。
2026年3月10日,Ghostty披露了在1.3.0之前版本中存在一個貼上文本命令執行漏洞。該漏洞源於未對貼上和拖放功能中的ASCII控制字元進行過濾,攻擊者可誘導用戶貼上惡意文本來執行任意命令。該漏洞被分配了CVE編號CVE-2026-26982。該漏洞在1.3.0版本中得以修復。