i used an alias just for make the code more readable u can make the goto into the event
i used goto to get easer street without too much calculate conditions to find the true
but i also say the $read identifier is better for this case
To be honest, you would only use $read for reading typically larger amounts of information. Otherwise, I think tokens would be better than making a separate alias for it. It's just what I think.
Also, instead of $strip($1) that you used, you could just change the text event a bit:
on $*:text:/^[.!@]garbagebag/Si:#: {
All the characters [.!@] is unnecessary, but I put it there as an extra precaution; not everybody likes to use the same trigger.