That would need a lot of redundant code, wouldn't it? Even if we limit ourselves to "use" and "cast", checking if we can retrieve an item or restore MP isn't trivial. It sounds easier and error-proof-er to check a return value (KoLmafia.permitsContinue() in these cases).
EDIT: I had a doubt and checked RuntimeLibrary.java. The use() and use_skill() ASH commands actually call the "use" and "cast" CLI commands anyway, and return what is essentially KoLmafia.permitsContinue(). ASH doesn't bring anything in this case, then.
If we only use a limited number of CLI commands in statuseffects.txt, it's easy to modify Catch-22's patch to make ExtendEffectCommand do that.