如果你在 Windows 上写代码,又经常和 AI Agent、CLI 工具、自动化脚本打交道,大概率遇到过这些问题:
- 文档里给的是 Bash 命令,复制到 PowerShell 里引号、路径、环境变量全都不对劲
- WSL 很强,但你只是想要一个更顺手的终端,不想再维护另一套 Linux 文件系统
- Git Bash 能跑很多命令,但默认体验偏朴素,提示符、补全、插件和现代 CLI 工具都要自己一点点配
- Windows Terminal、VS Code、Git Bash、
.bashrc、.zshrc分散配置,改起来容易乱 最近整理了一个小项目:gyf-dev/windows-bash-zsh,目标很简单:把 Windows 上的 Git Bash 打造成接近 macOS/Linux 体验的 zsh 终端环境。
它集成了 Windows Terminal、zsh、Oh My Zsh、Starship、fzf、常用 zsh 插件,以及 bat、ripgrep、lsd、yazi 等现代 CLI 工具。对经常使用 Codex、Claude、Copilot、各种 Agent 工具的 Windows 用户来说,这种 Bash-like 环境会舒服很多。
为什么不是直接用 WSL?
WSL 当然很强,适合需要完整 Linux 环境的场景。但如果你的核心需求是「Windows 本机项目 + 更好用的 Unix-like 终端」,WSL 有时候会显得重了一些。
它会带来另一套文件系统、包管理层、网络边界和运行时上下文。同一份 Git 仓库如果同时在 Windows 和 WSL 里编辑,还可能碰到换行符、权限、文件监听、路径映射等问题。
windows-bash-zsh 的定位不是替代 WSL,而是给另一类需求一个更轻的选择:
-
继续使用 Windows 本机文件和工具链
-
继续使用 Git for Windows / Git Bash
-
让终端体验接近 macOS/Linux
-
让 AI CLI、Shell 脚本和常见开发命令少踩 PowerShell 兼容坑
它主要做了什么?
1. Windows Terminal 集成
项目会帮助添加或更新 Git Bash profile,并配置默认终端、字体和常用快捷键。这样你打开 Windows Terminal 时,可以直接进入增强后的 Git Bash/zsh 环境。
2. zsh + Oh My Zsh
在 Git Bash 环境中安装并启用 zsh、Oh My Zsh 和常用插件,让补全、历史命令、命令提示、语法高亮、自动建议这些能力都变得顺手。
3. Starship 提示符
使用 Catppuccin Mocha 风格的 Starship 配置。相比复杂主题,Starship 更轻,跨 shell 也更稳定,适合日常开发和 AI 工具频繁调用命令的场景。
4. 现代 CLI 工具
项目集成了常用效率工具:
-
bat:更好看的cat -
ripgrep:更快的全文搜索 -
lsd:更现代的ls -
yazi:终端文件管理器 -
7-Zip、ImageMagick、FFmpeg:用于增强 yazi 预览能力
这些工具配好之后,Windows 终端的体验会明显接近 macOS/Linux 开发机。
5. macOS-like open
项目还提供了类似 macOS 的 open 命令。在 Windows 上也能更自然地从终端打开文件、目录或链接。
6. 幂等配置
这是我比较看重的一点:它不是粗暴覆盖用户配置,而是尽量只补齐缺失配置。
.bashrc、.zshrc、Windows Terminal、VS Code settings 这些都属于用户自己的东西。项目会以受管配置块和定点修改为主,避免把已有内容整文件覆盖掉。
快速开始
先克隆项目:
git clone https://github.com/gyf-dev/windows-bash-zsh.git
cd windows-bash-zsh
PowerShell 安装:
powershell.exe -ExecutionPolicy Bypass -File .\install.ps1
CMD 安装:
install.cmd
Bash 安装:
bash install.sh
安装脚本默认会把 Skill 安装到多个常见 Agent 平台目录:
- Codex:
~\.codex\skills\windows-bash-zsh - Claude:
~\.claude\skills\windows-bash-zsh - Agents:
~\.agents\skills\windows-bash-zsh - Copilot:
~\.copilot\skills\windows-bash-zsh
安装完成后,在对应 Agent 平台中执行
windows-bash-zshSkill,完成配置后重新打开终端即可。第一次启动终端可能会稍慢,因为 zsh 插件需要初始化;后续打开会恢复正常。如果你不需要某些插件,也可以在
.zshrc的plugins=(...)中删掉。
卸载也很直接
PowerShell:
powershell.exe -ExecutionPolicy Bypass -File .\install.ps1 -Uninstall
CMD:
install.cmd -Uninstall
Bash:
bash install.sh --uninstall
如果只想安装到某个目标,或者额外安装到自定义 skills 目录,也支持参数化安装:
# 只安装到 Codex
powershell.exe -ExecutionPolicy Bypass -File .\install.ps1 -Targets codex
# 额外安装到自定义 skills 目录
powershell.exe -ExecutionPolicy Bypass -File .\install.ps1 -ExtraSkillRoots "D:\MyAgent\skills"
适合哪些人?
我觉得它特别适合这几类开发者:
- Windows 主力机用户,但喜欢 macOS/Linux 风格终端
- 经常复制 Bash 文档命令,不想反复改 PowerShell 语法
- 正在使用 AI Coding、Codex、Claude Code、Copilot CLI 或其他 Agent 工具
- 不需要完整 WSL,只想把 Git Bash 体验补齐
- 喜欢
fzf、rg、bat、lsd、yazi这一套现代 CLI 工具 - 希望配置可回退、可重复执行,不想手动改一堆 rc 文件
和手动配置相比,优势在哪里?
手动配置当然也可以,但 Windows 上的终端链路比较散:
- Git Bash 本身一套配置
- zsh 安装和 Git for Windows 路径有关
- Oh My Zsh 插件位置要对
- Starship 最好避开带空格的 Windows 路径
- Windows Terminal profile 要单独配置
- VS Code terminal settings 也可能要处理
- bat、rg、lsd、yazi 还涉及 winget、PATH 和 alias
这些东西不是难,而是碎。碎就容易漏,也容易过几个月忘了自己改过哪里。
windows-bash-zsh 的价值,就是把这些分散步骤整理成一个可复用、可更新、可卸载的 Skill 和脚本集合。
项目地址
GitHub: github.com/gyf-dev/win…
如果你也是 Windows 开发环境重度用户,或者正在把 AI Coding 工具接入日常开发流,可以试一下这个方案。它不是为了炫技,而是让 Windows 终端少一点摩擦感,多一点「打开就能干活」的稳定体验。
欢迎 Star、试用、提 Issue,也欢迎分享你在 Windows 上配置 AI CLI 工作流时遇到的坑。