Skip to content

Troubleshooting

AutoHotKey executable not found

If you try to start komorebi with AHK using komorebic start --ahk, and you have not installed AHK using scoop, you'll probably receive an error:

Error: could not find autohotkey, please make sure it is installed before using the --ahk flag

Depending on how AHK is installed the executable on your system may have a different name. In order to account for this, you may set the KOMOREBI_AHK_EXE environment variable in your PowerShell profile to match the name of the executable as it is found on your system.

After setting KOMOREBI_AHK_EXE make sure to either reload your PowerShell profile or open a new terminal tab.

Komorebi is unresponsive when the display wakes from sleep

This can happen in rare cases when your monitor state is not preserved after it wakes from sleep.

Problem

Your hotkeys in whkd work, but it feels as if komorebi knows nothing about the previous state (you can't control previous windows, although newly launched ones can be manipulated as normal).

Solution

Some monitors, such as the Samsung G8/G9 (LED, Neo, OLED) have an adaptive sync or variable refresh rate setting within the actual monitor OSD that can disrupt how the device is persisted in the komorebi state following suspension.

To fix this, please try to disable Adaptive Sync or any other VRR branded alias by referring to the manufacturer's documentation.

Warning

Disabling VRR within Windows (e.g. Nvidia Control Panel) may work and can indeed change the configuration you see within your monitor's OSD, but some monitors will re-enable the setting regardless following suspension.

Reproducing

Ensure komorebi is in an operational state by executing komorebic start as normal.

If komorebi is already unresponsive, then please restart komorebi first by running komorebic stop and komorebic start.

  1. komorebic state
{
  "monitors": {
    "elements": [
      {
        "id": 65537,
        "name": "DISPLAY1",
        "device": "SAM71AA",
        "device_id": "SAM71AA-5&a1a3e88&0&UID24834",
        "size": {
          "left": 0,
          "top": 0,
          "right": 5120,
          "bottom": 1440
        }
      }
    ]
  }
}

This appears to be fine -- komorebi is aware of the device and associated window handles.

  1. Let your display go to sleep.

Simply turning the monitor off is not enough to reproduce the problem; you must let Windows turn off the display itself.

To avoid waiting an eternity:

  • Control Panel -> Hardware and Sound -> Power Options -> Edit Plan Settings

    Turn off the display: 1 minute

Allow a minute for the display to reset, then once it actually shuts off allow for any additional time as prompted by your monitor for the cycle to complete.

  1. Wake your display again by pressing any key.

komorebi should now be unresponsive.

  1. komorebic state

Don't stop komorebi just yet.

Since it's unresponsive, you can open another shell instead to execute the above command.

{
  "monitors": {
    "elements": [
      {
        "id": 65537,
        "name": "DISPLAY1",
        "device": null,
        "device_id": null
      }
    ]
  }
}

We can see the komorebi state is no longer associated with the previous device: null, suggesting an issue when the display resumes from a suspended state.