Don't make this public, the CommandX API should be used for now from frontends (except for what is part of IProtocolManager of course)