I propose that I do the python-related work, while you do the ts work. This should minimize code conflicts. It will also allow me to leverage my knowledge of Leo's base, as illustrated by the new version of bc.leoCommands, aka bc.outlineCommands.
It is also in the spirit of your request to suggest helper methods in leobridgeserver.py. However, there is at least one complication...
Defining commands for the Command palette
At present, package.json defines all Leo commands that are known to the vs code's command palette. This is static and clumsy.
To implement unimplemented commands I need to change package.json, which you plan to reorganize. Worse, there is no static list of Leo commands, because of @command and @button.
It would be great if some way could be found to make vs code's command palette aware of Leo's commands without have to specify each in package.json. Yes, the "when" attribute is hand crafted now. However, I would be willing to add, for example, a "__when__" attribute in the methods that implements Leo's commands.
Félix, let me know what you think. For now I'll carry on hacking on package.json as needed, and we'll have to handle conflicts as usual.
Edward