Yazi解决了什么问题

核心矛盾很简单:Claude Code把终端变成了主力开发环境,但终端天生不擅长文件浏览和预览。你要么频繁在终端和GUI之间切换,要么忍受纯文本的文件操作体验。Yazi的定位就是在终端内提供一个接近GUI水平的文件管理体验,同时保持终端原生的键盘操作效率。

三个关键能力让它在Claude Code工作流中特别有价值:

  • 异步IO + 多线程架构:万级文件目录秒开,大图、视频、PDF预览零卡顿。Rust的性能优势在这里体现得很直接。
  • 原生预览能力:代码高亮、图片、视频、PDF、SVG全部支持终端内预览。搭配Ghostty的原生图像协议效果最好,但在iTerm2、WezTerm、Kitty等终端下也能正常工作。
  • 深度集成终端工作流:支持zoxide智能目录跳转、fzf模糊搜索、多标签页、批量操作,退出后自动cd到当前目录。和Claude Code左右分屏配合,文件管理和代码生成可以并行推进。

安装与配置

macOS下通过Homebrew一键安装,不依赖任何特定终端:

brew update && brew upgrade
brew install yazi ffmpegthumbnailer poppler fd ripgrep fzf zoxide imagemagick font-symbols-only-nerd-font

强烈建议配置一个快捷启动函数,让退出Yazi后自动跳转到最后浏览的目录:

cat >> ~/.zshrc << 'EOF'

function y() {
  local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" cwd
  yazi "$@" --cwd-file="$tmp"
  if cwd="$(command cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
    builtin cd -- "$cwd"
  fi
  rm -f -- "$tmp"
}
EOF

source ~/.zshrc

之后只需输入y即可启动。

主题与预览优化

配合Catppuccin Mocha主题可以获得不错的视觉体验:

mkdir -p ~/.config/yazi

安装主题:

ya pack -a yazi-rs/flavors:catppuccin-mocha

激活主题色(写入~/.config/yazi/theme.toml):

[flavor]
dark = "catppuccin-mocha"
light = "catppuccin-mocha"

布局与预览配置(写入~/.config/yazi/yazi.toml):

[manager]
ratio = [1, 3, 4]
sort_by = "natural"
show_hidden = true

[preview]
max_width = 1920
max_height = 1080

[opener]
edit = [{ run = 'nano "$@"', block = true }]

修改配置后需要完全退出再重新打开Yazi才能生效。

核心操作速查

  • hjkl或方向键:Vim式导航
  • Enter/o:进入文件夹或打开文件
  • Space:选中文件(多选),y复制、x剪切、p粘贴
  • t:新建标签页
  • s/S/z:快速搜索 + zoxide历史跳转
  • r重命名、d删除、f过滤、/全局查找、?呼出帮助

实际工作流

最高效的用法是在Ghostty(或其他支持分屏的终端)中Cmd+D左右分屏:一边运行Yazi管理项目文件,实时预览图片、代码和文档;另一边运行Claude Code。需要给Claude提供文件路径时,直接在Yazi中定位文件,复制路径即可。

值得一提的是,Ghostty环境下鼠标不会误触发Yazi的重命名和shell操作,这在其他终端中偶尔会成为干扰。

对于独立开发者来说,终端环境的每一个效率提升都在压缩"从想法到产品"的路径。Yazi这类工具的价值不在于它本身有多炫,而在于它消除了AI编程工作流中最后一个需要离开终端的理由。当你的整个开发循环——代码生成、文件管理、预览调试——都能在一个窗口内闭环完成时,Vibe Coding才算真正跑通了。