首页 > 基础资料 博客日记
基于 Ghostty 带有分割标签页和为 Claude 编程设计的通知终端
2026-04-11 13:30:02基础资料围观1次
用 macOS 自带终端来运行 Claude Code,在开启大量会话时需要开启很多 Terminal 终端窗口。
多数情况我们把需求交给 claude 会切出去干别的,等过许久再返回查看可能显示的是 claude 询问你是否同意某项操作。
如果你做前端开发,claude 生成后代码后,启动预览还需要切换到浏览器窗口。
那么有一款 macOS 终端神器满足你所有需求 -- cmux。
如果你还想再终端里直接预览编辑文件,不用来回切换窗口,可以试试 -- Yazi。

cmux
功能
- 通知提示环:有新提醒时窗格出现蓝环,标签高亮
- 通知面板:集中查看通知,一键跳到未读
- 内置浏览器:终端旁直接分屏浏览器,支持脚本控制
- 标签与分屏:支持横竖分割,侧栏显示分支、PR、目录、端口和通知
- SSH 工作区:
cmux ssh直连远程,浏览器走远程网络,拖图即传 - Claude Teams:
cmux claude-teams一键多代理协作,原生分屏展示 - 浏览器数据导入:支持 Chrome、Firefox、Arc 等,一开即登录态
- 自定义命令:在
cmux.json里配置项目操作,命令面板直接用 - 脚本化能力:CLI + socket API 控制工作区、窗格和浏览器
- 原生 macOS:Swift + AppKit,启动快、占用低
- 兼容 Ghostty:直接复用现有主题、字体配置
- GPU 渲染:基于 libghostty,显示更流畅
- 快捷键:丰富的快捷键,覆盖工作区、分屏、浏览器等操作
配置
cmux 从 Ghostty 配置文件中读取配置,如果你之前使用 Ghostty,这些选项会很熟悉。
打开 ~/.config/ghostty/config 配置文件,复制以下:
# === 主题设置 ===
# 跟随系统自动切换明暗主题 dark:,light:
theme = dark:iTerm2 Dark Background,light:iTerm2 Light Background
# === shell 集成 ===
shell-integration = detect
# === 字体设置 ===
font-size = 12
font-thicken = true
adjust-cell-height = 2
# === 窗口设置 ===
window-theme = system
window-save-state = always
background-opacity = 0.8
macos-titlebar-style = transparent
# === 鼠标设置 ===
copy-on-select = clipboard
mouse-shift-capture = true
mouse-hide-while-typing = true
cursor-style = bar
cursor-style-blink = true
cursor-opacity = 0.85
# === 缓冲区 ===
scrollback-limit = 8388608
# === 快速终端 ===
quick-terminal-position = top
quick-terminal-screen = mouse
quick-terminal-autohide = true
quick-terminal-animation-duration = 0.2
# === 安全设置 ===
clipboard-paste-protection = true
clipboard-paste-bracketed-safe = true
修改完后一定要重载配置(菜单栏操作)。
安装
#brew tap manaflow-ai/cmux
brew install --cask cmux
快捷键
工作区
| 快捷键 | 操作 |
|---|---|
| ⌘ N | 新建工作区 |
| ⌘ 1–8 | 跳转到工作区 1–8 |
| ⌘ 9 | 跳转到最后一个工作区 |
| ⌃ ⌘ ] | 下一个工作区 |
| ⌃ ⌘ [ | 上一个工作区 |
| ⌘ ⇧ W | 关闭工作区 |
| ⌘ ⇧ R | 重命名工作区 |
| ⌘ B | 切换侧边栏 |
界面
| 快捷键 | 操作 |
|---|---|
| ⌘ T | 新建界面 |
| ⌘ ⇧ ] | 下一个界面 |
| ⌘ ⇧ [ | 上一个界面 |
| ⌃ Tab | 下一个界面 |
| ⌃ ⇧ Tab | 上一个界面 |
| ⌃ 1–8 | 跳转到界面 1–8 |
| ⌃ 9 | 跳转到最后一个界面 |
| ⌘ W | 关闭界面 |
分割窗格
| 快捷键 | 操作 |
|---|---|
| ⌘ D | 向右分割 |
| ⌘ ⇧ D | 向下分割 |
| ⌥ ⌘ ← → ↑ ↓ | 按方向切换焦点窗格 |
| ⌘ ⇧ H | 闪烁聚焦面板 |
浏览器
浏览器开发者工具快捷键遵循 Safari 默认设置,可在设置 → 键盘快捷键中自定义。
| 快捷键 | 操作 |
|---|---|
| ⌘ ⇧ L | 在分割中打开浏览器 |
| ⌘ L | 聚焦地址栏 |
| ⌘ [ | 后退 |
| ⌘ ] | 前进 |
| ⌘ R | 刷新页面 |
| ⌥ ⌘ I | 切换开发者工具(Safari 默认) |
| ⌥ ⌘ C | 显示 JavaScript 控制台(Safari 默认) |
通知
| 快捷键 | 操作 |
|---|---|
| ⌘ I | 显示通知面板 |
| ⌘ ⇧ U | 跳转到最新未读 |
查找
| 快捷键 | 操作 |
|---|---|
| ⌘ F | 查找 |
| ⌘ G / ⌘ ⇧ G | 查找下一个 / 上一个 |
| ⌘ ⇧ F | 隐藏查找栏 |
| ⌘ E | 使用选中内容进行查找 |
终端
| 快捷键 | 操作 |
|---|---|
| ⌘ K | 清除回滚缓冲区 |
| ⌘ C | 复制(有选中内容时) |
| ⌘ V | 粘贴 |
| ⌘ + / ⌘ - | 增大 / 减小字体 |
| ⌘ 0 | 重置字体大小 |
窗口
| 快捷键 | 操作 |
|---|---|
| ⌘ ⇧ N | 新建窗口 |
| ⌘ , | 设置 |
| ⌘ ⇧ , | 重新加载配置 |
| ⌘ Q | 退出 |
会话恢复(当前)
重启后,cmux 会恢复应用布局和元数据:
- 窗口 / 工作区 / 窗格布局
- 工作目录
- 终端回滚缓冲区(尽力恢复)
- 浏览器 URL 与导航历史
不会恢复:
- 终端内运行中的进程(如 Claude Code / tmux / vim)
通知
cmux 支持桌面通知,让 AI agent 和脚本在需要关注时提醒你。
在一处查看所有待处理通知,快速跳转到最新未读通知

场景
- 左侧 -
claude - 右上 -
npm run dev - 右下 - Web 浏览器

yazi
简介
Yazi(意为“鸭子”)是一款用 Rust 编写的终端文件管理器,基于非阻塞异步 I/O。它旨在提供高效、用户友好且可定制的文件管理体验。
安装
brew install yazi ffmpeg-full sevenzip jq poppler fd ripgrep fzf zoxide resvg imagemagick-full font-symbols-only-nerd-font
brew link ffmpeg-full imagemagick-full -f --overwrite
集成(可选)
打开 ~/.zshrc,把下面这段追加到文件末尾(可选):
function y() {
local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" cwd
command yazi "$@" --cwd-file="$tmp"
IFS= read -r -d '' cwd < "$tmp"
[ "$cwd" != "$PWD" ] && [ -d "$cwd" ] && builtin cd -- "$cwd"
rm -f -- "$tmp"
}
保存之后执行 source ~/.zshrc 生效。
然后就可以在终端输入 y 替代 yazi 来启动 Yazi。
配置
Yazi 共有三个配置文件:
yazi.toml- 常规配置。keymap.toml- 按键绑定配置。theme.toml- 颜色方案配置。
- 新建文件
~/.config/yazi/yazi.toml
显示隐藏文件
在文件名之后显示符号链接指向的路径
[mgr]
show_hidden = true
show_symlink = true
- 新建文件
~/.config/yazi/keymap.toml
输入模式下按下
<Esc>键时执行同时关闭输入并清除过滤器
[[input.prepend_keymap]]
on = "<Esc>"
run = ["close", "mgr:escape --filter"]
desc = "Close input and cancel the filter"
快捷键
导航
| 绑定 | 备用键 | 行动 |
|---|---|---|
| k | ↑ | 向上移动光标 |
| j | ↓ | 向下移动光标 |
| l | → | 进入鼠标悬停的目录 |
| h | ← | 离开当前目录,进入其父目录 |
文件操作
| 绑定 | 行动 |
|---|---|
| o | 打开选定的文件 |
| O | 以交互方式打开选定的文件 |
| Enter | 打开选定的文件 |
| Shift+Enter | 以交互方式打开选定文件(某些终端尚不支持此功能) |
| Tab | 显示文件信息 |
| y | 复制选定文件 |
| x | 剪切选定文件 |
| p | 粘贴已复制的文件 |
| P | 粘贴复制的文件(如果目标位置已存在则覆盖) |
| Y或者X | 取消 yank 状态 |
| d | 将选定的文件删除到垃圾桶 |
| D | 永久删除选定文件 |
| a | 创建一个文件(目录以 / 结尾) |
| r | 重命名选定文件 |
| . | 切换隐藏文件的可见性 |
复制路径
c⇒d表示先按下一个c键,然后再按下另一个d键。
| 绑定 | 行动 |
|---|---|
| c⇒c | 复制文件路径 |
| c⇒d | 复制目录路径 |
| c⇒f | 复制文件名 |
| c⇒n | 复制文件名(不带扩展名)。 |
过滤文件
| 绑定 | 行动 |
|---|---|
| f | 过滤文件 |
查找文件
| 绑定 | 行动 |
|---|---|
| / | 查找下一个文件 |
| ? | 查找上一个文件 |
| n | 前往下一个找到的 |
| N | 转到上一个找到的 |
搜索文件
| 绑定 | 行动 |
|---|---|
| s | 使用fd按名称搜索文件 |
| S | 使用ripgrep按内容搜索文件 |
| Ctrl+s | 取消正在进行的搜索 |
场景
可以直接在终端内预览、编辑文件内容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:

