You can edit almost every page by Creating an account and confirming your email.

Wmux

From EverybodyWiki Bios & Wiki




wmux (Windows Terminal Multiplexer) is a native Windows terminal multiplexer designed for running AI coding agents. Built on ConPTY and Electron, it provides tmux-style split panes, session persistence, a built-in browser with Chrome DevTools Protocol (CDP) automation, and an integrated Model Context Protocol (MCP) server — all without requiring WSL, Cygwin, or MSYS2.[1][2]

It is purpose-built for AI coding agents such as Claude Code, OpenAI Codex CLI, and Google Gemini CLI, and supports multi-agent workflows through a built-in A2A (Agent-to-Agent) messaging protocol.

wmux
Developer(s)openwong2kim
Stable release
2.1.6
Engine
    Operating systemMicrosoft Windows
    Available inEnglish, Korean, Japanese, Chinese
    TypeTerminal multiplexer
    LicenseMIT License
    Websitewmux.app

    Search Wmux on Amazon.

    Background

    On Unix-like operating systems, terminal multiplexers such as tmux and GNU Screen have long allowed developers to manage multiple terminal sessions within a single window. Windows, however, lacked a native equivalent. While tmux can be run through WSL (Windows Subsystem for Linux), the WSL environment is not fully integrated with native Windows processes and introduces additional configuration overhead.

    With the rapid proliferation of large language model-based AI coding agents in the 2020s — including Claude Code, Codex CLI, and Gemini CLI — demand arose for a way to run multiple AI agents simultaneously on Windows and have them collaborate. wmux was created to address this need, combining terminal multiplexing, browser automation, and inter-agent communication in a single application.

    Overview

    wmux is described by its developers as "LSP for terminals" — analogous to how the Language Server Protocol provides a standard interface between editors and language analysis tools, wmux acts as a neutral substrate on which external AI tools can build workflow intelligence on top of any terminal session.

    Core design principles include:

    • No WSL required: Communicates directly with the Windows kernel via ConPTY, eliminating the need for WSL, Cygwin, or MSYS2.
    • AI-first: An MCP server is built in, enabling AI agents to directly control the terminal and browser.
    • Multi-agent: Multiple AI agents running within the same wmux instance can communicate via an A2A (Agent-to-Agent) protocol.
    • Session durability: Terminal sessions and scrollback buffers are restored after app restarts and system reboots.

    Installation

    wmux can be installed in several ways:

    Method Command / Action
    winget (recommended) winget install openwong2kim.wmux
    Chocolatey choco install wmux
    Installer Download wmux Setup.exe
    PowerShell one-liner iex

    The PowerShell one-liner automatically installs Python and Visual Studio Build Tools if they are not present.

    Features

    Terminal multiplexing

    wmux uses ConPTY-based native Windows pseudo-terminals and xterm.js with WebGL hardware-accelerated rendering. It applies Unicode 11 width tables for correct CJK character and emoji cursor positioning, ensuring that TUI applications such as Claude Code and Vim render correctly.

    Key terminal features include horizontal and vertical pane splitting (Ctrl+D / Ctrl+Shift+D), per-workspace tabs, a Quake-style floating pane (Ctrl+`), 999K-line scrollback with disk persistence, tmux-style prefix mode (Ctrl+B followed by one of 13 action keys), smart right-click (selection → instant copy; empty area → instant paste; link → Open/Copy Link menu), scroll bookmarks (Ctrl+M to mark, Ctrl+Up/Down to jump), Vi copy mode (Ctrl+Shift+X), regex search (Ctrl+F), and OSC 133 shell integration (auto-injected for PowerShell and Bash).

    Built-in browser and CDP automation

    wmux includes a built-in browser panel (Ctrl+Shift+L) driven by the Chrome DevTools Protocol (CDP). The panel includes a navigation bar, DevTools, back/forward navigation, and an Element Inspector that highlights elements on hover and copies LLM-friendly context on click.

    CDP automation supports click, form fill, text typing, screenshot capture, JavaScript evaluation, and key press. React controlled inputs and CJK text are handled correctly.

    MCP server integration

    When wmux starts, it automatically registers an MCP (Model Context Protocol) server in ~/.claude.json. Claude Code can use wmux's browser and terminal features without any manual configuration. Each browser tool accepts a surfaceId parameter so that multiple Claude Code sessions can each control their own independent browser.

    Category MCP Tool Description
    Browser control browser_open Open browser panel
    browser_navigate Navigate to URL
    browser_screenshot Capture screenshot
    browser_snapshot Read page structure
    browser_click Click element
    browser_fill / browser_type Fill form
    browser_evaluate Execute JavaScript
    browser_press_key Send key press
    Terminal control terminal_read Read terminal output
    terminal_read_events Read commands semantically via OSC 133
    terminal_send Send command to terminal
    Workspace management workspace_list List workspaces
    surface_list List surfaces
    pane_list List panes
    A2A messaging a2a_send / a2a_broadcast Send messages between agents
    a2a_whoami Query own agent ID
    a2a_task_send / a2a_task_query / a2a_task_cancel Delegate and track tasks
    Company mode company_a2a_send Send coordinated message
    company_a2a_inbox Check inbox
    company_a2a_status Check status

    Multi-agent workflows

    wmux's A2A (Agent-to-Agent) protocol allows AI agents running within the same wmux instance to exchange messages and delegate tasks. For example:

    • Left pane: Claude Code writes the backend API
    • Right pane: Codex CLI builds the frontend UI
    • Bottom pane: Gemini CLI runs tests and reports results back to the other agents via A2A

    Company Mode is a more structured multi-agent coordination mode in which a central orchestrating agent distributes tasks to sub-agents and tracks their status.

    Session persistence

    wmux restores terminal sessions after app restarts and system reboots via a background daemon process:

    • App restart: The daemon keeps PTY processes alive in the background, so sessions reconnect instantly when wmux is reopened.
    • Reboot: Scrollback buffers and working directories are saved and recovered. wmux registers itself to auto-start on Windows login.
    • Auto-update: Checks for updates via GitHub Releases; can be toggled in Settings.

    Notifications and agent detection

    wmux uses output throughput-based activity detection (rather than pattern matching) to determine when an AI agent has completed work, making it compatible with any agent. Automatically detected agents include Claude Code, Cursor, Aider, Codex CLI, Gemini CLI, OpenCode, and GitHub Copilot CLI.

    Events trigger the following responses:

    • Task complete → Windows desktop notification (toast) + taskbar flash
    • Abnormal exit → immediate warning
    • Dangerous commands (git push --force, rm -rf, DROP TABLE, etc.) → dangerous action warning

    Security

    Security feature Details
    IPC authentication Token authentication on all Named Pipes
    SSRF protection Blocks private IP ranges, file://, javascript: schemes
    Command injection prevention PTY input sanitization
    CDP port security Randomized port (no fixed debug port)
    Memory watchdog Reaps dead sessions at 750 MB; blocks new sessions at 1 GB
    Electron Fuses RunAsNode disabled; cookie encryption enabled

    Keyboard shortcuts

    Shortcut Action
    Ctrl+D Split pane right
    Ctrl+⇧ Shift+D Split pane down
    Ctrl+T New tab
    Ctrl+W Close tab
    Ctrl+N New workspace
    Ctrl+19 Switch workspace
    Ctrl+⇧ Shift+L Open browser panel
    Ctrl+B then key tmux-style prefix mode (13 actions)
    Ctrl+⇧ Shift+B Toggle sidebar
    Ctrl+` Toggle floating pane (Quake-style)
    Ctrl+K Command palette
    Ctrl+I Notification panel
    Ctrl+, Settings
    Ctrl+F Search terminal (with regex toggle)
    Ctrl+M Add scroll bookmark
    Ctrl+ / Jump to previous/next bookmark
    Ctrl+⇧ Shift+X Vi copy mode
    F12 Browser DevTools

    Architecture

    wmux consists of four main processes:

    Electron main process

    Handles core application logic: PTYManager (ConPTY-based pseudo-terminal management), PTYBridge (data forwarding and ActivityMonitor), AgentDetector (gate-based agent status tracking), SessionManager (atomic save with .bak recovery), ScrollbackPersistence (terminal buffer dump/load), PipeServer (Named Pipe JSON-RPC with token authentication), McpRegistrar (auto-registers MCP in ~/.claude.json), WebviewCdpManager (CDP proxy to webview), DaemonClient (daemon connector), AutoUpdater (GitHub Releases feed), and ToastManager (OS notifications and taskbar flash).

    Renderer process

    A React 19 + Zustand UI layer consisting of: PaneContainer (recursive split layout), Terminal (xterm.js + WebGL + scrollback restore), BrowserPanel (webview + Inspector + CDP), NotificationPanel, SettingsPanel (auto-update toggle, workspace reset), and a Multiview grid.

    Daemon process

    Runs independently in the background to keep PTY sessions alive across app restarts: DaemonSessionManager (ConPTY lifecycle), RingBuffer (circular scrollback buffer), StateWriter (session suspend/resume), ProcessMonitor (external process watchdog), Watchdog (memory pressure escalation), and DaemonPipeServer (Named Pipe RPC with token authentication).

    MCP server

    Runs as a stdio process bridging Claude Code and wmux: PlaywrightEngine (CDP connection, fast-fail), CDP RPC fallback (screenshot, evaluate, type, click), and a Claude Code ↔ wmux Named Pipe RPC bridge.

    Comparison with similar software

    Software Platform WSL required AI agent support Browser automation MCP server Session persistence
    wmux Windows native No Built-in, dedicated Built-in CDP Auto-registered App restart + reboot
    tmux Unix/Linux/macOS N/A None None None Session keep-alive
    GNU Screen Unix/Linux/macOS N/A None None None Session keep-alive
    Windows Terminal Windows native No None None None None
    tmux (via WSL) Windows + WSL Required None None None Limited

    Technology stack

    Component Technology Role
    Terminal rendering xterm.js + WebGL GPU-accelerated terminal output
    Pseudo-terminal node-pty / ConPTY Native Windows PTY
    Desktop framework Electron Cross-process app container
    Browser automation Playwright CDP engine
    UI framework React 19 + Zustand Renderer UI and state management
    IPC Named Pipe JSON-RPC Inter-process communication
    Updates GitHub Releases Auto-update feed

    Development

    wmux is open-source software released under the MIT License, with source code hosted on GitHub. Development requires Node.js 18 or later, Python 3.x (for node-gyp builds), and Visual Studio Build Tools with the C++ workload. The install.ps1 script installs Python and VS Build Tools automatically if they are missing.

    git clone https://github.com/openwong2kim/wmux.git
    cd wmux
    npm install
    npm start          # Development mode
    npm run make       # Build installer
    

    wmux detects AI coding agents for status display purposes only. It does not call any AI APIs, capture agent outputs, or automate agent interactions. Users are responsible for complying with their AI provider's Terms of Service.

    See also

    References

    1. "wmux – Windows Terminal Multiplexer for AI Agents". GitHub. Retrieved 2026-05-15.
    2. "wmux — Windows terminal multiplexer for AI agents". wmux.app. Retrieved 2026-05-15.

    External links

    Category:Terminal emulators Category:Windows-only software Category:Free software Category:MIT licensed software Category:Artificial intelligence applications Category:Terminal multiplexers Category:Electron (software framework)-based software


    This article "Wmux" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Wmux. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.