Skip to content

Add native Windows tmux backend#85

Draft
Tim-Machine wants to merge 1 commit into
bmad-code-org:mainfrom
Tim-Machine:codex/windows-tmux-backend
Draft

Add native Windows tmux backend#85
Tim-Machine wants to merge 1 commit into
bmad-code-org:mainfrom
Tim-Machine:codex/windows-tmux-backend

Conversation

@Tim-Machine

Copy link
Copy Markdown

Summary

  • Add WindowsTmuxMultiplexer for native Windows hosts using tmux-windows.
  • Rewrite tmux-windows absolute -c cwd arguments to -c . while spawning tmux from the requested cwd.
  • Inject inherited Windows environment into agent windows so CLI binaries like codex resolve inside panes.
  • Use PowerShell syntax for parked control windows and document the pipe-pane no-op tradeoff on Windows.

Verification

  • PYTHONUTF8=1 uv run --all-extras --group dev pytest tests/test_tui_launch.py tests/test_multiplexer.py tests/test_backend_registry.py tests/test_portability_guard.py -q -> 65 passed
  • uv run --group dev ruff check src/bmad_loop/adapters/tmux_windows_backend.py src/bmad_loop/adapters/multiplexer.py tests/test_multiplexer.py tests/test_backend_registry.py tests/test_portability_guard.py tests/test_tui_launch.py -> pass
  • git diff --check -> pass
  • Local source install: bmad-loop validate --project C:\DevProjects\zerg -> WindowsTmuxMultiplexer available, codex found, hooks registered
  • Full suite collection: PYTHONUTF8=1 uv run --all-extras --group dev pytest --collect-only -q -> 1512 tests collected

Notes

  • A full pytest -q run on the Windows workstation exceeded a 184s command timeout before producing buffered output, so this PR is draft pending CI/full-suite confirmation.
  • pipe_pane is deliberately a no-op for this backend because live tmux-windows tests showed pipe-pane can terminate the tmux server when spawning Windows pipe commands.

@coderabbitai

coderabbitai Bot commented Jul 8, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: f0735aca-2fde-4b99-a4e1-03ab6710c464

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant