I run a robot, GnuGoCVS, on KGS. It's automatically compiled from the latest GNU Go CVS sources each night at 3am Eastern time. The robot also has a game archive and rating graph.
If the nightly compile succeeds, the robot will reboot itself, hopefully when it's not in the middle of a game. Because no GTP message is necessarily sent to indicate that a game has ended, the only way it can be sure that it's not in the middle of a game is to reboot right before a new game starts. This means that if you're the first person to play the robot after a new compile, it'll probably disappear and the game request will be canceled. Unless something goes horribly wrong, it should reappear with a new game offer in a few seconds. If it fails to reappear within a minute or two it means that something has gone horribly wrong and it won't be fixed until I notice its mangled corpse lying on my desk. Also, because it contains the latest patches from the CVS repository, there is the potential that the robot might be suddenly unstable or weak on occasion.
It does misbehave in a few peculiar ways currently... If the robot received a free-placement handicap and the game is adjourned, sometimes it won't be able to resume the game. Also, it can sometimes take a very, very long time to mark dead stones (particularly if there are a lot of dead groups or big dead dragons). Sometimes restarting the robot fixes that. Leave a KGS message for me if the robot seems to crash or do anything else weird, or even if it makes any particularly terrible moves (they can be turned into test cases that might be used to improve future versions of GNU Go).