ClaudeCode武装三件套:Ghostty + Yazi + Lazygit 打造高效开发环境

0 阅读7分钟

引言:多终端切换之痛

在终端里深度使用 Claude Code 一段时间后,你很快会遇到一个现实问题:

场景:前后端需求同时开发,一个终端跑 Claude Code,另一个查看日志,还需要随时管理文件、提交代码……多个终端窗口切来切去,既麻烦又不直观,完全看不到各终端的实时状态。

以前我的解法是 tmux。但 tmux 毕竟是上个世纪的工具:命令多、记不住,界面也不美观,感觉像在用古董。

直到我在 X 上看到 Claude Code 之父 Boris 的推文,他在用 Ghostty。我去试了试,然后又发现了 YaziLazygit,这套组合彻底改变了我的终端工作流。

今天我们就来聊这个终端三件套

  • 🖥️ Ghostty:现代化终端模拟器,原生支持多标签、分屏
  • 📂 Yazi:用 Rust 写的闪电文件管理器,支持文件预览
  • 🔀 Lazygit:可视化 Git TUI,用快捷键替代繁琐的 git 命令

一、Ghostty:让终端回归现代

1.1 为什么是 Ghostty?

Ghostty 是由 HashiCorp 创始人 Mitchell Hashimoto 开发的新一代终端模拟器,核心卖点是:

  • 原生 UI:macOS 用 Swift + AppKit,Linux 用 GTK4,界面就是系统原生风格
  • GPU 加速渲染:macOS 用 Metal,Linux 用 OpenGL,流畅到飞起
  • 开箱即用:几乎不需要配置就能有很好的体验
  • 内置分屏:不需要 tmux,原生支持 tabs 和 splits

官方下载地址:ghostty.org/download

1.2 核心操作

标签页管理

操作macOSLinux
新建标签页Cmd + TCtrl + Shift + T
切换标签页Cmd + 1~9Ctrl + 1~9
关闭标签页Cmd + WCtrl + Shift + W

分屏操作

操作macOSLinux
向右分屏Cmd + DCtrl + Shift + E
向下分屏Cmd + Shift + DCtrl + Shift + O
切换分屏Cmd + Shift + [/]Ctrl + Shift + [/]
切换焦点(上下左右)Cmd + Option + 方向键Ctrl + Shift + 方向键
最大化当前分屏Cmd + Shift + EnterCtrl + Shift + Enter

1.3 我的典型布局

使用 Claude Code 开发时,我通常这样分屏:

┌─────────────────────┬──────────────────┐
│                     │                  │
│    Claude Code      │      Yazi        │
│   (主开发对话)       │   (文件浏览器)   │
│                     │                  │
├─────────────────────┴──────────────────┤
│              Lazygit                   │
│           (Git 操作区)                 │
└────────────────────────────────────────┘
  • 左上:Claude Code 主力工作区
  • 右上:Yazi 文件管理,随时查看目录结构
  • 下方:Lazygit,随时查看 Git 状态并提交

二、Yazi:闪电文件管理器

2.1 为什么是 Yazi?

Yazi(GitHub: sxyazi/yazi)是一款用 Rust 编写的异步终端文件管理器,ya 在中文里是"鸭子"的意思 🦆。

相比 ranger、nnn 等老牌文件管理器,Yazi 最大的优势是——异步 I/O 加上 Rust 的性能,打开大目录几乎感觉不到延迟。

官方 Release 下载:github.com/sxyazi/yazi…

2.2 核心功能

1. 三栏 Miller Columns 布局

Yazi 采用类似 Ranger 的三栏布局:左侧父目录、中间当前目录、右侧预览。

2. 强大的文件预览

支持预览的文件类型非常丰富:

  • 文本文件、代码文件(高亮显示)
  • 图片(需要支持图片协议的终端,Ghostty 支持 Kitty 图片协议)
  • 视频(缩略图)
  • PDF、Office 文档
  • 压缩包内容

3. 异步任务系统

复制、移动大文件时,操作在后台异步执行,可以实时查看进度、取消任务,不会卡住界面。

4. 搜索能力

  • 按文件名搜索:集成 fd
  • 按内容搜索:集成 rg(ripgrep)
  • 实时增量查找:边输入边显示匹配结果

5. 插件生态

Yazi 有活跃的插件生态,可以扩展主题、预览类型、自定义快捷键等。

2.3 基本快捷键

操作快捷键
进入目录 / 打开文件lEnter
返回上级目录h
上 / 下移动k / j
回到顶部 / 底部gg / G
选中文件Space
全选v
复制y
剪切x
粘贴p
删除(移入回收站)d
永久删除D
新建文件a(末尾加 / 则新建目录)
重命名r
批量重命名R
搜索文件名f
搜索文件内容S(需要 rg)
跳转(zoxide)z
切换隐藏文件.
新建标签页t
退出q

