dev-desktop-sandbox

Run isolated Mux desktop Electron instances with unique temporary MUX_ROOT directories.

2.0k|126|Updated Sep 17, 2025
One-click install
npx skills add https://github.com/coder/mux --skill dev-desktop-sandbox-coder
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dev-desktop-sandbox
Source: https://github.com/coder/mux/tree/main/.mux/skills/dev-desktop-sandbox
Command: npx skills add https://github.com/coder/mux --skill dev-desktop-sandbox-coder

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Run isolated Mux desktop (Electron) instances in parallel by giving each a unique temporary MUX_ROOT to avoid conflicts during development.

Core Features & Use Cases

  • Creates a fresh temporary MUX_ROOT for each sandboxed instance
  • Optionally copies providers.jsonc and config.json into the sandbox
  • Automatically selects free ports for the Vite dev server and Electron remote debugging
  • Orchestrates the dev workflow by running make dev with MUX_ROOT, VITE port, and other envs, then builds and launches Electron
  • Supports parallel development across multiple git worktrees or separate sandboxes

Quick Start

Run make dev-desktop-sandbox to spin up a sandboxed Electron dev instance.

Frequently Asked Questions about dev-desktop-sandbox

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run multiple isolated Electron instances in parallel for development?

You can run parallel isolated Electron instances by allocating a unique temporary MUX_ROOT directory per session, preventing file and port contention across concurrent git worktrees.

Why do my parallel Electron dev sessions have port conflicts?

Parallel Electron dev sessions encounter port conflicts when sharing a single environment. This sandbox automatically discovers and assigns free ports for the Vite dev server and Electron remote debugging to eliminate contention.

What is the best way to develop Mux desktop across multiple git worktrees?

Developing Mux desktop across multiple git worktrees requires a sandboxed environment that creates a fresh temporary MUX_ROOT for each instance, isolating configuration files like providers.jsonc and config.json to avoid cross-worktree contention.

How do I start a sandboxed Electron instance with an isolated MUX_ROOT?

Start a sandboxed Electron instance with an isolated MUX_ROOT by running the make dev-desktop-sandbox command, which orchestrates environment variable setup, file copying, port discovery, and the Electron launch sequence automatically.

Does the sandbox copy existing configuration files into the new isolated environment?

Yes, the sandbox optionally copies existing providers.jsonc and config.json files into the newly created temporary MUX_ROOT directory to preserve your development configuration across isolated sessions.