I do not know what the theoretical maximum is, however, I think you will run into other issues before you exceed MOVI’s limit. Here is my experience:
Use a call sign or MOVI will be eager to match anything you say to what it knows. The call sign is not very eager, you must pronounce it clearly or it will not fire.
Once MOVI is listening for a command, it will be eager to match what you say to what it knows. It will pick what it thinks is closest, even if you tell it to “Go fly a kite” and it has not been trained to know that command, it will match (say) “Go talk to Kate”, presuming you taught it that command.
The more commands you teach it, the more likely MOVI is to get a mismatch between similar commands. My application has about 15 commands after the call sign, all of which are phonetically quite different.
The longer your commands the less likely you are to get an accurate match. Try to keep them to one or two words.
Lastly, the more “Noise chaos” you have in your environment, the more problematic MOVI will be in getting an accurate match. If you are operating in a completely noise contained environment, you will be able to build a richer set of commands. If you are expecting MOVI to match commands in a car with a V8 engine running and wind noise coming from the windows (like my scenario) then you will need to keep your command set small, simple, and unique.
Good luck with it!