A friend who has as many pets as I mounts asked how hard it would be to modify the mount mod for pets. Well this is that. Summon a random pet from a list you choose. If the random pet returned is the current pet summoned, the key binding does nothing. This also will not dismiss your companions. I could add that if requested, but right now it just summons a random pet, if you want it changed hit the key binding again and if the randomness doesn't hit the same pet again, will summon a new pet. With 4 pets in my list, out of 20 pushes it only tried to summon the same pet twice.
Also, if you have a pet that requires reagents to summon, this doesn't do a check if you have reagents to summon it (than i would have to check your bags, etc. and this would become a more complicated mod than i want).
Usage:
/prp
/prp gui
/prp add [pet name]
/prp remove [pet name]
/prp list --list pets in your random list
/prp reseed (like in the mount mod the event for learning a new pet isn't always fired correctly, use this when you learn a new pet, otherwise your list will not be correct)