Classic models of cooperation like tit-for-tat are simple but brittle. They only work in specific games, can't handle noise and stochasticity and don't understand others' intentions. But human cooperation is remarkably flexible and robust. How and why?