-то carries some definitive-ness, for that reason it is used "when you have a specific person in mind" as iCake said.


Кое- is used when you wouldn't like to tell some details.
Кое-кто заходил, пока тебя не было. (Попробуй угадать, кто это был.)
Я кое-что тебе должен вернуть. (Я знаю что, но сейчас я не хочу говорить или у меня нет времени рассказывать.)


Кто-нибудь is etymologically кто ни будь, e.i. кто бы ни был. So it literally means "any person that can ever be".
Wiktionary:
-нибудь - служит для образования местоимений со значением неопределённости, указывая на то, что говорящему безразличен выбор в имеющемся множестве вариантов


-либо is a bookish synonym of -нибудь. I could not think of an example when -либо is preferable in the spoken language.


Угодно is used in affirmative sentenses to put the emphasis:
— Кто мог это сделать? Who could do it?
— Кто угодно мог. Any person could. Everyone could.