Skip to content

Commit c817e7d

Browse files
authored
🤖 refactor: rename cmux to mux (#577)
## Overview Comprehensive rename from `cmux` to `mux` across the entire codebase (113 files changed). ## Core Changes ### Directory Migration (~50 LoC) Added `ensureMuxMigration()` to automatically migrate `~/.cmux → ~/.mux` on first launch: - Creates backward-compatible symlink `~/.cmux → ~/.mux` - Called early in app startup (`main-desktop.ts`) - Ensures seamless upgrade with no user intervention ### Constants & Paths - Renamed all path functions: `getCmuxHome() → getMuxHome()`, etc. - Updated base directory: `.cmux → .mux` - Updated environment variables: `MUX_TEST_ROOT`, `MUX_DEVSERVER_PORT`, etc. ### Configuration - **appId**: `com.cmux.app → com.mux.app` (clean break) - **productName**: `cmux → mux` - **package.json**: Updated description - **Repository URLs**: Kept as `github.com/coder/cmux` (will update when repo renamed) - **Docs domain**: Kept as `cmux.io` (unchanged for now) ### Storage Keys (with migration) - `mux_telemetry_enabled` (auto-migrates from `cmux_telemetry_enabled`) - `mux_first_launch_complete` (auto-migrates from `cmux_first_launch_complete`) - Both check legacy keys and migrate on first access ### Benchmarks Renamed files using `git mv` to preserve history: - `cmux_agent.py → mux_agent.py` - `cmux_agent_test.py → mux_agent_test.py` - `cmux_payload.py → mux_payload.py` - `cmux-run.sh → mux-run.sh` - `cmux_setup.sh.j2 → mux_setup.sh.j2` Updated Python classes: `CmuxAgent → MuxAgent`, `CmuxPayload → MuxPayload` ### Documentation - Updated all markdown files in `docs/` - Updated `book.toml` title - GitHub Actions: `setup-cmux → setup-mux` - Updated workflow files ### Source Code - Function calls, comments, strings in ~112 files - UI strings: "Generated with cmux" → "Generated with mux" - Log messages, error strings, test assertions ## Migration Behavior **Upgrading users:** 1. `~/.cmux` automatically moved to `~/.mux` on first launch 2. Symlink `~/.cmux → ~/.mux` created for backward compatibility 3. localStorage keys migrated automatically 4. No data loss, no manual steps required **Fresh installs:** - Creates `~/.mux` directly (no migration needed) ## What Stays Unchanged - GitHub repository URLs (`github.com/coder/cmux`) - will update when repo renamed - Documentation domain (`cmux.io`) - keeping for now - VS Code extension - excluded from this PR (separate update later) ## Testing ✅ `make typecheck` passes - Need to verify: - Integration tests pass - App builds and starts correctly - Migration works for existing users _Generated with `mux`_
1 parent a810a93 commit c817e7d

File tree

117 files changed

+801
-747
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

117 files changed

+801
-747
lines changed

.github/actions/setup-cmux/action.yml renamed to .github/actions/setup-mux/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: "Setup Cmux"
1+
name: "Setup Mux"
22
description: "Setup Bun and install dependencies with caching"
33
inputs:
44
install-imagemagick:

.github/workflows/build.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
with:
1717
fetch-depth: 0 # Required for git describe to find tags
1818

19-
- uses: ./.github/actions/setup-cmux
19+
- uses: ./.github/actions/setup-mux
2020
with:
2121
install-imagemagick: true
2222

@@ -72,7 +72,7 @@ jobs:
7272
with:
7373
fetch-depth: 0 # Required for git describe to find tags
7474

75-
- uses: ./.github/actions/setup-cmux
75+
- uses: ./.github/actions/setup-mux
7676
with:
7777
install-imagemagick: true
7878

@@ -99,7 +99,7 @@ jobs:
9999
with:
100100
fetch-depth: 0 # Required for git describe to find tags
101101

102-
- uses: ./.github/actions/setup-cmux
102+
- uses: ./.github/actions/setup-mux
103103

104104
- uses: ./.github/actions/build-vscode-extension
105105

.github/workflows/chromatic.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
with:
2020
fetch-depth: 0 # Required for Chromatic to track changes
2121

22-
- uses: ./.github/actions/setup-cmux
22+
- uses: ./.github/actions/setup-mux
2323

2424
- name: Generate version file
2525
run: ./scripts/generate-version.sh

.github/workflows/ci.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
with:
2828
fetch-depth: 0 # Required for git describe to find tags
2929

30-
- uses: ./.github/actions/setup-cmux
30+
- uses: ./.github/actions/setup-mux
3131

3232
- name: Generate version file
3333
run: ./scripts/generate-version.sh
@@ -76,7 +76,7 @@ jobs:
7676
with:
7777
fetch-depth: 0 # Required for git describe to find tags
7878

79-
- uses: ./.github/actions/setup-cmux
79+
- uses: ./.github/actions/setup-mux
8080

8181
- name: Build worker files
8282
run: make build-main
@@ -101,7 +101,7 @@ jobs:
101101
with:
102102
fetch-depth: 0 # Required for git describe to find tags
103103

104-
- uses: ./.github/actions/setup-cmux
104+
- uses: ./.github/actions/setup-mux
105105

106106
- name: Check if Ollama is pre-installed
107107
id: check-ollama
@@ -157,7 +157,7 @@ jobs:
157157
with:
158158
fetch-depth: 0 # Required for git describe to find tags
159159

160-
- uses: ./.github/actions/setup-cmux
160+
- uses: ./.github/actions/setup-mux
161161

162162
- name: Install Playwright browsers
163163
run: bun x playwright install --with-deps
@@ -183,7 +183,7 @@ jobs:
183183
with:
184184
fetch-depth: 0 # Required for git describe to find tags
185185

186-
- uses: ./.github/actions/setup-cmux
186+
- uses: ./.github/actions/setup-mux
187187

188188
- name: Install system dependencies
189189
run: |

.github/workflows/publish-npm.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
with:
2323
fetch-depth: 0 # Required for git describe to find tags
2424

25-
- uses: ./.github/actions/setup-cmux
25+
- uses: ./.github/actions/setup-mux
2626
with:
2727
install-imagemagick: "true"
2828

.github/workflows/release.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
with:
1818
fetch-depth: 0 # Required for git describe to find tags
1919

20-
- uses: ./.github/actions/setup-cmux
20+
- uses: ./.github/actions/setup-mux
2121
with:
2222
install-imagemagick: true
2323

@@ -47,7 +47,7 @@ jobs:
4747
with:
4848
fetch-depth: 0 # Required for git describe to find tags
4949

50-
- uses: ./.github/actions/setup-cmux
50+
- uses: ./.github/actions/setup-mux
5151
with:
5252
install-imagemagick: true
5353

@@ -68,7 +68,7 @@ jobs:
6868
with:
6969
fetch-depth: 0 # Required for git describe to find tags
7070

71-
- uses: ./.github/actions/setup-cmux
71+
- uses: ./.github/actions/setup-mux
7272

7373
- uses: ./.github/actions/build-vscode-extension
7474

.github/workflows/terminal-bench.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ jobs:
8787
with:
8888
fetch-depth: 0 # Required for git describe to find tags
8989

90-
- uses: ./.github/actions/setup-cmux
90+
- uses: ./.github/actions/setup-mux
9191

9292
- name: Install uv
9393
run: curl -LsSf https://astral.sh/uv/install.sh | sh

Makefile

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Build System
22
# ============
3-
# This Makefile orchestrates the cmux build process.
3+
# This Makefile orchestrates the mux build process.
44
#
55
# Quick Start:
66
# make help - Show all available targets
@@ -110,7 +110,7 @@ dev-server: node_modules/.installed build-main ## Start server mode with hot rel
110110
@bun x concurrently -k \
111111
"bun x concurrently \"$(TSGO) -w -p tsconfig.main.json\" \"bun x tsc-alias -w -p tsconfig.main.json\"" \
112112
"bun x nodemon --watch dist/main.js --watch dist/main-server.js --delay 500ms --exec 'NODE_ENV=development node dist/main.js server --host $(or $(BACKEND_HOST),localhost) --port $(or $(BACKEND_PORT),3000)'" \
113-
"CMUX_VITE_HOST=$(or $(VITE_HOST),127.0.0.1) CMUX_VITE_PORT=$(or $(VITE_PORT),5173) VITE_BACKEND_URL=http://$(or $(BACKEND_HOST),localhost):$(or $(BACKEND_PORT),3000) vite"
113+
"MUX_VITE_HOST=$(or $(VITE_HOST),127.0.0.1) MUX_VITE_PORT=$(or $(VITE_PORT),5173) VITE_BACKEND_URL=http://$(or $(BACKEND_HOST),localhost):$(or $(BACKEND_PORT),3000) vite"
114114

115115

116116

@@ -225,7 +225,7 @@ test-coverage: ## Run tests with coverage
225225

226226
test-e2e: ## Run end-to-end tests
227227
@$(MAKE) build
228-
@CMUX_E2E_LOAD_DIST=1 CMUX_E2E_SKIP_BUILD=1 PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 bun x playwright test --project=electron $(PLAYWRIGHT_ARGS)
228+
@MUX_E2E_LOAD_DIST=1 MUX_E2E_SKIP_BUILD=1 PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 bun x playwright test --project=electron $(PLAYWRIGHT_ARGS)
229229

230230
## Distribution
231231
dist: build ## Build distributable packages
@@ -308,7 +308,7 @@ chromatic: node_modules/.installed ## Run Chromatic for visual regression testin
308308
@bun x chromatic --exit-zero-on-changes
309309

310310
## Benchmarks
311-
benchmark-terminal: ## Run Terminal-Bench with the cmux agent (use TB_DATASET/TB_SAMPLE_SIZE/TB_TIMEOUT/TB_ARGS to customize)
311+
benchmark-terminal: ## Run Terminal-Bench with the mux agent (use TB_DATASET/TB_SAMPLE_SIZE/TB_TIMEOUT/TB_ARGS to customize)
312312
@TB_DATASET=$${TB_DATASET:-terminal-bench-core==0.1.1}; \
313313
TB_TIMEOUT=$${TB_TIMEOUT:-1800}; \
314314
CONCURRENCY_FLAG=$${TB_CONCURRENCY:+--n-concurrent $$TB_CONCURRENCY}; \
@@ -333,10 +333,10 @@ benchmark-terminal: ## Run Terminal-Bench with the cmux agent (use TB_DATASET/TB
333333
fi; \
334334
echo "Using timeout: $$TB_TIMEOUT seconds"; \
335335
echo "Running Terminal-Bench with dataset $$TB_DATASET"; \
336-
export CMUX_TIMEOUT_MS=$$((TB_TIMEOUT * 1000)); \
336+
export MUX_TIMEOUT_MS=$$((TB_TIMEOUT * 1000)); \
337337
uvx terminal-bench run \
338338
--dataset "$$TB_DATASET" \
339-
--agent-import-path benchmarks.terminal_bench.cmux_agent:CmuxAgent \
339+
--agent-import-path benchmarks.terminal_bench.mux_agent:CmuxAgent \
340340
--global-agent-timeout-sec $$TB_TIMEOUT \
341341
$$CONCURRENCY_FLAG \
342342
$$LIVESTREAM_FLAG \

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<div align="center">
22

3-
<img src="docs/img/logo.webp" alt="cmux logo" width="15%" />
3+
<img src="docs/img/logo.webp" alt="mux logo" width="15%" />
44

5-
# cmux - coding agent multiplexer
5+
# mux - coding agent multiplexer
66

77
[![CI](https://github.com/coder/cmux/actions/workflows/ci.yml/badge.svg)](https://github.com/coder/cmux/actions/workflows/ci.yml)
88
[![Build](https://github.com/coder/cmux/actions/workflows/build.yml/badge.svg?event=merge_group)](https://github.com/coder/cmux/actions/workflows/build.yml?query=event:merge_group)
@@ -11,7 +11,7 @@
1111

1212
</div>
1313

14-
![cmux product screenshot](docs/img/product-hero.webp)
14+
![mux product screenshot](docs/img/product-hero.webp)
1515

1616
A desktop application for parallel agentic development.
1717

@@ -27,7 +27,7 @@ Here are some specific use cases we enable:
2727
- The stream will automatically resume after restarts or intermittent connection issues. If the model completes early we will show an indicator.
2828
- **A/B testing**: run multiple workspaces in parallel on the same problem but different approaches,
2929
abandon the bad ones.
30-
- **Tangent exploration**: launch tangents in `cmux` away from main work
30+
- **Tangent exploration**: launch tangents in `mux` away from main work
3131

3232
</details>
3333

@@ -39,11 +39,11 @@ Here are some specific use cases we enable:
3939
- **Multi-model** (`sonnet-4-*`, `gpt-5-*`, `opus-4-*`)
4040
- Ollama supported for local LLMs ([docs](https://cmux.io/models.html#ollama-local))
4141
- OpenRouter supported for long-tail of LLMs ([docs](https://cmux.io/models.html#openrouter-cloud))
42-
- **VS Code Extension**: Jump into cmux workspaces directly from VS Code ([docs](https://cmux.io/vscode-extension.html))
42+
- **VS Code Extension**: Jump into mux workspaces directly from VS Code ([docs](https://cmux.io/vscode-extension.html))
4343
- Supporting UI and keybinds for efficiently managing a suite of agents
4444
- Rich markdown outputs (mermaid diagrams, LaTeX, etc.)
4545

46-
cmux has a custom agent loop but much of the core UX is inspired by Claude Code. You'll find familiar features like Plan/Exec mode, vim inputs, `/compact` and new ones
46+
mux has a custom agent loop but much of the core UX is inspired by Claude Code. You'll find familiar features like Plan/Exec mode, vim inputs, `/compact` and new ones
4747
like [opportunistic compaction](https://cmux.io/context-management.html) and [mode prompts](https://cmux.io/instruction-files.html#mode-prompts).
4848

4949
**[Read the full documentation →](https://cmux.io)**

benchmarks/terminal_bench/cmux-run.sh

Lines changed: 0 additions & 100 deletions
This file was deleted.

0 commit comments

Comments
 (0)