Note that the most versatile addition to UCI was proposed by me, and is actually implemented in Win/XBoard (through Polyglot): UCI engines can send a command
info string xboard XXX
which should be taken by the GUI to mean the same as XXX would mean in WB protocol. This makes UCI upward compatible with WB protocol in one blow!
People could use this to send 'resign' or 'offer draw'.
Btw, with some creative use of the protocol UCI engines can actually resign or claim draws. Just have them send 'bestmove 0000' to indicate their refusal to play on, and let the reported score (-mate, 0 or +mate) decide if they claimed a loss, draw or win.
