Series: Cmux (5/7)

Complete CMUX Configuration Guide: Fonts, Colors, Scrollback, and Split Panes
Configuration is usually the thing you look up when you get stuck somewhere. But because CMUX inherits its config from Ghostty, if you haven't used Ghostty before, you might not know which file to even look for. This article covers everything in one place.
Where Is the Config File
CMUX looks for the config file in two locations, in this order:
~/.config/ghostty/config
~/Library/Application Support/com.mitchellh.ghostty/config
The first path is recommended — it's more intuitive and easier to version-control.
If your config file doesn't exist yet, create it:
mkdir -p ~/.config/ghostty
touch ~/.config/ghostty/configOpen this file with your preferred editor and write all your settings there.
Appearance Settings
Font
font-family = JetBrains Mono
font-size = 14
Set font-family to the name of a font installed on your system. If it's not found, CMUX falls back to the default. For code, JetBrains Mono or Fira Code are popular choices — pick what you like.
Colors and Themes
You can use a preset theme, or specify each color manually:
# Use a built-in theme
theme = Dracula
# Or customize each value
background = #1e1e2e
foreground = #cdd6f4
cursor-color = #f5e0dc
cursor-text = #1e1e2e
selection-background = #585b70
selection-foreground = #cdd6f4
Choose one approach — don't set both simultaneously. If you have a preference for Catppuccin, One Dark, Nord, or similar themes, just fill in the theme name and you're done.
Split Pane Appearance
With multiple panes, dimming unfocused panes slightly helps the active workspace stand out visually:
# Opacity of unfocused panes (0.0 = fully transparent, 1.0 = fully opaque)
unfocused-split-opacity = 0.7
# Fill color for unfocused panes
unfocused-split-fill = #1e1e2e
# Pane divider color
split-divider-color = #45475a
unfocused-split-opacity = 0.85 is a commonly used middle ground — dim enough to distinguish focus, clear enough to still read the neighboring pane's output.
Behavior Settings
Scrollback Buffer Size
scrollback-limit = 10000
AI agents can produce a lot of output. If you want to scroll back through long logs, this value needs to be high enough. The default may not be sufficient — 50000 to 100000 is a safer range.
Default Working Directory
working-directory = ~/Projects
Newly opened workspaces and panes start from this directory. Setting it to your project root is a convenient default.
In-App Settings
Some options are configured inside the CMUX application, not in the config file:
Menu bar → cmux > Preferences (⌘,), where you'll find:
Theme mode: System (follows macOS), Light, or Dark — pick one.
Automation mode (important): Controls the socket API access level:
- Disabled: Socket not exposed, most secure — appropriate for shared machines
- cmux processes only: Only processes launched inside a CMUX terminal can connect — this is the most common choice
- allowAll: Any local process can connect — suitable for personal machines with heavy automation
For personal development machines, "cmux processes only" is the standard choice. Only consider allowAll for CI environments or script-heavy setups.
Browser link behavior: Under Preferences > Browser, you can configure two lists:
- Hosts to open in built-in browser: When you click a link from terminal output, which hosts should open in CMUX's built-in browser
- Hosts allowed over HTTP: Which HTTP (non-HTTPS) hosts can open in the built-in browser —
localhostand127.0.0.1are included by default
Complete Configuration Example
Copy this directly and adjust as needed:
# ~/.config/ghostty/config
# Font
font-family = SF Mono
font-size = 13
# Theme
theme = One Dark
# Scrollback
scrollback-limit = 50000
# Split panes
unfocused-split-opacity = 0.85
split-divider-color = #3e4451
# Working directory
working-directory = ~/code
Save the file and restart CMUX for changes to take effect.
With appearance sorted, the next article covers the most time-saving feature — wrapping your startup process into a single command: Custom Commands: Let CMUX Remember Your Workflow.