20000419/fauxnix
Run Linux-style commands on Windows via deterministic bash→PowerShell translation. No VM, no WSL. MCP server + CLI built for AI agents (Claude Code, Codex, OpenCode...). GNU-style output, bash-style errors, UTF-8/GBK handled.
fauxnix – AI代理用于Bash到PowerShell的桥梁
它能做什么
- 提供一个确定性、零LLM的翻译层,让大型语言模型(LLM)代理可以在Windows机器上编写普通的Linux风格bash命令。
- 该工具解析bash的一个子集(109个命令 + 常见shell语法),将命令转换为等效的PowerShell脚本,原生运行,并返回与GNU coreutils完全一致的输出(相同的列布局、错误消息、退出码、UTF-8处理)。
- 以npm包(
fauxnix-cli)形式发布,可在任何安装了PowerShell 5.1+ 和 Node ≥ 18 的Windows上运行——无需虚拟机、无需WSL、无需额外二进制文件。
对AI为何重要
- LLM代理主要在bash上训练;在Windows上,它们常生成在PowerShell中失败的命令,原因包括引号、编码或缺少工具。
- 通过实时将bash翻译为PowerShell,fauxnix让代理能继续使用它们熟悉的语言,同时在Windows上正确执行,从而提升代码生成助手(Claude Code、Codex、OpenCode、Kimi Code、Qwen Code)及任何MCP兼容客户端的可靠性。
主要特性
- 一键安装:支持主要LLM编码助手(
fauxnix install --claude等)和通用fauxnix mcp服务器用于自定义代理。 - MCP会话持久化:服务器在调用之间记住当前目录、环境变量和位置参数,模拟真实交互式shell。
- 批量模式:代理可发送一系列步骤,这些步骤被原子性编译和执行,每步返回结构化结果。
- 广泛测试覆盖:400多个自动化测试和253个案例的差异语料库,已与Git Bash上的真实GNU coreutils验证。
- 性能:基准测试显示,与原始PowerShell相比,工具调用错误减少约一半,任务执行速度最高提升2.5倍。
- 支持命令集包括核心文件工具(
ls,cp,rm,find)、文本处理(grep,sed,awk,sort)、shell内置命令(cd,export,set)、网络工具(curl,wget,ping)和归档工具(tar,zip)。 - 优雅失败:不支持的结构(如后台
&、heredocs、完整eval)会抛出清晰的GNU风格错误消息,而非静默错误行为。
工作原理
- 解析器 – 轻量级bash子集解析器构建AST。
- 翻译器 – AST被转换为遵循“Fauxnix契约”(逐行stdout、错误流、退出码)的自包含PowerShell脚本。
- 执行器 – 脚本通过PowerShell(
-EncodedCommand或临时.ps1文件)运行,强制UTF-8并进行输出后处理以去除PowerShell特有噪声。 - MCP服务器 – 作为MCP服务暴露(
fauxnix mcp),代理可通过标准模型-代码协议调用。
安装与快速开始
# 无需安装即可运行单个命令
npx fauxnix-cli@latest "ls -la src | head -3"
# 全局安装并集成到LLM助手
npm install -g fauxnix-cli
fauxnix install --claude # 或 --codex, --kimi, --qwen
安装后的fauxnix命令可直接使用或通过MCP服务器调用。
限制与已知差异
- 变量赋值行为类似于
export(不区分shell本地变量和导出变量)。 - 某些bash功能被有意不支持(如
yes有上限,tail -f,后台&)。 chmod仅处理只读位;chown在Windows上为无操作(no-op)。- 部分输出细节(如
ps aux列值)为近似值。
安全
仓库包含SECURITY.md,描述信任模型、网络防护和报告流程。
许可证 MIT © 20000419。
Fauxnix让AI代理能继续使用它们训练时的语言——bash——同时在原生Windows上安全高效地运行。
相关
- 项目
- 项目
- 项目
- 项目