I'm not quite following what you're saying, but I think it has something to do with using haltdef in ON INPUT and not allowing commands to go through?

If this is the case, why not check if the line starts with the command character and have your ON INPUT script not do anyting to it? Of course, if you do this, make sure to check $ctrlenter as well. Sometime people want those lines to be sent to the server...