2.4 配合 Ghostty 使用技巧

Ghostty 支持 Kitty 图片协议,配合 Yazi 可以在终端中直接预览图片,不需要打开外部查看器:

# 安装 yazi 后,设置 shell 函数可以在退出时 cd 到 yazi 当前目录
# 在 ~/.zshrc 或 ~/.bashrc 中加入:
function y() {
    local tmp="$(mktemp -t "yazi-cwd.XXXXXX")"
    yazi "$@" --cwd-file="$tmp"
    if cwd="$(cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
        builtin cd -- "$cwd"
    fi
    rm -f -- "$tmp"
}

这样用 y 命令启动 Yazi,退出后终端会自动切换到你在 Yazi 中最后所在的目录。


三、Lazygit:可视化 Git 操作

3.1 为什么是 Lazygit?

Lazygit(GitHub: jesseduffield/lazygit)是一个 Git 的终端可视化界面(TUI),把繁琐的 git 命令行替换成可视化的键盘操作。

对于 Claude Code 用户来说,Lazygit 特别有价值:AI 会自动修改很多文件,用 Lazygit 可以一眼看清楚所有改动,精确控制哪些改动需要提交。

官方 Release 下载:github.com/jesseduffie…(根据你的系统选择对应版本)

3.2 界面组成

Lazygit 的界面分为 6 个面板:

面板快捷键说明
Status1当前仓库概览、最近仓库列表
Files2已修改的文件列表
Branches3本地和远程分支列表
Commits4当前分支的提交历史
Stash5暂存区管理
Preview预览区,跟随当前选中内容变化

3.3 核心操作技巧

日常提交流程(最常用):

操作快捷键
暂存 / 取消暂存单个文件Space
暂存所有文件a
提交已暂存的改动c
修改上一次提交信息A(Amend)
Push 到远程P(大写)
Pull 最新代码p(小写)

分支管理

操作快捷键
新建分支n(在 Branches 面板)
切换分支Space(在 Branches 面板)
删除分支d
合并分支M

实用技巧

操作快捷键
撤销上一次 git 操作z
重做(撤销的反向)Z
暂存改动(stash)s
丢弃文件改动d(在 Files 面板)
查看所有快捷键?
退出q

⚠️ 注意P(Push)和 p(Pull)区分大小写,这是新手最容易搞混的两个操作,务必记清楚。

3.4 配合 Claude Code 的使用姿势

Claude Code 完成一批修改后,我的标准流程是:

  1. 切到 Lazygit 所在的分屏
  2. Files 面板逐一查看 Claude 的修改,按 Enter 可以在预览区看 diff
  3. 对每个文件确认无误后按 Space 暂存
  4. c 输入 commit message 提交
  5. P 推送到远程

整个过程无需输入一条 git 命令,完全可视化。


四、三件套协同工作

4.1 实际效果截图

12-01-ghostty-yazi-lazygit.png

如图所示,三个工具在 Ghostty 的分屏中同时运行:左侧 Claude Code 正在进行开发对话,右侧 Yazi 随时浏览文件结构,下方 Lazygit 实时监控 Git 状态。

4.2 与 tmux 对比

维度tmuxGhostty + Yazi + Lazygit
界面美观⚠️ 纯文字,较古老✅ 原生 UI,现代感强
学习成本⚠️ 命令多、前缀键难记✅ 各工具专注单一职责
文件管理❌ 无内建能力✅ Yazi 强大预览
Git 操作❌ 无内建能力✅ Lazygit 可视化
配置复杂度⚠️ 需要 .tmux.conf✅ 开箱即用
远程服务器✅ SSH 环境首选⚠️ 需要本地安装

说明:如果需要在远程服务器上工作,tmux 依然是不可替代的选择。三件套更适合本地开发场景。


总结

终端三件套让多任务开发变得直观高效:

  • Ghostty:替代系统终端,原生分屏让多任务一目了然
  • Yazi:替代 ls + cd + cat,文件管理和预览一气呵成
  • Lazygit:替代 git add/commit/push,可视化 Git 操作精确可控

对于深度使用 Claude Code 的开发者,这套组合特别有价值:AI 的批量修改需要精确的人工审查,Lazygit 的文件级 diff 视图让你在提交前清晰掌控每一行改动。


如果这篇文章对你有帮助,欢迎点赞、收藏、分享!有任何问题或建议,欢迎在评论区留言讨论。让我们一起学习,一起成长!

也欢迎访问我的个人主页发现更多宝藏资源