Skip to content

komorebic (macOS)

This page contains a complete reference of all komorebic commands on macOS.

Adjust container padding on the focused workspace
Usage: adjust-container-padding <SIZING> <ADJUSTMENT>
Arguments:
<SIZING>
[possible values: increase, decrease]
<ADJUSTMENT>
Pixels to adjust by as an integer
Options:
-h, --help
Print help
Adjust workspace padding on the focused workspace
Usage: adjust-workspace-padding <SIZING> <ADJUSTMENT>
Arguments:
<SIZING>
[possible values: increase, decrease]
<ADJUSTMENT>
Pixels to adjust by as an integer
Options:
-h, --help
Print help
Set the duration for movement animations in ms
Usage: animation-duration [OPTIONS] <DURATION>
Arguments:
<DURATION>
Desired animation durations in ms
Options:
-a, --animation-type <ANIMATION_TYPE>
Animation type to apply the duration to. If not specified, sets global duration
[possible values: movement]
-h, --help
Print help
Set the frames per second for movement animations
Usage: animation-fps <FPS>
Arguments:
<FPS>
Desired animation frames per second
Options:
-h, --help
Print help
Set the ease function for movement animations
Usage: animation-style [OPTIONS]
Options:
-s, --style <STYLE>
Desired ease function for animation
Possible values:
- linear: Linear
- ease-in-sine: Ease in sine
- ease-out-sine: Ease out sine
- ease-in-out-sine: Ease in out sine
- ease-in-quad: Ease in quad
- ease-out-quad: Ease out quad
- ease-in-out-quad: Ease in out quad
- ease-in-cubic: Ease in cubic
- ease-out-cubic: Ease out cubic
- ease-in-out-cubic: Ease in out cubic
- ease-in-quart: Ease in quart
- ease-out-quart: Ease out quart
- ease-in-out-quart: Ease in out quart
- ease-in-quint: Ease in quint
- ease-out-quint: Ease out quint
- ease-in-out-quint: Ease in out quint
- ease-in-expo: Ease in expo
- ease-out-expo: Ease out expo
- ease-in-out-expo: Ease in out expo
- ease-in-circ: Ease in circ
- ease-out-circ: Ease out circ
- ease-in-out-circ: Ease in out circ
- ease-in-back: Ease in back
- ease-out-back: Ease out back
- ease-in-out-back: Ease in out back
- ease-in-elastic: Ease in elastic
- ease-out-elastic: Ease out elastic
- ease-in-out-elastic: Ease in out elastic
- ease-in-bounce: Ease in bounce
- ease-out-bounce: Ease out bounce
- ease-in-out-bounce: Ease in out bounce
[default: linear]
-a, --animation-type <ANIMATION_TYPE>
Animation type to apply the style to. If not specified, sets global style
[possible values: movement]
-h, --help
Print help (see a summary with '-h')
Enable or disable movement animations
Usage: animation [OPTIONS] <BOOLEAN_STATE>
Arguments:
<BOOLEAN_STATE>
[possible values: enable, disable]
Options:
-a, --animation-type <ANIMATION_TYPE>
Animation type to apply the state to. If not specified, sets global state
[possible values: movement]
-h, --help
Print help
Generate a JSON Schema for applications.json
Usage: application-specific-configuration-schema
Options:
-h, --help
Print help
Set the colour for a window border kind
Usage: border-colour [OPTIONS] <R> <G> <B>
Arguments:
<R>
Red
<G>
Green
<B>
Blue
Options:
-w, --window-kind <WINDOW_KIND>
[default: single]
[possible values: single, stack, monocle, unfocused, unfocused-locked, floating]
-h, --help
Print help
Set the border offset
Usage: border-offset <OFFSET>
Arguments:
<OFFSET>
Desired offset of the window border
Options:
-h, --help
Print help
Set the border width
Usage: border-width <WIDTH>
Arguments:
<WIDTH>
Desired width of the window border
Options:
-h, --help
Print help
Enable or disable borders
Usage: border <BOOLEAN_STATE>
Arguments:
<BOOLEAN_STATE>
[possible values: enable, disable]
Options:
-h, --help
Print help
Cancel a workspace preselect set by the preselect-direction command, if one exists
Usage: cancel-preselect
Options:
-h, --help
Print help
Set the layout on the focused workspace
Usage: change-layout <DEFAULT_LAYOUT>
Arguments:
<DEFAULT_LAYOUT>
Possible values:
- bsp: BSP Layout
- columns: Columns Layout
- rows: Rows Layout
- vertical-stack: Vertical Stack Layout
- horizontal-stack: Horizontal Stack Layout
- ultrawide-vertical-stack: Ultrawide Vertical Stack Layout
- grid: Grid Layout
- right-main-vertical-stack: Right Main Vertical Stack Layout
- scrolling: Scrolling Layout
Options:
-h, --help
Print help (see a summary with '-h')
Remove all application association rules for all workspaces
Usage: clear-all-workspace-rules
Options:
-h, --help
Print help
Clear all dynamic layout rules for the specified workspace
Usage: clear-named-workspace-layout-rules <WORKSPACE>
Arguments:
<WORKSPACE>
Target workspace name
Options:
-h, --help
Print help
Remove all application association rules for a named workspace
Usage: clear-named-workspace-rules <WORKSPACE>
Arguments:
<WORKSPACE>
Name of a workspace
Options:
-h, --help
Print help
Clear all session float rules
Usage: clear-session-float-rules
Options:
-h, --help
Print help
Clear all dynamic layout rules for the specified workspace
Usage: clear-workspace-layout-rules <MONITOR> <WORKSPACE>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
Options:
-h, --help
Print help
Remove all application association rules for a workspace by monitor and workspace index
Usage: clear-workspace-rules <MONITOR> <WORKSPACE>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
Options:
-h, --help
Print help
Close the focused workspace (must be empty and unnamed)
Usage: close-workspace
Options:
-h, --help
Print help
Close the focused window
Usage: close
Options:
-h, --help
Print help
Generate komorebic CLI completions for the target shell
Usage: completions <SHELL>
Arguments:
<SHELL>
[possible values: bash, elvish, fish, powershell, zsh]
Options:
-h, --help
Print help
Show the path to komorebi.json
Usage: configuration
Options:
-h, --help
Print help
Set the container padding for the specified workspace
Usage: container-padding <MONITOR> <WORKSPACE> <SIZE>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
<SIZE>
Pixels to pad with as an integer
Options:
-h, --help
Print help
Set the behaviour when moving windows across monitor boundaries
Usage: cross-monitor-move-behaviour <MOVE_BEHAVIOUR>
Arguments:
<MOVE_BEHAVIOUR>
Possible values:
- swap: Swap the window container with the window container at the edge of the adjacent monitor
- insert: Insert the window container into the focused workspace on the adjacent monitor
- no-op: Do nothing if trying to move a window container in the direction of an adjacent monitor
Options:
-h, --help
Print help (see a summary with '-h')
Focus the next empty workspace in the given cycle direction (if one exists)
Usage: cycle-empty-workspace <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Change focus to the window in the specified cycle direction
Usage: cycle-focus <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Cycle between available layouts
Usage: cycle-layout <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Focus the monitor in the given cycle direction
Usage: cycle-monitor <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Move the focused window to the monitor in the given cycle direction
Usage: cycle-move-to-monitor <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Move the focused window to the workspace in the given cycle direction
Usage: cycle-move-to-workspace <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Move the focused workspace monitor in the given cycle direction
Usage: cycle-move-workspace-to-monitor <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Move the focused window in the specified cycle direction
Usage: cycle-move <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Send the focused window to the monitor in the given cycle direction
Usage: cycle-send-to-monitor <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Send the focused window to the workspace in the given cycle direction
Usage: cycle-send-to-workspace <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Cycle the index of the focused window in the focused stack in the specified cycle direction
Usage: cycle-stack-index <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Cycle the focused stack in the specified cycle direction
Usage: cycle-stack <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Focus the workspace in the given cycle direction
Usage: cycle-workspace <CYCLE_DIRECTION>
Arguments:
<CYCLE_DIRECTION>
[possible values: previous, next]
Options:
-h, --help
Print help
Show the path to komorebi's data directory in $HOME/Library/Application Support
Usage: data-directory
Options:
-h, --help
Print help
Unloads and deletes the com.lgug2z.komorebi.plist file in $HOME/Library/LaunchAgents
Usage: disable-autostart
Options:
-h, --help
Print help
Set the display index preference for a monitor identified using its display name
Usage: display-index-preference <INDEX_PREFERENCE> <DISPLAY>
Arguments:
<INDEX_PREFERENCE>
Preferred monitor index (zero-indexed)
<DISPLAY>
Display name as identified in komorebic state
Options:
-h, --help
Print help
Focus the first managed window matching the given executable
Usage: eager-focus <EXE>
Arguments:
<EXE>
Case-sensitive exe identifier
Options:
-h, --help
Print help
Generates and loads the com.lgug2z.komorebi.plist file in $HOME/Library/LaunchAgents
Usage: enable-autostart [OPTIONS]
Options:
-c, --config <CONFIG>
Path to a static configuration JSON file
-h, --help
Print help
Enforce all workspace rules, including initial workspace rules that have already been applied
Usage: enforce-workspace-rules
Options:
-h, --help
Print help
Create these many named workspaces for the specified monitor
Usage: ensure-named-workspaces <MONITOR> [NAMES]...
Arguments:
<MONITOR>
Monitor index (zero-indexed)
[NAMES]...
Names of desired workspaces
Options:
-h, --help
Print help
Create at least this many workspaces for the specified monitor
Usage: ensure-workspaces <MONITOR> <WORKSPACE_COUNT>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE_COUNT>
Number of desired workspaces
Options:
-h, --help
Print help
Fetch the latest version of applications.json from komorebi-application-specific-configuration
Usage: fetch-app-specific-configuration
Options:
-h, --help
Print help
Flip the layout on the focused workspace
Usage: flip-layout <AXIS>
Arguments:
<AXIS>
Possible values:
- horizontal: Horizontal axis
- vertical: Vertical axis
- horizontal-and-vertical: Both horizontal and vertical axes
Options:
-h, --help
Print help (see a summary with '-h')
Focus the last focused workspace on the focused monitor
Usage: focus-last-workspace
Options:
-h, --help
Print help
Focus the monitor at the current cursor location
Usage: focus-monitor-at-cursor
Options:
-h, --help
Print help
Focus the specified workspace on the target monitor
Usage: focus-monitor-workspace <TARGET_MONITOR> <TARGET_WORKSPACE>
Arguments:
<TARGET_MONITOR>
Target monitor index (zero-indexed)
<TARGET_WORKSPACE>
Workspace index on the target monitor (zero-indexed)
Options:
-h, --help
Print help
Focus the specified monitor
Usage: focus-monitor <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Focus the specified workspace
Usage: focus-named-workspace <WORKSPACE>
Arguments:
<WORKSPACE>
Target workspace name
Options:
-h, --help
Print help
Focus the specified window index in the focused stack
Usage: focus-stack-window <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Focus the specified workspace on the focused monitor
Usage: focus-workspace <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Focus the specified workspace on all monitors
Usage: focus-workspaces <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Change focus to the window in the specified direction
Usage: focus <OPERATION_DIRECTION>
Arguments:
<OPERATION_DIRECTION>
[possible values: left, right, up, down]
Options:
-h, --help
Print help
Set container padding on the focused workspace
Usage: focused-workspace-container-padding <SIZE>
Arguments:
<SIZE>
Pixels size to set as an integer
Options:
-h, --help
Print help
Set workspace padding on the focused workspace
Usage: focused-workspace-padding <SIZE>
Arguments:
<SIZE>
Pixels size to set as an integer
Options:
-h, --help
Print help
Generates a static configuration JSON file based on the current window manager state
Usage: generate-static-config
Options:
-h, --help
Print help
Show a JSON representation of the current global state
Usage: global-state
Options:
-h, --help
Print help
Set offsets to exclude parts of the work area from tiling
Usage: global-work-area-offset <LEFT> <TOP> <RIGHT> <BOTTOM>
Arguments:
<LEFT>
Size of the left work area offset (set right to left * 2 to maintain right padding)
<TOP>
Size of the top work area offset (set bottom to the same value to maintain bottom padding)
<RIGHT>
Size of the right work area offset
<BOTTOM>
Size of the bottom work area offset
Options:
-h, --help
Print help
Add a rule to ignore the specified application
Usage: ignore-rule <IDENTIFIER> <ID>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Role or subrole
- title: Window title
- path: Executable path
<ID>
Identifier as a string
Options:
-h, --help
Print help (see a summary with '-h')
Add a rule to associate an application with a named workspace on first show
Usage: initial-named-workspace-rule <IDENTIFIER> <ID> <WORKSPACE>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Role or subrole
- title: Window title
- path: Executable path
<ID>
Identifier as a string
<WORKSPACE>
Name of a workspace
Options:
-h, --help
Print help (see a summary with '-h')
Add a rule to associate an application with a workspace on first show
Usage: initial-workspace-rule <IDENTIFIER> <ID> <MONITOR> <WORKSPACE>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Role or subrole
- title: Window title
- path: Executable path
<ID>
Identifier as a string
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
Options:
-h, --help
Print help (see a summary with '-h')
Specify an email associated with an Individual Commercial Use License
Usage: license <EMAIL>
Arguments:
<EMAIL>
Email address associated with an Individual Commercial Use License
Options:
-h, --help
Print help
Load the resize layout dimensions from a file
Usage: load-resize <PATH>
Arguments:
<PATH>
File from which the resize layout dimensions should be loaded
Options:
-h, --help
Print help
Tail komorebi's process logs (cancel with Ctrl-C)
Usage: log
Options:
-h, --help
Print help
Add a rule to always manage the specified application
Usage: manage-rule <IDENTIFIER> <ID>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Role or subrole
- title: Window title
- path: Executable path
<ID>
Identifier as a string
Options:
-h, --help
Print help (see a summary with '-h')
Force komorebi to manage the focused window
Usage: manage
Options:
-h, --help
Print help
Minimize the focused window
Usage: minimize
Options:
-h, --help
Print help
Show information about connected monitors
Usage: monitor-information
Options:
-h, --help
Print help
Set offsets for a monitor to exclude parts of the work area from tiling
Usage: monitor-work-area-offset <MONITOR> <LEFT> <TOP> <RIGHT> <BOTTOM>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<LEFT>
Size of the left work area offset (set right to left * 2 to maintain right padding)
<TOP>
Size of the top work area offset (set bottom to the same value to maintain bottom padding)
<RIGHT>
Size of the right work area offset
<BOTTOM>
Size of the bottom work area offset
Options:
-h, --help
Print help
Enable or disable mouse follows focus on all workspaces
Usage: mouse-follows-focus <BOOLEAN_STATE>
Arguments:
<BOOLEAN_STATE>
[possible values: enable, disable]
Options:
-h, --help
Print help
Move the focused window to the last focused monitor workspace
Usage: move-to-last-workspace
Options:
-h, --help
Print help
Move the focused window to the specified monitor workspace
Usage: move-to-monitor-workspace <TARGET_MONITOR> <TARGET_WORKSPACE>
Arguments:
<TARGET_MONITOR>
Target monitor index (zero-indexed)
<TARGET_WORKSPACE>
Workspace index on the target monitor (zero-indexed)
Options:
-h, --help
Print help
Move the focused window to the specified monitor
Usage: move-to-monitor <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Move the focused window to the specified workspace
Usage: move-to-named-workspace <WORKSPACE>
Arguments:
<WORKSPACE>
Target workspace name
Options:
-h, --help
Print help
Move the focused window to the specified workspace
Usage: move-to-workspace <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Move the focused workspace to the specified monitor
Usage: move-workspace-to-monitor <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Move the focused window in the specified direction
Usage: move <OPERATION_DIRECTION>
Arguments:
<OPERATION_DIRECTION>
[possible values: left, right, up, down]
Options:
-h, --help
Print help
Set the container padding for the specified workspace
Usage: named-workspace-container-padding <WORKSPACE> <SIZE>
Arguments:
<WORKSPACE>
Target workspace name
<SIZE>
Pixels to pad with as an integer
Options:
-h, --help
Print help
Add a dynamic layout rule for the specified workspace
Usage: named-workspace-layout-rule <WORKSPACE> <AT_CONTAINER_COUNT> <LAYOUT>
Arguments:
<WORKSPACE>
Target workspace name
<AT_CONTAINER_COUNT>
The number of window containers on-screen required to trigger this layout rule
<LAYOUT>
Possible values:
- bsp: BSP Layout
- columns: Columns Layout
- rows: Rows Layout
- vertical-stack: Vertical Stack Layout
- horizontal-stack: Horizontal Stack Layout
- ultrawide-vertical-stack: Ultrawide Vertical Stack Layout
- grid: Grid Layout
- right-main-vertical-stack: Right Main Vertical Stack Layout
- scrolling: Scrolling Layout
Options:
-h, --help
Print help (see a summary with '-h')
Set the layout for the specified workspace
Usage: named-workspace-layout <WORKSPACE> <VALUE>
Arguments:
<WORKSPACE>
Target workspace name
<VALUE>
Possible values:
- bsp: BSP Layout
- columns: Columns Layout
- rows: Rows Layout
- vertical-stack: Vertical Stack Layout
- horizontal-stack: Horizontal Stack Layout
- ultrawide-vertical-stack: Ultrawide Vertical Stack Layout
- grid: Grid Layout
- right-main-vertical-stack: Right Main Vertical Stack Layout
- scrolling: Scrolling Layout
Options:
-h, --help
Print help (see a summary with '-h')
Set the workspace padding for the specified workspace
Usage: named-workspace-padding <WORKSPACE> <SIZE>
Arguments:
<WORKSPACE>
Target workspace name
<SIZE>
Pixels to pad with as an integer
Options:
-h, --help
Print help
Add a rule to associate an application with a named workspace
Usage: named-workspace-rule <IDENTIFIER> <ID> <WORKSPACE>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Role or subrole
- title: Window title
- path: Executable path
<ID>
Identifier as a string
<WORKSPACE>
Name of a workspace
Options:
-h, --help
Print help (see a summary with '-h')
Enable or disable window tiling for the specified workspace
Usage: named-workspace-tiling <WORKSPACE> <VALUE>
Arguments:
<WORKSPACE>
Target workspace name
<VALUE>
[possible values: enable, disable]
Options:
-h, --help
Print help
Create and append a new workspace on the focused monitor
Usage: new-workspace
Options:
-h, --help
Print help
Generate a JSON Schema of subscription notifications
Usage: notification-schema
Options:
-h, --help
Print help
Preselect the specified direction for the next window to be spawned on supported layouts
Usage: preselect-direction <OPERATION_DIRECTION>
Arguments:
<OPERATION_DIRECTION>
[possible values: left, right, up, down]
Options:
-h, --help
Print help
Promote the user focus to the largest window container
Usage: promote-focus
Options:
-h, --help
Print help
Promote the focused window to the largest tile by swapping container indices with the largest tile
Usage: promote-swap
Options:
-h, --help
Print help
Promote the window in the specified direction
Usage: promote-window <OPERATION_DIRECTION>
Arguments:
<OPERATION_DIRECTION>
[possible values: left, right, up, down]
Options:
-h, --help
Print help
Promote the focused window to the largest tile via container removal and re-insertion
Usage: promote
Options:
-h, --help
Print help
Query the current window manager state
Usage: query <STATE_QUERY>
Arguments:
<STATE_QUERY>
[possible values: focused-monitor-index, focused-workspace-index, focused-container-index, focused-window-index, focused-workspace-name, focused-workspace-layout, focused-container-kind, version]
Options:
-h, --help
Print help
Load the last quicksaved resize layout dimensions
Usage: quick-load-resize
Options:
-h, --help
Print help
Quicksave the current resize layout dimensions
Usage: quick-save-resize
Options:
-h, --help
Print help
Gather example configurations for a new-user quickstart
Usage: quickstart
Options:
-h, --help
Print help
Replace the configuration of a running instance of komorebi from a static configuration file
Usage: replace-configuration <PATH>
Arguments:
<PATH>
Static configuration JSON file from which the configuration should be loaded
Options:
-h, --help
Print help
Resize the focused window or primary column along the specified axis
Usage: resize-axis <AXIS> <SIZING>
Arguments:
<AXIS>
Possible values:
- horizontal: Horizontal axis
- vertical: Vertical axis
- horizontal-and-vertical: Both horizontal and vertical axes
<SIZING>
[possible values: increase, decrease]
Options:
-h, --help
Print help (see a summary with '-h')
Set the resize delta (used by resize-edge and resize-axis)
Usage: resize-delta <PIXELS>
Arguments:
<PIXELS>
The delta of pixels by which to increase or decrease window dimensions when resizing
Options:
-h, --help
Print help
Resize the focused window in the specified direction
Usage: resize-edge <EDGE> <SIZING>
Arguments:
<EDGE>
[possible values: left, right, up, down]
<SIZING>
[possible values: increase, decrease]
Options:
-h, --help
Print help
Force the retiling of all managed windows
Usage: retile
Options:
-h, --help
Print help
Save the current resize layout dimensions to a file
Usage: save-resize <PATH>
Arguments:
<PATH>
File to which the resize layout dimensions should be saved
Options:
-h, --help
Print help
Set the number of visible columns for the Scrolling layout on the focused workspace
Usage: scrolling-layout-columns <COUNT>
Arguments:
<COUNT>
Desired number of visible columns
Options:
-h, --help
Print help
Send the focused window to the last focused monitor workspace
Usage: send-to-last-workspace
Options:
-h, --help
Print help
Send the focused window to the specified monitor workspace
Usage: send-to-monitor-workspace <TARGET_MONITOR> <TARGET_WORKSPACE>
Arguments:
<TARGET_MONITOR>
Target monitor index (zero-indexed)
<TARGET_WORKSPACE>
Workspace index on the target monitor (zero-indexed)
Options:
-h, --help
Print help
Send the focused window to the specified monitor
Usage: send-to-monitor <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Send the focused window to the specified workspace
Usage: send-to-named-workspace <WORKSPACE>
Arguments:
<WORKSPACE>
Target workspace name
Options:
-h, --help
Print help
Send the focused window to the specified workspace
Usage: send-to-workspace <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Add a rule to float the foreground window for the rest of this session
Usage: session-float-rule
Options:
-h, --help
Print help
Show all session float rules
Usage: session-float-rules
Options:
-h, --help
Print help
Generate a JSON Schema of socket messages
Usage: socket-schema
Options:
-h, --help
Print help
Stack all windows on the focused workspace
Usage: stack-all
Options:
-h, --help
Print help
Stack the focused window in the specified direction
Usage: stack <OPERATION_DIRECTION>
Arguments:
<OPERATION_DIRECTION>
[possible values: left, right, up, down]
Options:
-h, --help
Print help
Start komorebi as a background process
Usage: start [OPTIONS]
Options:
-c, --config <CONFIG>
Path to a static configuration JSON file
--bar
Start komorebi-bar in a background process
-h, --help
Print help
Show a JSON representation of the current window manager state
Usage: state
Options:
-h, --help
Print help
Generate a JSON Schema of the static configuration file
Usage: static-config-schema
Options:
-h, --help
Print help
Stop the komorebi process and restore all hidden windows
Usage: stop [OPTIONS]
Options:
--bar
Stop komorebi-bar if it is running as a background process
-h, --help
Print help
Subscribe to komorebi events using a Unix Domain Socket
Usage: subscribe-socket <SOCKET>
Arguments:
<SOCKET>
Name of the socket to send event notifications to
Options:
-h, --help
Print help
Swap focused monitor workspaces with specified monitor
Usage: swap-workspaces-with-monitor <TARGET>
Arguments:
<TARGET>
Target index (zero-indexed)
Options:
-h, --help
Print help
Toggle the behaviour when moving windows across monitor boundaries
Usage: toggle-cross-monitor-move-behaviour
Options:
-h, --help
Print help
Enable or disable float override, which makes it so every new window opens in floating mode
Usage: toggle-float-override
Options:
-h, --help
Print help
Toggle floating mode for the focused window
Usage: toggle-float
Options:
-h, --help
Print help
Toggle a lock for the focused container, ensuring it will not be displaced by any new windows
Usage: toggle-lock
Options:
-h, --help
Print help
Toggle monocle mode for the focused container
Usage: toggle-monocle
Options:
-h, --help
Print help
Toggle mouse follows focus on all workspaces
Usage: toggle-mouse-follows-focus
Options:
-h, --help
Print help
Toggle the paused state for all window tiling
Usage: toggle-pause
Options:
-h, --help
Print help
Toggle window tiling on the focused workspace
Usage: toggle-tiling
Options:
-h, --help
Print help
Toggle application of the window-based work area offset for the focused workspace
Usage: toggle-window-based-work-area-offset
Options:
-h, --help
Print help
Toggle the behaviour for new windows (stacking or dynamic tiling)
Usage: toggle-window-container-behaviour
Options:
-h, --help
Print help
Enable or disable float override, which makes it so every new window opens in floating mode, for the currently focused workspace. If there was no override value set for the workspace previously it takes the opposite of the global value
Usage: toggle-workspace-float-override
Options:
-h, --help
Print help
Toggle between the Tiling and Floating layers on the focused workspace
Usage: toggle-workspace-layer
Options:
-h, --help
Print help

