설정

imux는 Ghostty 설정 파일에서 구성을 읽어오므로, Ghostty에서 이전하는 경우 익숙한 옵션을 사용할 수 있습니다.

Config File Locations

imux는 다음 위치에서 설정을 순서대로 찾습니다:

  • ~/.icc/Per-user imux data directory. Stores session snapshots, logs, and internal state.
  • ~/.config/ghostty/configGhostty config file for terminal font, theme, colors, split styling, scrollback, and working directory settings.
  • Xcode build settings (Info.plist, entitlements)Build-time configuration for bundle identity, capabilities, and signing.

UserDefaults Keys

imux uses UserDefaults for persistent app settings. Key prefixes follow domain-based patterns:

  • Appearance keys use prefixes like theme_, font_, and opacity_ for visual preferences.
  • Automation keys control socket access mode (ICC_SOCKET_MODE) and related security settings.
  • Workspace keys store sidebar visibility, pane sizes, and window frame persistence.
  • Defaults can be set via the defaults command-line tool or through the in-app Settings panel.

Appearance Settings

Customize how imux looks and feels:

  • ThemeChoose between System (follows macOS), Light, or Dark mode. Configured in Settings > Appearance or via the Ghostty config file.
  • Font SizeSet the terminal font family and size in the Ghostty config file. Adjust in real-time with Cmd+Plus and Cmd+Minus.
  • OpacityControl window and split pane transparency. Unfocused split opacity is configurable separately from the main window.

Shell Settings

Configure the shell environment for new terminal surfaces:

  • Default ShellSet your preferred shell (zsh, bash, fish, etc.). imux respects your macOS user shell by default.
  • Shell ArgumentsPass custom arguments to the shell on startup, such as login flags or command execution.
  • Working DirectorySet the default directory for new terminal surfaces. Can be a fixed path or a dynamic value like the current project root.

Notification Settings

Control which events trigger desktop notifications:

  • Agent completion: notify when a long-running AI agent finishes a task.
  • Command completion: notify after shell commands that exceed a configurable duration threshold.
  • CI/build events: notify on build success, failure, or test completion from sidebar status entries.
  • Suppression: desktop alerts are suppressed when imux is focused, the active workspace matches, or the notification panel is open.

Keyboard Shortcut Customization

Customize keyboard shortcuts via macOS UserDefaults:

# Set a custom shortcut via defaults write
defaults write com.icc.icc NSUserKeyEquivalents -dict-add "New Workspace" "@t"
For the full list of default shortcuts, see the Keyboard Shortcuts page.

Session Persistence Settings

Control how imux saves and restores workspace state:

  • Autosave cadence: configure how often session snapshots are written (default: on workspace change and app deactivation).
  • Snapshot limits: set maximum windows, workspaces, panels, layout depth, and scrollback lines per snapshot.
  • Maximum snapshot bytes: cap the total size of session data to prevent unbounded growth.
  • Automated test disablement: session restore is automatically disabled during XCTest runs to avoid state interference.

Remote Connection Defaults

Default settings for SSH-based remote workspaces:

  • Default SSH port and identity file, read from your OpenSSH config.
  • Auto-reconnect behavior: enable or disable automatic reconnection on network drops.
  • Remote helper manifest URL: where imux fetches the iccd-remote binary for deployment to remote hosts.
Ghostty config changes take effect on the next terminal surface. App Settings changes (via Cmd+,) apply immediately.