比 iTerm2 更适合 Claude Code/Codex 的终端,我换成 Ghostty 了 你好我是小 G。我把终端从 iTerm2 换到 Ghostty 已经有三个月了。整体体验还不错这篇文章来分享一下。Ghostty 不是 Claude Code 的官方指定终端但确实被 Claude Code 带火了一把。Claude Code 创始人 Boris Cherny 在聊团队使用习惯时提到他们的开发团队程序员非常喜欢 Ghostty。我自己也是看了这个分享后来被 iTerm2 搞烦了之后转去的。用 Claude Code 或 Codex CLI 跑久了终端会变成一个小工作台一边看 Agent 输出一边跑测试、看日志、处理 Git。iTerm2 当然也能做但要调到顺手通常得花不少时间配字体、主题、快捷键和分屏。Ghostty 的好处是下载下来就已经比较能用后面只是按自己的习惯微调。Ghostty 做的事情就是把终端模拟器这件事做好没有什么花里花哨的。它没有内置 AI也不是服务器管理器。当然了iTerm2 、Warp、Kitty 等等都是不错的我希望看到这篇文章的朋友不要因为这些争论你自己用着顺手才是最重要的安装macOS 直接用 Homebrewbrewinstall--caskghostty也可以去官网下载.dmg拖到 Applications。官方 macOS 包是 Ghostty 项目签名并经过 notarize 的Homebrew cask 用的也是官方.dmg。装完看一下版本/Applications/Ghostty.app/Contents/MacOS/ghostty version如果 CLI 已经进 PATHghostty version版本说明本文按我本机的Ghostty 1.3.1校对。Ghostty 更新挺快配置项以你本机的ghostty show-config --default --docs为准。Linux 安装方式要看发行版。Arch Linux 可以直接sudopacman-Sghostty其他发行版优先看官方安装页。Ghostty 官方直接分发的是 macOS 预构建包Linux 包多由发行版维护者或社区维护工作机、公司机器上别随手跑来路不明的安装脚本。先用默认值跑一天其实你不需要做任何配置都能用已经能够满足大部分朋友的需求了。Ghostty 默认内置 JetBrains Mono也带 Nerd Fonts 能力。大多数人不配字体也能直接用。刚开始用别一上来复制几百行配置。先打开跑一天再改字体、主题、窗口内边距、透明度、剪贴板、Shell Integration 和分屏快捷键。终端配置越长出问题越难查Ghostty 值得用的一点就是可以少配。配置文件在哪里Ghostty 配置就是key value。当前推荐文件名是config.ghostty旧文件名config仍会被读取。常见路径~/.config/ghostty/config.ghostty ~/.config/ghostty/configmacOS 还会读~/Library/Application Support/com.mitchellh.ghostty/config.ghostty ~/Library/Application Support/com.mitchellh.ghostty/config两个地方都有配置时macOS 的 Application Support 路径后加载冲突项会覆盖前面的值。配置不生效先查这个。常用检查命令ghostty list-fonts ghostty list-themes ghostty list-keybinds--defaultghostty validate-config改完配置后macOS 按Cmd Shift ,重载Linux 按Ctrl Shift ,。透明度这类窗口项不一定热更新没变化就重启 Ghostty。我的最小配置先建目录mkdir-p~/.config/ghostty编辑配置nano~/.config/ghostty/config.ghostty可直接用这一份# 字体 font-family JetBrainsMono Nerd Font Mono font-size 14 font-thicken true font-thicken-strength 80 font-codepoint-map U2E80-U9FFF,UF900-UFAFF,UFF00-UFFEFPingFang SC # 主题 theme Catppuccin Mocha # 窗口 window-padding-x 12 window-padding-y 10 window-save-state always background-opacity 0.95 background-blur 20 # 光标和滚动 cursor-style bar cursor-style-blink true scrollback-limit 10000000 scrollbar never # Shell Integration shell-integration detect shell-integration-features cursor,sudo,title # macOS macos-option-as-alt left macos-titlebar-style transparent macos-titlebar-proxy-icon hidden # 分屏 split-divider-color #45475a unfocused-split-opacity 0.92 # 剪贴板 copy-on-select false clipboard-paste-protection true clipboard-paste-bracketed-safe true字体这里用的是 JetBrainsMono Nerd Font Mono主要是为了让 Git 分支符号、Starship prompt、Powerline 图标别变成方块。没装的话brewinstall--caskfont-jetbrains-mono-nerd-font中文不要直接把PingFang SC当第二个font-family乱塞。主字体没命中时英文可能也落到中文字体上字距会很怪。font-codepoint-map只把中文码位交给PingFang SC更稳。copy-on-select false是我的习惯。Ghostty 默认选中文本会复制Linux 用户可能喜欢在 macOS 上我更愿意手动Cmd C避免剪贴板被误覆盖。clipboard-paste-protection true建议留着。从网页复制多行命令进终端本来就应该多一道提醒。scrollback-limit的单位是字节不是行数10000000大约是 10 MB而且每个分屏、标签页都会单独算。主题列出内置主题ghostty list-themes换主题只要一行theme TokyoNight我一般用theme Catppuccin Mocha想跟随系统明暗模式theme dark:Catppuccin Mocha,light:Catppuccin LatteGhostty 内置主题已经够多。自定义主题本质上也是一段会被 Ghostty 加载的配置片段大多数只改颜色从陌生来源下载时打开看一眼确认它没有顺手改字体、透明度或 keybind。Starship 可选Ghostty 管终端窗口、字体、主题和协议Starship 管 shell prompt。想让 prompt 和 Catppuccin 风格一致可以装brewinstallstarship~/.zshrc末尾加command-vstarship/dev/nulleval$(starship initzsh)想确认 Starship 到底显示了哪些模块可以在 Git 仓库里跑starship explain我不建议一开始就把 Starship 模块全开。目录、Git 分支、Git 状态、耗时够用Kubernetes、云账号、容器这些东西用到再加。prompt 每次回车都要计算信息太满反而慢。分屏和常用快捷键macOS 下先记这些快捷键作用Cmd T新标签页Cmd W关闭当前终端或分屏Cmd D向右分屏Cmd Shift D向下分屏Cmd [/Cmd ]前后切换分屏Cmd Option 方向键按方向切换分屏Cmd Shift Enter放大/恢复当前分屏Cmd F搜索历史输出Cmd Shift ,重载配置Cmd Shift P命令面板跑 Claude Code 时三块布局最顺手Cmd D左右分屏。光标放到右侧Cmd Shift D再上下分屏。左侧跑 Claude Code右上跑测试右下看日志或 Git。Claude 输出太长按Cmd Shift Enter临时放大。这个布局不用 tmux也不用多个窗口来回摆。想自己绑快捷键用这个格式keybind triggeraction例如keybind cmdshifteequalize_splits keybind cmdshiftftoggle_split_zoomQuick TerminalQuick Terminal 是从屏幕上方滑下来的临时终端。适合临时跑命令不适合承载整天的主工作流。配置quick-terminal-position top quick-terminal-screen main quick-terminal-autohide true quick-terminal-animation-duration 0.15 keybind global:ctrlgrave_accenttoggle_quick_terminalQuick Terminal 没有默认快捷键必须自己绑定toggle_quick_terminal。global:不是所有平台都能用macOS 需要给 Ghostty 辅助功能权限Linux/GTK 要看桌面环境是否支持全局快捷键协议。配置没问题但快捷键没反应时先查系统权限、桌面环境支持和快捷键冲突。另外macOS 上改quick-terminal-position后需要完整重启 Ghostty。Shell Integration这一项我会留着shell-integration detectGhostty 会给 zsh、fish、bash、nushell、elvish 加一段集成脚本。开了以后新分屏会跟着当前目录走比如你在项目根目录里开右侧分屏右边不会又回到 home 目录。复杂 prompt 换行和 resize 也少一点错位历史输出还能按 prompt 跳。有两个小坑。macOS 自带/bin/bash太老官方文档说它不支持自动注入默认 zsh 用户一般不用管。另一个是你在 Ghostty 里手动切 shell比如进nix-shell集成能力可能会丢需要手动加载对应脚本。SSH 不急着配Ghostty 有自己的 terminfo 和协议能力。远程主机不认识时Neovim、htop 这类 TUI 可能显示异常。如果你只是偶尔 SSH先别动。真遇到远程显示问题再考虑shell-integration-features cursor,title,ssh-env,ssh-terminfoSSH 环境本来就复杂没问题时少加一层包装。常见问题配置不生效先查两个目录再跑校验ls-la~/.config/ghosttyls-la$HOME/Library/Application Support/com.mitchellh.ghosttyghostty validate-config网上有些配置会写 字体 这种分隔符Ghostty 不认。注释要写成# 字体。英文字距很怪先看字体名有没有命中ghostty list-fonts|rg-iJetBrains|Mono|Nerd如果你写了font-family JetBrains Mono但本机没这个字体Ghostty 会 fallback。fallback 到中文字体时英文就容易变丑。装字体或者改成 Ghostty 实际识别到的 family 名。主题名以ghostty list-themes输出为准。看到Catppuccin Mocha配置里就原样写theme Catppuccin Mocha透明度没变化先完整重启 Ghostty。还有一种情况是 Neovim、tmux 自己画了背景色Ghostty 默认只让窗口背景透明不保证所有显式背景色的单元格都透明。真要连这些 cell 也一起透明再看background-opacity-cells。选中文本把剪贴板覆盖了就关掉copy-on-select falseQuick Terminal 全局快捷键没反应查三件事配置里有没有global:系统权限或桌面环境是否支持快捷键是不是被其他软件占了。总结如果只是想换个好看的终端iTerm2 也能调主题和透明度。Ghostty 更适合类似我这种适用场景的朋友每天在终端里跑 Agent、测试、日志想要原生窗口、默认分屏、可读配置和更轻的长输出体验。如果你也想体验的话不如先用默认配置跑一天再改字体和主题分屏用顺了再考虑 Quick Terminal。如果你也想用我的同款配置的话不需要自己动手这样太累了。AI 时代最简单的方法就是把我这篇文章发送给你最信任的 Coding Agent 例如 Codex、Claude让它帮你安装配置。这篇文章已经同步到了 AIGuideAI 应用开发、AI 编程实战与面试指南对标 JavaGuide完全开源免费:AI 应用开发知识体系AI 编程实战指南希望这篇文章对大家有帮助我们下期再见