This sounds a lot cleaner than the approach I was thinking of with a separate bot for each role. I like it.