Getting Started
Get up and running with devmux in just a few minutes.
Prerequisites
Section titled “Prerequisites”- Node.js 18+
- tmux installed on your system
brew install tmux# Debian/Ubuntusudo apt install tmux
# Fedorasudo dnf install tmux
# Archsudo pacman -S tmuxsudo apt install tmuxInstallation
Section titled “Installation”pnpm add -D @chriscode/devmuxnpm install -D @chriscode/devmuxyarn add -D @chriscode/devmuxOr run directly with npx:
npx @chriscode/devmux status-
Initialize configuration
If you’re using Turborepo, devmux can auto-discover your services:
Terminal window npx devmux discover turboThis creates a
devmux.config.jsonbased on yourturbo.jsontasks.Alternatively, create the config manually:
Terminal window npx devmux init -
Configure your services
Edit
devmux.config.jsonin your project root:{"project": "myapp","services": {"api": {"command": "pnpm dev","cwd": "./api","port": 8787},"web": {"command": "pnpm dev","cwd": "./web","port": 3000}}} -
Start a service
Terminal window npx devmux ensure apiThis:
- Creates a tmux session named
omo-myapp-api - Runs
pnpm devin the./apidirectory - Waits for port 8787 to be ready
- Creates a tmux session named
-
Check status
Terminal window npx devmux statusOutput:
Service Status Port Sessionapi running 8787 omo-myapp-apiweb stopped 3000 - -
View logs
Terminal window npx devmux attach apiPress
Ctrl+BthenDto detach without stopping the service.
Add npm Scripts
Section titled “Add npm Scripts”Add these to your package.json for convenience:
{ "scripts": { "svc:status": "devmux status", "svc:ensure": "devmux ensure", "svc:stop": "devmux stop", "svc:attach": "devmux attach" }}Now you can run:
pnpm svc:ensure apipnpm svc:statusNext Steps
Section titled “Next Steps”- Learn about Configuration options
- Set up AI Agent Integration for Claude Code / OpenCode
- Explore Turbo.json Discovery for automatic setup
- See the full Command Reference