Skip to content

komorebic (Windows)

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

Adjust container padding on the focused workspace
Usage: adjust-container-padding <SIZING> <ADJUSTMENT>
Arguments:
<SIZING>
Possible values:
- increase: Increase
- decrease: Decrease
<ADJUSTMENT>
Pixels to adjust by as an integer
Options:
-h, --help
Print help (see a summary with '-h')
Adjust workspace padding on the focused workspace
Usage: adjust-workspace-padding <SIZING> <ADJUSTMENT>
Arguments:
<SIZING>
Possible values:
- increase: Increase
- decrease: Decrease
<ADJUSTMENT>
Pixels to adjust by as an integer
Options:
-h, --help
Print help (see a summary with '-h')
Generate common app-specific configurations and fixes to use in komorebi.ahk
Usage: ahk-app-specific-configuration <PATH> [OVERRIDE_PATH]
Arguments:
<PATH>
YAML file from which the application-specific configurations should be loaded
[OVERRIDE_PATH]
Optional YAML file of overrides to apply over the first file
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, transparency]
-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, transparency]
-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, transparency]
-h, --help
Print help
Generate a JSON Schema for applications.json
Usage: application-specific-configuration-schema
Options:
-h, --help
Print help
Show the path to komorebi.bar.json
Usage: bar-configuration
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>
Possible values:
- single: Single window
- stack: Stack container
- monocle: Monocle container
- unfocused: Unfocused window
- unfocused-locked: Unfocused locked container
- floating: Floating window[default: single]
-h, --help
Print help (see a summary with '-h')
Set the border implementation
Usage: border-implementation <STYLE>
Arguments:
<STYLE>
Desired border implementation
Possible values:
- komorebi: Use the adjustable komorebi border implementation
- windows: Use the thin Windows accent border implementation
Options:
-h, --help
Print help (see a summary with '-h')
Set the border offset
Usage: border-offset <OFFSET>
Arguments:
<OFFSET>
Desired offset of the window border
Options:
-h, --help
Print help
Set the border style
Usage: border-style <STYLE>
Arguments:
<STYLE>
Desired border style
Possible values:
- system: Use the system border style
- rounded: Use the Windows 11-style rounded borders
- square: Use the Windows 10-style square borders
Options:
-h, --help
Print help (see a summary with '-h')
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')
Check komorebi configuration and related files for common errors
Usage: check [OPTIONS]
Options:
-k, --komorebi-config <KOMOREBI_CONFIG>
Path to a static configuration JSON file
-h, --help
Print help
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
For legacy komorebi.ahk or komorebi.ps1 configurations, signal that the final configuration option has been sent
Usage: complete-configuration
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
Convert a v1 ASC YAML file to a v2 ASC JSON file
Usage: convert-app-specific-configuration <PATH>
Arguments:
<PATH>
YAML file from which the application-specific configurations should be loaded
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 %LOCALAPPDATA%
Usage: data-directory
Options:
-h, --help
Print help
Deletes the komorebi.lnk shortcut in shell:startup to disable autostart
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 exe
Usage: eager-focus <EXE>
Arguments:
<EXE>
Case-sensitive exe identifier
Options:
-h, --help
Print help
Generates the komorebi.lnk shortcut in shell:startup to autostart komorebi
Usage: enable-autostart [OPTIONS]
Options:
-c, --config <CONFIG>
Path to a static configuration JSON file
--whkd
Enable autostart of whkd
--bar
Enable autostart of komorebi-bar
--masir
Enable autostart of masir
-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
Forcibly focus the window at the cursor with a left mouse click
Usage: force-focus
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
Launch the komorebi-gui debugging tool
Usage: gui
Options:
-h, --help
Print help
Identify an application that has WS_EX_LAYERED, but should still be managed
Usage: identify-layered-application <IDENTIFIER> <ID>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Class
- title: Window title
- path: Executable path
<ID>
Identifier as a string
Options:
-h, --help
Print help (see a summary with '-h')
Identify an application that sends EVENT_OBJECT_NAMECHANGE on launch
Usage: identify-object-name-change-application <IDENTIFIER> <ID>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Class
- title: Window title
- path: Executable path
<ID>
Identifier as a string
Options:
-h, --help
Print help (see a summary with '-h')
Identify an application that closes to the system tray
Usage: identify-tray-application <IDENTIFIER> <ID>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Class
- 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 ignore the specified application
Usage: ignore-rule <IDENTIFIER> <ID>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Class
- 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: Class
- 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: Class
- 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')
Set the invisible border dimensions around each window
Usage: invisible-borders <LEFT> <TOP> <RIGHT> <BOTTOM>
Arguments:
<LEFT>
Size of the left invisible border
<TOP>
Size of the top invisible border (usually 0)
<RIGHT>
Size of the right invisible border (usually left * 2)
<BOTTOM>
Size of the bottom invisible border (usually the same as left)
Options:
-h, --help
Print help
Kill background processes started by komorebic
Usage: kill [OPTIONS]
Options:
--whkd
Kill whkd if it is running as a background process
--bar
Kill komorebi-bar if it is running as a background process
--masir
Kill masir if it is running as a background process
-h, --help
Print help
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.exe'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: Class
- 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
Set the monitor index preference for a monitor identified using its size
Usage: monitor-index-preference <INDEX_PREFERENCE> <LEFT> <TOP> <RIGHT> <BOTTOM>
Arguments:
<INDEX_PREFERENCE>
Preferred monitor index (zero-indexed)
<LEFT>
Left value of the monitor's size Rect
<TOP>
Top value of the monitor's size Rect
<RIGHT>
Right value of the monitor's size Rect
<BOTTOM>
Bottom value of the monitor's size Rect
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: Class
- 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 top of the tree
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
Generate common app-specific configurations and fixes in a PowerShell script
Usage: pwsh-app-specific-configuration <PATH> [OVERRIDE_PATH]
Arguments:
<PATH>
YAML file from which the application-specific configurations should be loaded
[OVERRIDE_PATH]
Optional YAML file of overrides to apply over the first file
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
Reload legacy komorebi.ahk or komorebi.ps1 configurations (if they exist)
Usage: reload-configuration
Options:
-h, --help
Print help
Whitelist an application for title bar removal
Usage: remove-title-bar <IDENTIFIER> <ID>
Arguments:
<IDENTIFIER>
Possible values:
- exe: Executable name
- class: Class
- title: Window title
- path: Executable path
<ID>
Identifier as a string
Options:
-h, --help
Print help (see a summary with '-h')
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: Increase
- decrease: 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: Increase
- decrease: Decrease
Options:
-h, --help
Print help (see a summary with '-h')
Restore all hidden windows (debugging command)
Usage: restore-windows
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
Set the stackbar mode
Usage: stackbar-mode <MODE>
Arguments:
<MODE>
Desired stackbar mode
Possible values:
- always: Always show
- never: Never show
- on-stack: Show on stack
Options:
-h, --help
Print help (see a summary with '-h')
Start komorebi.exe as a background process
Usage: start [OPTIONS]
Options:
-c, --config <CONFIG>
Path to a static configuration JSON file
-a, --await-configuration
Wait for `komorebic complete-configuration` to be sent before processing events
-t, --tcp-port <TCP_PORT>
Start a TCP server on the given port to allow the direct sending of SocketMessages
--whkd
Start whkd in a background process
--bar
Start komorebi-bar in a background process
--masir
Start masir in a background process for focus-follows-mouse
--clean-state
Do not attempt to auto-apply a dumped state temp file from a previously running instance of komorebi
-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.exe process and restore all hidden windows
Usage: stop [OPTIONS]
Options:
--whkd
Stop whkd if it is running as a background process
--bar
Stop komorebi-bar if it is running as a background process
--masir
Stop masir if it is running as a background process
-h, --help
Print help
Subscribe to komorebi events using a Named Pipe
Usage: subscribe-pipe <NAMED_PIPE>
Arguments:
<NAMED_PIPE>
Name of the pipe to send event notifications to (without "\\.\pipe\" prepended)
Options:
-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 native maximization for the focused window
Usage: toggle-maximize
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 the komorebi-shortcuts helper
Usage: toggle-shortcuts
Options:
-h, --help
Print help
Toggle window tiling on the focused workspace
Usage: toggle-tiling
Options:
-h, --help
Print help
Toggle title bars for whitelisted applications
Usage: toggle-title-bars
Options:
-h, --help
Print help
Toggle transparency for unfocused windows
Usage: toggle-transparency
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
Set the alpha value for unfocused window transparency
Usage: transparency-alpha <ALPHA>
Arguments:
<ALPHA>
Alpha
Options:
-h, --help
Print help
Enable or disable transparency for unfocused windows
Usage: transparency <BOOLEAN_STATE>
Arguments:
<BOOLEAN_STATE>
[possible values: enable, disable]
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-pipe <NAMED_PIPE>
Arguments:
<NAMED_PIPE>
Name of the pipe to stop sending event notifications to (without "\\.\pipe\" prepended)
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
Enable or disable watching of legacy komorebi.ahk or komorebi.ps1 configurations (if they exist)
Usage: watch-configuration <BOOLEAN_STATE>
Arguments:
<BOOLEAN_STATE>
[possible values: enable, disable]
Options:
-h, --help
Print help
Show the path to whkdrc
Usage: whkdrc
Options:
-h, --help
Print help
Set the window behaviour when switching workspaces / cycling stacks
Usage: window-hiding-behaviour <HIDING_BEHAVIOUR>
Arguments:
<HIDING_BEHAVIOUR>
Possible values:
- hide: END OF LIFE FEATURE: Use the `SW_HIDE` flag to hide windows when switching workspaces (has issues with Electron apps)
- minimize: Use the `SW_MINIMIZE` flag to hide windows when switching workspaces (has issues with frequent workspace switching)
- cloak: Use the undocumented SetCloak Win32 function to hide windows when switching workspaces
Options:
-h, --help
Print help (see a summary with '-h')
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: Class
- 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