toggle-workspace-window-container-behaviour

Section titled “toggle-workspace-window-container-behaviour”
Toggle the behaviour for new windows (stacking or dynamic tiling) for currently focused workspace. If there was no behaviour set for the workspace previously it takes the opposite of the global value
Usage: toggle-workspace-window-container-behaviour
Options:
-h, --help
Print help
Unmanage a window that was forcibly managed
Usage: unmanage
Options:
-h, --help
Print help
Set the operation behaviour when the focused window is not managed
Usage: unmanaged-window-operation-behaviour <OPERATION_BEHAVIOUR>
Arguments:
<OPERATION_BEHAVIOUR>
Possible values:
- op: Process commands on temporarily unmanaged/floated windows
- no-op: Ignore commands on temporarily unmanaged/floated windows
Options:
-h, --help
Print help (see a summary with '-h')
Unstack all windows in the focused container
Usage: unstack-all
Options:
-h, --help
Print help
Unstack the focused window
Usage: unstack
Options:
-h, --help
Print help
Unsubscribe from komorebi events
Usage: unsubscribe-socket <SOCKET>
Arguments:
<SOCKET>
Name of the socket to stop sending event notifications to
Options:
-h, --help
Print help
Show a JSON representation of visible windows
Usage: visible-windows
Options:
-h, --help
Print help
Add a dynamic layout rule for the specified workspace
Usage: workspace-layout-rule <MONITOR> <WORKSPACE> <AT_CONTAINER_COUNT> <LAYOUT>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
<AT_CONTAINER_COUNT>
The number of window containers on-screen required to trigger this layout rule
<LAYOUT>
Possible values:
- bsp: BSP Layout
- columns: Columns Layout
- rows: Rows Layout
- vertical-stack: Vertical Stack Layout
- horizontal-stack: Horizontal Stack Layout
- ultrawide-vertical-stack: Ultrawide Vertical Stack Layout
- grid: Grid Layout
- right-main-vertical-stack: Right Main Vertical Stack Layout
- scrolling: Scrolling Layout
Options:
-h, --help
Print help (see a summary with '-h')
Set the layout for the specified workspace
Usage: workspace-layout <MONITOR> <WORKSPACE> <VALUE>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
<VALUE>
Possible values:
- bsp: BSP Layout
- columns: Columns Layout
- rows: Rows Layout
- vertical-stack: Vertical Stack Layout
- horizontal-stack: Horizontal Stack Layout
- ultrawide-vertical-stack: Ultrawide Vertical Stack Layout
- grid: Grid Layout
- right-main-vertical-stack: Right Main Vertical Stack Layout
- scrolling: Scrolling Layout
Options:
-h, --help
Print help (see a summary with '-h')
Set the workspace name for the specified workspace
Usage: workspace-name <MONITOR> <WORKSPACE> <VALUE>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
<VALUE>
Name of the workspace as a String
Options:
-h, --help
Print help
Set the workspace padding for the specified workspace
Usage: workspace-padding <MONITOR> <WORKSPACE> <SIZE>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
<SIZE>
Pixels to pad with as an integer
Options:
-h, --help
Print help
Add a rule to associate an application with a workspace
Usage: workspace-rule <IDENTIFIER> <ID> <MONITOR> <WORKSPACE>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Role or subrole
- title: Window title
- path: Executable path
<ID>
Identifier as a string
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
Options:
-h, --help
Print help (see a summary with '-h')
Enable or disable window tiling for the specified workspace
Usage: workspace-tiling <MONITOR> <WORKSPACE> <VALUE>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index on the specified monitor (zero-indexed)
<VALUE>
[possible values: enable, disable]
Options:
-h, --help
Print help
Set offsets for a workspace to exclude parts of the work area from tiling
Usage: workspace-work-area-offset <MONITOR> <WORKSPACE> <LEFT> <TOP> <RIGHT> <BOTTOM>
Arguments:
<MONITOR>
Monitor index (zero-indexed)
<WORKSPACE>
Workspace index (zero-indexed)
<LEFT>
Size of the left work area offset (set right to left * 2 to maintain right padding)
<TOP>
Size of the top work area offset (set bottom to the same value to maintain bottom padding)
<RIGHT>
Size of the right work area offset
<BOTTOM>
Size of the bottom work area offset
Options:
-h, --help
Print help