跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / BashAI

Ghostty + Yazi + Lazygit 构建高效终端开发工作流

Ghostty、Yazi 和 Lazygit 组合解决了传统终端多窗口切换效率低的问题。Ghostty 提供原生分屏和 GPU 加速,Yazi 实现快速文件预览与管理,Lazygit 将 Git 操作可视化。三者协同可在本地开发环境中实现高效的代码编写、文件浏览和版本控制流程,尤其适合 AI 辅助编程场景下的精细修改审查。

晚风叙旧发布于 2026/3/27更新于 2026/9/1268 浏览
Ghostty + Yazi + Lazygit 构建高效终端开发工作流

引言:多终端切换之痛

在终端里深度使用 AI 编程助手一段时间后,很快会遇到一个现实问题:前后端需求同时开发,一个终端跑对话,另一个查看日志,还需要随时管理文件、提交代码……多个终端窗口切来切去,既麻烦又不直观,完全看不到各终端的实时状态。

以前常用的解法是 tmux。但 tmux 毕竟是上个世纪的工具:命令多、记不住,界面也不美观。直到发现 Ghostty,然后又搭配了 Yazi 和 Lazygit,这套组合彻底改变了我的终端工作流。

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

  • 🖥️ 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

官方下载地址:https://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 我的典型布局

使用 AI 编程助手开发时,我通常这样分屏:

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

二、Yazi:闪电文件管理器

2.1 为什么是 Yazi?

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

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

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

2.2 核心功能

1. 三栏 Miller Columns 布局

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

2. 强大的文件预览

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

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

3. 异步任务系统

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

4. 搜索能力

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

5. 插件生态

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

2.3 基本快捷键
操作快捷键
进入目录 / 打开文件l 或 → 或 Enter
返回上级目录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 命令行替换成可视化的键盘操作。

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

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

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 配合 AI 编程的使用姿势

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

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

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


四、三件套协同工作

4.1 实际效果截图

在这里插入图片描述

如图所示,三个工具在 Ghostty 的分屏中同时运行:左侧 AI 正在进行开发对话,右侧 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 操作精确可控

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

目录

  1. 引言:多终端切换之痛
  2. 一、Ghostty:让终端回归现代
  3. 1.1 为什么是 Ghostty?
  4. 1.2 核心操作
  5. 1.3 我的典型布局
  6. 二、Yazi:闪电文件管理器
  7. 2.1 为什么是 Yazi?
  8. 2.2 核心功能
  9. 2.3 基本快捷键
  10. 2.4 配合 Ghostty 使用技巧
  11. 安装 yazi 后,设置 shell 函数可以在退出时 cd 到 yazi 当前目录
  12. 在 ~/.zshrc 或 ~/.bashrc 中加入:
  13. 三、Lazygit:可视化 Git 操作
  14. 3.1 为什么是 Lazygit?
  15. 3.2 界面组成
  16. 3.3 核心操作技巧
  17. 3.4 配合 AI 编程的使用姿势
  18. 四、三件套协同工作
  19. 4.1 实际效果截图
  20. 4.2 与 tmux 对比
  21. 总结

更多推荐文章

查看全部
  • GitHub Copilot 配置避坑指南:常见错误与优化方案
  • 小米 MiLoco 本地协同智能助手部署实战
  • 医疗 AI 场景下的 k-均值算法应用与实战
  • 基于 Python 与 Stable Diffusion 的马年新春营销素材生成实战
  • Stable Diffusion 数据集标签编辑器使用指南
  • LG WebOS 电视第三方应用安装与 Root 权限指南
  • 通义万相 2.1 实战:AIGC 内容生成与多模态应用指南
  • 寻找数组中心下标与除自身以外数组的乘积 - 前缀和技巧
  • Flutter 三方库 tiktoken 在鸿蒙端侧的 AI 适配与 Token 计算指南
  • 在 Zed 编辑器中集成 Web MCP 实现实时信息访问
  • 人工智能如何重塑细胞生物学研究流程与范式
  • Pandas 类型检查函数与 Index 类用法详解
  • 前端 AI 对话记忆管理实践:IndexedDB 与滑动窗口策略
  • 深度生成模型对比:VAE、GAN、AR、Flow 与 Diffusion 原理及代码实战
  • 原生 JavaScript 结合 Canvas 实现网页截图与下载功能实战
  • 绿联 NAS 配置 WebDAV 公网访问及 RaiDrive 挂载实战
  • 小米手机端 Agent 落地,撬开智能家居十年困局
  • 大模型 Agent Skills 设计详解
  • FLUX.1 镜像免配置部署:内置中文界面与中英双语 Web UI
  • C++ 核心基础:STL 容器、位运算与常用算法库

相关免费在线工具

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online