For me, one of the biggest motivations in writing komorebi was that I wanted to separate the window management from the key binding and shortcuts using a message-passing architecture similar to bspwm and yabai.
By exposing all of the functionality (aka socket messages) via a cli (komorebic), I can use whatever I want to handle my shortcuts, which in turn makes it easy to configure my shortcuts to whatever I want. An added bonus is that exposing the functionality via the cli means that I can compose multiple commands to run sequentially with a single key bind.