Skip to content

Windows spawn uses WSL bash instead of Git Bash #39

Description

@orangewk

症状

Windows で spawn.sh codex <role> を OS terminal 経路で実行すると、新しい Windows Terminal が次のエラーで終了する。

/bin/bash: C:/Users/<USER>/AppData/Local/Temp/agmsg-spawn/boot-XXXXXX: No such file or directory
[process exited with code 127]

boot script 自体はエラー後も Windows の <TEMP>/agmsg-spawn/boot-XXXXXX に存在する。

原因

scripts/spawn.sh の Windows Terminal launcher が裸の bash を渡している。

wt.exe new-tab bash -l "$BOOT"

WSL が導入された環境では Windows 側の bash.exe shim が Git Bash より先に解決されることがある。その場合、WSL Bash が Git Bash/Windows 形式の boot path を開けず code 127 になる。

upstream main も 2026-08-04 時点で同じ実装。既存 Issue は検索範囲では見つからなかった。

再現環境

  • Windows
  • Git Bash installed
  • WSL installed and Windows-side bash.exe shim available
  • agmsg 1.1.13
  • Windows Terminal (wt.exe)

確認済み回避策

terminal template で Git Bash を絶対指定すると正常に spawn し、Codex monitor bridge も起動した。

--terminal 'wt.exe new-tab "<GIT_BASH_PATH>" -l {cmd}'

期待する修正

Windows launcher が現在実行中の Git Bash executable、または明示的に検出した Git for Windows の Bash を Windows Terminal へ渡す。裸の bash に依存しない。

完了条件

  • WSL と Git Bash が共存し、Windows PATH で WSL bash が先に見つかる環境でも spawn 成功
  • boot script が実行され、既存 role/session を resume できる
  • Windows launcher の回帰テストを追加
  • custom --terminal 経路と WSL 未導入環境を壊さない

Metadata

Metadata

Assignees

No one assigned

    Labels

    wipwork in progress

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions