I think it would be really nice if multiple sources can be configured for the input keyboard. It would also be nice if there is a similar abstraction mechanism for destinations (output). That would enable mappings to be easily reusable and not bound to specific ports/hardware.
In my scenario I am using 2 foot switches and an expression pedal from the same manufacturer as sources. I want to intercept the messages from them and translate them to other messages. However, every time I connect the foot switches they show up as <manufacturer name> 1/2/3, and those names do not persist. So the switch that is <name> 1 could become <name> 2 the next time I connect it. That makes using mappings difficult as I have to edit the sources and the filter configurations every time. If I can assign all foot switches and pedals to Input Keyboard at the same time that solves the issue nicely.
On the output side, I use the same foot switches to control different midi modules. So if I can assign the Midiflow outputs to a single virtual output, which then can be easily changed to any hardware, that would make things much more reusable.
Thank you for the awesome app!