展示HN:Calyx – 基于Ghostty的macOS终端,具有Liquid Glass UI
Show HN: Calyx – Ghostty-Based macOS Terminal with Liquid Glass UI

原始链接: https://github.com/yuuichieguchi/Calyx

## Calyx:一款现代 macOS 终端 Calyx 是一款原生 macOS 26+ 终端应用程序,使用 libghostty 和 Liquid Glass UI 构建,并利用 Metal 进行 GPU 加速渲染。它提供功能丰富的体验,包括标签组(带有 10 种颜色预设和组织功能)、拆分窗格以及强大的命令面板(Cmd+Shift+P)。 主要功能包括会话持久性、桌面通知以及通过 WKWebView 集成的网页浏览。用户可以受益于滚动回溯搜索(Cmd+F)、原生滚动条以及光标点击移动功能(带有 shell 集成)。Calyx 还集成了 Git 源代码控制,并提供侧边栏用于显示更改、提交图和差异查看。 值得注意的是,Calyx 支持进程间通信 (IPC),通过内置的 MCP 服务器实现 Claude Code 实例之间的消息交换。它使用 Swift 6.2、AppKit 和 SwiftUI 构建,并可通过标准的 `~/.config/ghostty/config` 文件进行配置。 开发需要 macOS 26+、Xcode 26+ 和 Zig。该项目采用 MIT 许可证开源。

## Calyx:基于Ghostty的终端,增强工作流程 Calyx是一个新的macOS终端应用程序,建立在Ghostty的渲染引擎之上,旨在解决其在标签管理和可扩展性方面的局限性。开发者在发现Ghostty过于限制,缺乏标签分组和插件系统等功能后创建了Calyx。 主要功能包括彩色编码的可折叠标签分组、命令面板、会话持久化(保存标签和工作目录)、通知徽章、内置浏览器、终端搜索、Git差异查看以及通过IPC进行程序化控制。它还包含“液态玻璃”UI,但其实现因未完全符合苹果的设计指南而受到批评。 初步反应褒贬不一,一些人赞扬其功能集和潜力,而另一些人则不喜欢其美感和可读性,特别是透明度。开发者已回应反馈,在README中添加了截图,并阐明了“液态玻璃”效果的实现方式。 许多用户表示他们已经愉快地从iTerm2切换到Ghostty,并将Calyx视为自然发展。 [https://github.com/yuuichieguchi](https://github.com/yuuichieguchi)
相关文章

原文

A macOS 26+ native terminal application built on libghostty with Liquid Glass UI.

Calyx Terminal

  • libghostty terminal engine -- Metal GPU-accelerated rendering via Ghostty v1.3.0 submodule
  • Liquid Glass UI -- native macOS 26 Tahoe design language
  • Tab Groups -- 10 color presets, collapsible sections, hierarchical organization
  • Split Panes -- horizontal and vertical splits with directional focus navigation
  • Command Palette -- search and execute all operations with Cmd+Shift+P
  • Session Persistence -- tabs, splits, and working directories auto-saved and restored on restart
  • Desktop Notifications -- OSC 9/99/777 support with rate limiting
  • Browser Integration -- WKWebView tabs alongside terminal tabs (http/https only, non-persistent storage, popup blocking)
  • Scrollback Search -- Cmd+F to search terminal scrollback with match highlighting, Cmd+G/Cmd+Shift+G to navigate matches
  • Native Scrollbar -- system overlay scrollbar for terminal scrollback
  • Cursor Click-to-Move -- click on a prompt line to reposition cursor (requires shell integration)
  • Git Source Control -- sidebar Changes view with working changes (staged/unstaged/untracked), commit graph with branch visualization, and inline diff viewer
  • Claude Code IPC -- MCP server for communication between Claude Code instances across tabs and panes (demo video)
  • Ghostty config compatibility -- reads ~/.config/ghostty/config

Group Operations (Ctrl+Shift)

Shortcut Action
Ctrl+Shift+] Next group
Ctrl+Shift+[ Previous group
Ctrl+Shift+N New group
Ctrl+Shift+W Close group
Shortcut Action
Cmd+T New tab
Cmd+W Close tab
Cmd+1--9 Switch to tab
Cmd+Shift+] Next tab
Cmd+Shift+[ Previous tab
Shortcut Action
Cmd+D Split right
Cmd+Shift+D Split down
Cmd+Option+Arrow Focus between splits
Shortcut Action
Cmd+F Find in terminal
Cmd+G Next match
Cmd+Shift+G Previous match
Escape Close search bar
Shortcut Action
Cmd+Shift+P Command palette

IPC (Inter-Pane Communication)

Multiple Claude Code instances running in different Calyx tabs or panes can communicate with each other via a built-in MCP server.

  1. Open the command palette (Cmd+Shift+P) and run Enable Claude Code IPC
  2. Start Claude Code in two or more terminal panes
  3. Each instance automatically registers as a peer and can send/receive messages

Available MCP tools: register_peer, list_peers, send_message, broadcast, receive_messages, ack_messages, get_peer_status

To disable, open the command palette and run Disable Claude Code IPC.

  1. Download Calyx.zip from the latest release
  2. Unzip the file
  3. Drag Calyx.app into /Applications
  • macOS 26+ (Tahoe)
  • Xcode 26+
  • Zig (version matching ghostty's build.zig.zon)
  • XcodeGen (brew install xcodegen)
# Clone with submodules
git clone --recursive https://github.com/yuuichieguchi/Calyx.git
cd Calyx

# Build libghostty xcframework
cd ghostty
zig build -Demit-xcframework=true -Dxcframework-target=native
cd ..

# Copy framework
cp -R ghostty/macos/GhosttyKit.xcframework .

# Generate Xcode project & build
xcodegen generate
xcodebuild -project Calyx.xcodeproj -scheme Calyx -configuration Debug build

Calyx uses AppKit for window, tab, and focus management with SwiftUI for view rendering, bridged via NSHostingView.

  • All ghostty C API calls go through the GhosttyFFI enum
  • @MainActor enforced on all UI and model code
  • Action dispatch via NotificationCenter

Tech stack: Swift 6.2, AppKit, SwiftUI, libghostty (Metal), XcodeGen

  • Cursor click-to-move on full-width text -- cursor placement may be offset on Japanese/full-width text lines because Ghostty's cursor-click-to-move internally translates clicks into arrow-key steps over terminal cells.

This project is licensed under the MIT License.

Built on libghostty by Mitchell Hashimoto (MIT License).

联系我们 contact @ memedata.com