cmux/docs-site/content/docs/configuration.mdx
Lawrence Chen f36525f5f1 Add documentation site and Homebrew installation
- Add Fumadocs-based docs site (docs-site/)
- Document all features: tabs, notifications, splits, socket API, CLI
- Add Claude Code hooks guide with cmuxterm detection
- Update README with native macOS emphasis and brew install
- Add homebrew-cmuxterm to .gitignore (has its own repo)
2026-01-29 04:41:39 -08:00

121 lines
2.1 KiB
Text

---
title: Configuration
description: Configure cmuxterm appearance and behavior
---
# Configuration
cmuxterm reads configuration from Ghostty config files, giving you familiar options if you're coming from Ghostty.
## Config File Locations
cmuxterm looks for configuration in these locations (in order):
1. `~/.config/ghostty/config`
2. `~/Library/Application Support/com.mitchellh.ghostty/config`
Create the config file if it doesn't exist:
```bash
mkdir -p ~/.config/ghostty
touch ~/.config/ghostty/config
```
## Appearance Options
### Font
```ini
font-family = JetBrains Mono
font-size = 14
```
### Colors
```ini
# Theme (or use individual colors below)
theme = Dracula
# Custom colors
background = #1e1e2e
foreground = #cdd6f4
cursor-color = #f5e0dc
cursor-text = #1e1e2e
selection-background = #585b70
selection-foreground = #cdd6f4
```
### Split Panes
```ini
# Opacity for unfocused splits (0.0 to 1.0)
unfocused-split-opacity = 0.7
# Fill color for unfocused splits
unfocused-split-fill = #1e1e2e
# Divider color between splits
split-divider-color = #45475a
```
## Behavior Options
### Scrollback
```ini
# Number of lines to keep in scrollback buffer
scrollback-limit = 10000
```
### Working Directory
```ini
# Default directory for new terminals
working-directory = ~/Projects
```
## App Settings
In-app settings are available via **cmuxterm → Settings** (⌘,):
### Theme Mode
Choose between:
- **System** - Follow macOS appearance
- **Light** - Always light mode
- **Dark** - Always dark mode
### Automation Mode
Control socket access level:
- **Off** - No socket control (most secure)
- **Notifications only** - Only allow notification commands
- **Full control** - Allow all socket commands
<Callout type="warn">
On shared machines, consider using "Notifications only" mode to prevent other processes from controlling your terminals.
</Callout>
## Example Config
Here's a complete example configuration:
```ini
# Font
font-family = SF Mono
font-size = 13
# Colors
theme = One Dark
# Scrollback
scrollback-limit = 50000
# Splits
unfocused-split-opacity = 0.85
split-divider-color = #3e4451
# Working directory
working-directory = ~/code
```