設定
cmuxはターミナル設定をGhosttyの設定ファイルから読み込みます。cmux管理のアプリ設定も ~/.config/cmux/cmux.json で管理でき、ショートカット、自動化、サイドバー、通知、ブラウザ設定を含みます。
設定ファイルの場所
cmuxは以下の場所から設定を検索します(順番に):
~/.config/ghostty/config~/Library/Application Support/com.mitchellh.ghostty/config
設定ファイルが存在しない場合は作成してください:
mkdir -p ~/.config/ghostty
touch ~/.config/ghostty/config設定例
font-family = SF Mono
font-size = 13
theme = One Dark
scrollback-limit = 50000000
split-divider-color = #3e4451
working-directory = ~/codecmux.json
cmux keeps app-owned settings, shortcuts, actions, custom commands, and workspace layouts in ~/.config/cmux/cmux.json. Terminal rendering still lives in Ghostty config. On launch, if the file is missing, cmux writes a commented template there.
Open cmux Settings, then use the cmux.json section to open the canonical file in your preferred text editor.
~/.config/cmux/cmux.json.cmux/cmux.jsonin a project for project-scoped actions and workspace commands
~/.config/cmux/cmux.json settings override values saved in the Settings window. Legacy ~/.config/cmux/settings.json and Application Support settings files are read only as fallback for missing settings keys. Project-local .cmux/cmux.json can override actions, commands, and UI action wiring, but not global app preferences.Cmd+Shift+, or cmux reload-config to re-read it without restarting the app.schemaVersion at 1 for now. Future cmux versions will use that field for upgrades. If cmux sees a newer schema version, it logs a warning and parses known keys only.The file accepts JSON with comments and trailing commas. The canonical schema is published at https://raw.githubusercontent.com/manaflow-ai/cmux/main/web/data/cmux.schema.json and the source lives at https://github.com/manaflow-ai/cmux/blob/main/web/data/cmux.schema.json.
{
"$schema": "https://raw.githubusercontent.com/manaflow-ai/cmux/main/web/data/cmux.schema.json",
"schemaVersion": 1,
// "app": {
// "appearance": "dark",
// "menuBarOnly": false,
// "newWorkspacePlacement": "afterCurrent",
// "iMessageMode": true
// },
// "terminal": {
// "showScrollBar": false,
// "autoResumeAgentSessions": true
// },
// "browser": {
// "openTerminalLinksInCmuxBrowser": true,
// "hostsToOpenInEmbeddedBrowser": ["localhost", "*.internal.example"]
// },
// "workspaceColors": {
// "colors": {
// "Red": "#C0392B",
// "Blue": "#1565C0",
// "Neon Mint": "#00F5D4"
// }
// },
// "shortcuts": {
// "bindings": {
// "toggleSidebar": "cmd+b",
// "newTab": ["ctrl+b", "c"],
// "commandPalettePrevious": null
// }
// },
}Schema reference
This reference covers every supported global settings key in cmux.json. The embedded browser, terminal, sidebar, notifications, automation, and cmux-owned keyboard shortcuts all live here. Actions and workspace commands are documented on the custom commands page.
Metadata
$schemaOptional schema URL for editor completion and validation.
- Type
string- Default
"https://raw.githubusercontent.com/manaflow-ai/cmux/main/web/data/cmux.schema.json"
schemaVersionSchema version for forward-compatible migrations. Newer versions are parsed on a best-effort basis.
- Type
integer- Default
1
app
General app preferences from Settings > App.
app.languagePreferred app language.
- Type
string- Default
"system"- Allowed values
system, en, ar, bs, zh-Hans, zh-Hant, da, de, es, fr, it, ja, ko, nb, pl, pt-BR, ru, th, tr
app.appearanceApp appearance mode.
- Type
string- Default
"system"- Allowed values
system, light, dark
app.appIconDock and app switcher icon style.
- Type
string- Default
"automatic"- Allowed values
automatic, light, dark
app.menuBarOnlyHide the Dock icon and app switcher entry while keeping cmux available from the menu bar.
- Type
boolean- Default
false
app.newWorkspacePlacementWhere new workspaces are inserted in the sidebar.
- Type
string- Default
"afterCurrent"- Allowed values
top, afterCurrent, end
app.minimalModeHide the workspace title bar and move controls into the sidebar.
- Type
boolean- Default
false
app.keepWorkspaceOpenWhenClosingLastSurfaceWhen true, closing the last surface keeps the workspace open.
- Type
boolean- Default
false
app.focusPaneOnFirstClickWhen cmux is inactive, the first click can activate and focus the clicked pane.
- Type
boolean- Default
true
app.preferredEditorCustom editor command used by cmux where applicable. Leave empty to use the default.
- Type
string- Default
""
app.openMarkdownInCmuxViewerWhen enabled, Cmd-clicking .md/.markdown/.mkd/.mdx files in the terminal opens them in the cmux markdown viewer panel (with live reload) instead of the preferred editor.
- Type
boolean- Default
false
app.reorderOnNotificationMove workspaces with new notifications toward the top.
- Type
boolean- Default
true
app.iMessageModeMove a workspace to the top and show the submitted message when sending an agent prompt.
- Type
boolean- Default
false
app.sendAnonymousTelemetryAllow anonymous telemetry.
- Type
boolean- Default
true
app.warnBeforeQuitShow a confirmation before quitting cmux.
- Type
boolean- Default
true
app.renameSelectsExistingNameSelect the current name when opening rename flows.
- Type
boolean- Default
true
app.commandPaletteSearchesAllSurfacesSearch every surface in the command palette switcher instead of only the active workspace.
- Type
boolean- Default
false
terminal
Terminal presentation settings from Settings > Terminal.
terminal.showScrollBarShow the right-edge terminal scroll bar when scrollback is available. cmux automatically suppresses it for alternate-screen style TUI surfaces.
- Type
boolean- Default
true
terminal.autoResumeAgentSessionsAutomatically run agent resume commands for restored terminal sessions when cmux reopens after quit.
- Type
boolean- Default
true
notifications
Notification behavior from Settings > Notifications.
notifications.dockBadgeShow the unread count in the Dock tile.
- Type
boolean- Default
true
notifications.showInMenuBarShow the menu bar extra.
- Type
boolean- Default
true
notifications.unreadPaneRingHighlight panes with unread notifications.
- Type
boolean- Default
true
notifications.paneFlashFlash the focused pane when requested.
- Type
boolean- Default
true
notifications.soundNotification sound preset.
- Type
string- Default
"default"- Allowed values
default, Basso, Blow, Bottle, Frog, Funk, Glass, Hero, Morse, Ping, Pop, Purr, Sosumi, Submarine, Tink, custom_file, none
notifications.customSoundFilePathLocal path to the custom notification sound file.
- Type
string- Default
""
notifications.commandOptional shell command to run alongside notification delivery.
- Type
string- Default
""
sidebar
Sidebar content and metadata visibility from Settings > Sidebar.
sidebar.hideAllDetailsHide all per-workspace detail rows.
- Type
boolean- Default
false
sidebar.branchLayoutShow git branch details stacked vertically or inline.
- Type
string- Default
"vertical"- Allowed values
vertical, inline
sidebar.showNotificationMessageShow the latest notification text in the sidebar.
- Type
boolean- Default
true
sidebar.showBranchDirectoryShow the workspace working directory.
- Type
boolean- Default
true
sidebar.showPullRequestsShow pull request metadata in the sidebar.
- Type
boolean- Default
true
sidebar.makePullRequestsClickableAllow sidebar pull request metadata to open links when clicked.
- Type
boolean- Default
true
sidebar.openPullRequestLinksInCmuxBrowserOpen sidebar pull request links in the embedded cmux browser.
- Type
boolean- Default
true
sidebar.openPortLinksInCmuxBrowserOpen sidebar port links in the embedded cmux browser.
- Type
boolean- Default
true
sidebar.showSSHShow SSH connection details.
- Type
boolean- Default
true
sidebar.showPortsShow listening ports.
- Type
boolean- Default
true
sidebar.showLogShow recent log snippets.
- Type
boolean- Default
true
sidebar.showProgressShow progress indicators.
- Type
boolean- Default
true
sidebar.showCustomMetadataShow custom metadata pills.
- Type
boolean- Default
true
workspaceColors
Workspace tab and badge colors from Settings > Workspace Colors.
workspaceColors.indicatorStyleActive workspace indicator style. Legacy aliases are accepted and normalized.
- Type
string- Default
"leftRail"- Allowed values
leftRail, solidFill, rail, border, wash, lift, typography, washRail, blueWashColorRail
workspaceColors.selectionColorOverride the selected workspace background color.
- Type
unknown- Default
null
workspaceColors.notificationBadgeColorOverride the unread notification badge color.
- Type
unknown- Default
null
workspaceColors.colorsFull named workspace color palette. Include built-in entries you want to keep, remove keys to remove colors, and add more named entries to extend the picker.
- Type
object- Default
{ "Red": "#C0392B", "Crimson": "#922B21", "Orange": "#A04000", "Amber": "#7D6608", "Olive": "#4A5C18", "Green": "#196F3D", "Teal": "#006B6B", "Aqua": "#0E6B8C", "Blue": "#1565C0", "Navy": "#1A5276", "Indigo": "#283593", "Purple": "#6A1B9A", "Magenta": "#AD1457", "Rose": "#880E4F", "Brown": "#7B3F00", "Charcoal": "#3E4B5E" }
workspaceColors.paletteOverridesLegacy workspace color overrides for built-in palette names. Prefer workspaceColors.colors for new configs.
- Type
object- Default
{}
workspaceColors.customColorsLegacy list of custom workspace colors. Prefer workspaceColors.colors for new configs.
- Type
array<unknown>- Default
[]
workspaceColors.colors is the full palette. Keep the built-in keys you want, delete keys to remove colors from the picker, and add more named color entries to extend it. Older paletteOverrides and customColors files still parse during upgrades, but new files should use colors.
{
"workspaceColors": {
"colors": {
"Red": "#C0392B",
"Blue": "#1565C0",
"Neon Mint": "#00F5D4"
}
}
}sidebarAppearance
Sidebar tint settings from Settings > Sidebar Appearance.
sidebarAppearance.matchTerminalBackgroundUse the terminal background instead of the sidebar tint.
- Type
boolean- Default
false
sidebarAppearance.tintColorBase sidebar tint color used when light/dark overrides are not set.
- Type
unknown- Default
"#000000"
sidebarAppearance.lightModeTintColorSidebar tint override for light appearance.
- Type
unknown- Default
null
sidebarAppearance.darkModeTintColorSidebar tint override for dark appearance.
- Type
unknown- Default
null
sidebarAppearance.tintOpacitySidebar tint opacity from 0 to 1.
- Type
number- Default
0.03
automation
Socket control and automation settings from Settings > Automation.
automation.socketControlModeSocket control mode. Legacy aliases are accepted and normalized.
- Type
string- Default
"cmuxOnly"- Allowed values
off, cmuxOnly, automation, password, allowAll, openAccess, fullOpenAccess, notifications, full
automation.socketPasswordPassword for password-mode socket access. Use null or an empty string to clear it.
- Type
string | null- Default
""
automation.claudeCodeIntegrationEnable cmux integration hooks for Claude Code.
- Type
boolean- Default
true
automation.claudeBinaryPathCustom path to the claude binary.
- Type
string- Default
""
automation.cursorIntegrationEnable cmux integration hooks for Cursor.
- Type
boolean- Default
true
automation.geminiIntegrationEnable cmux integration hooks for Gemini.
- Type
boolean- Default
true
automation.portBaseStarting value for workspace CMUX_PORT assignments.
- Type
integer- Default
9100
automation.portRangeNumber of ports reserved per workspace.
- Type
integer- Default
10
browser
Embedded browser settings from Settings > Browser.
browser.defaultSearchEngineDefault search engine for non-URL queries.
- Type
string- Default
"google"- Allowed values
google, duckduckgo, bing, kagi, startpage
browser.showSearchSuggestionsShow omnibar search suggestions.
- Type
boolean- Default
true
browser.themeEmbedded browser theme.
- Type
string- Default
"system"- Allowed values
system, light, dark
browser.openTerminalLinksInCmuxBrowserOpen clicked terminal links in the embedded browser.
- Type
boolean- Default
true
browser.interceptTerminalOpenCommandInCmuxBrowserIntercept terminal open http(s) commands and route them through the embedded browser.
- Type
boolean- Default
true
browser.hostsToOpenInEmbeddedBrowserAllowlist of hosts that should stay inside the embedded browser.
- Type
array<string>- Default
[]
browser.urlsToAlwaysOpenExternallyRules that always open matching URLs in the system browser.
- Type
array<string>- Default
[]
browser.insecureHttpHostsAllowedInEmbeddedBrowserHTTP hosts allowed in the embedded browser without a warning prompt.
- Type
array<string>- Default
[ "localhost", "*.localhost", "127.0.0.1", "::1", "0.0.0.0", "*.localtest.me" ]
browser.showImportHintOnBlankTabsShow the browser import hint on blank tabs.
- Type
boolean- Default
true
browser.reactGrabVersionPinned react-grab version for the browser toolbar helper.
- Type
string- Default
"0.1.29"
shortcuts
Keyboard shortcut settings from Settings > Keyboard Shortcuts.
shortcuts.showModifierHoldHintsShow shortcut hint pills while holding Cmd or Ctrl.
- Type
boolean- Default
true
shortcuts.bindings
Use a string for a single shortcut, a two-item array for a chord, or null to unbind a shortcut in shortcuts.bindings. Unbind aliases also include empty string (""), none, clear, unbound, and disabled. Example chord: ["ctrl+b", "c"]. Numbered actions use 1 as the stored default and still match digits 1 through 9.
The defaults below are the same cmux-owned actions listed on the keyboard shortcuts page.
アプリ
openSettings設定
cmd+,reloadConfiguration構成を再読み込み
cmd+shift+,showHideAllWindowsすべてのcmuxウインドウを表示/非表示システム全体のホットキー
ctrl+opt+cmd+.commandPaletteコマンドパレット
cmd+shift+pcommandPaletteNextコマンドパレットの次の結果コマンドパレットを開いている間
ctrl+ncommandPalettePreviousコマンドパレットの前の結果コマンドパレットを開いている間
ctrl+pnewWindow新規ウインドウ
cmd+shift+ncloseWindowウインドウを閉じる
ctrl+cmd+wtoggleFullScreenフルスクリーンを切り替え
ctrl+cmd+fsendFeedbackフィードバックを送信
opt+cmd+freopenPreviousSession前回のセッションを再度開く
cmd+shift+oquitcmuxを終了
cmd+qワークスペース
toggleSidebarサイドバーを切り替え
cmd+bnewTab新規ワークスペース
cmd+nopenFolderフォルダを開く
cmd+ogoToWorkspaceワークスペースへ移動ワークスペーススイッチャー
cmd+pnextSidebarTab次のワークスペース
ctrl+cmd+]prevSidebarTab前のワークスペース
ctrl+cmd+[selectWorkspaceByNumberワークスペース1…9を選択
cmd+1renameWorkspaceワークスペース名を変更
cmd+shift+reditWorkspaceDescriptionワークスペースの説明を編集
opt+cmd+efocusRightSidebar右サイドバーを切り替え
opt+cmd+btoggleFileExplorerファイルエクスプローラを開く
cmd+shift+enavigateRightSidebarRowsフォーカス中のサイドバー行を移動ファイルでは H/L でフォルダを折りたたみ/展開します。検索は / で開始します。
j / kcloseWorkspaceワークスペースを閉じる
cmd+shift+wサーフェス
newSurface新規サーフェス
cmd+tnextSurface次のサーフェス
cmd+shift+]prevSurface前のサーフェス
cmd+shift+[selectSurfaceByNumberサーフェス1…9を選択
ctrl+1renameTabタブ名を変更
cmd+rcloseTabタブを閉じる
cmd+wcloseOtherTabsInPaneペイン内の他のタブを閉じる
opt+cmd+treopenClosedBrowserPanel閉じたブラウザパネルを再度開く
cmd+shift+ttoggleTerminalCopyModeターミナルコピーモードを切り替え
cmd+shift+msaveFilePreviewファイルプレビューを保存フォーカス中のテキストプレビュー
cmd+s分割ペイン
focusLeft左のペインにフォーカス
opt+cmd+leftfocusRight右のペインにフォーカス
opt+cmd+rightfocusUp上のペインにフォーカス
opt+cmd+upfocusDown下のペインにフォーカス
opt+cmd+downsplitRight右に分割
cmd+dsplitDown下に分割
cmd+shift+dsplitBrowserRight右にブラウザ分割
opt+cmd+dsplitBrowserDown下にブラウザ分割
opt+cmd+shift+dtoggleSplitZoomペインズームを切り替え
cmd+shift+enterequalizeSplits分割サイズを均等にする
ctrl+cmd+=ブラウザ
openBrowserブラウザを開く
cmd+shift+lfocusBrowserAddressBarアドレスバーにフォーカス
cmd+lbrowserBack戻る
cmd+[browserForward進む
cmd+]browserReloadページを再読み込みフォーカス中のブラウザ
cmd+rbrowserZoomIn拡大
cmd+=browserZoomOut縮小
cmd+-browserZoomReset実寸表示
cmd+0toggleBrowserDeveloperToolsブラウザ開発者ツールを切り替え
opt+cmd+ishowBrowserJavaScriptConsoleブラウザJavaScriptコンソールを表示
opt+cmd+ctoggleReactGrabReact Grabを切り替えフォーカス中のブラウザ、またはターミナルにフォーカスがあるときは唯一のブラウザペイン
cmd+shift+g検索
find検索
cmd+ffindInDirectoryディレクトリ内を検索
cmd+shift+ffindNext次を検索
cmd+gfindPrevious前を検索
opt+cmd+ghideFind検索バーを隠す
opt+cmd+shift+fuseSelectionForFind選択範囲で検索
cmd+e通知
showNotifications通知を表示
cmd+ijumpToUnread最新の未読へ移動
cmd+shift+utriggerFlashフォーカス中のパネルをフラッシュ
cmd+shift+h