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)エージェントがWindowsマシン上で通常のLinuxスタイルのbashコマンドを書けるようにする、決定論的でLLMを一切使わない翻訳レイヤーを提供。
  • このツールはbashのサブセット(109コマンド+一般的なシェル構文)を解析し、同等のPowerShellスクリプトに変換し、ネイティブで実行。出力はGNU coreutilsとまったく同じ形式(列のレイアウト、エラーメッセージ、終了コード、UTF-8処理)を再現。
  • npmパッケージ(fauxnix-cli)として配布され、PowerShell 5.1+ および Node ≥ 18 を搭載した任意のWindowsで動作。VMもWSLも追加バイナリも不要。

AIにとってなぜ重要か

  • LLMエージェントは主にbashで訓練されているが、Windowsではクォート、エンコーディング、または利用できないユーティリティの問題によりPowerShellで失敗することが多い。
  • その場でBashをPowerShellに翻訳することで、エージェントは慣れ親しんだ言語を使い続けながら、Windows上で正しく実行可能に。コード生成アシスタント(Claude Code、Codex、OpenCode、Kimi Code、Qwen Code)やMCP互換クライアントの信頼性が向上。

主な機能

  • ワンコマンドインストール:主要なLLMコードアシスタント(fauxnix install --claudeなど)向け、およびカスタムエージェント用の汎用fauxnix mcpサーバー。
  • MCPセッションの永続化:サーバーはコール間で現在のディレクトリ、環境変数、位置引数を記憶し、実際のインタラクティブシェルを模倣。
  • バッチモード:エージェントは一連のステップを送信でき、それらは原子的にコンパイル・実行され、各ステップに対して構造化された結果を返す。
  • 広範なテストカバレッジ:400以上の自動テストと、Git Bash上で実際のGNU coreutilsと照合された253ケースの差分コーパス。
  • パフォーマンス:ベンチマークでは、同じタスクに対して生のPowerShellと比較して、ツールコールエラーが約半減、最大2.5倍の高速化を達成。
  • 対応コマンドセット:ファイルユーティリティ(ls, cp, rm, find)、テキスト処理(grep, sed, awk, sort)、シェルビルトイン(cd, export, set)、ネットワーク(curl, wget, ping)、アーカイブツール(tar, zip)を含む。
  • 穏やかなエラー処理:サポートされていない構文(例:バックグラウンド&、heredocs、完全なeval)は、静かに誤動作するのではなく、明確なGNUスタイルのエラーメッセージを出力。

仕組み

  1. パーサー – 軽量なbashサブセットパーサーがASTを構築。
  2. トランスレーター – ASTを「Fauxnix契約」(行単位のstdout、エラーストリーム、終了コード)に従う自己完結型PowerShellスクリプトに変換。
  3. エクセキューター – PowerShell(-EncodedCommandまたは一時.ps1ファイル)で実行。UTF-8強制と出力の後処理により、PowerShell固有のノイズを除去。
  4. MCPサーバーfauxnix mcpとしてツールを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と同様に動作(シェルローカルとエクスポート変数の区別なし)。
  • 特定のbash機能は意図的に非対応(例:yesは上限あり、tail -f、バックグラウンド&)。
  • chmodは読み取り専用ビットのみ対応。chownはWindowsでは無効(no-op)。
  • 一部の出力のニュアンス(例:ps auxの列値)は近似値。

セキュリティ リポジトリにはSECURITY.mdがあり、信頼モデル、ネットワークガード、報告プロセスについて記述。

ライセンス MIT © 20000419。


Fauxnixは、AIエージェントが訓練された言語(Bash)をそのまま使い続けながら、ネイティブWindows上で安全かつ効率的に実行できるようにします。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト