koi may have different meanings depending on context.
When talking about people it may mean anybody/someone/anyone. when talking about things it may mean any/some.
We are not done here,Look at few examples:
Unka is mudde se koi sambhandh nahin hai. (he doesnt have any relation with this matter). (or he has NO relation with ....)
koi nahin jaanta hai - NO ONE(koi nahin) knows.
har koi jaanta hai - everyone knows.
koi baat nahin - No matter/ doesnt matter.
aisi koi baat nahin kahi gayi hai - There is NO SUCH thing(or topic or point) said.
yahi koi 50 log - around 50 people.
koi tulna nahin - no comparison.
yah koi bhi kar sakta hai - anyone can do this.
in informal conversation you can hear one liner 'koi nahin' - which means I disagree.
Pattern that can be derived from above
koi xyz nahin -no xyz
koi nahin(for people) - no one
har koi (for people) - everyone/all.
This is all I can remember right now. I think this answer has more scope of improvement in terms of cases (or scope).