My friend fought this villain the other night and I told him it was just the Shield heroes in his hand, he thought it was all his Shield agents he had everywhere. Who was right?
The Villain you are talking about is the Destroyer, from the Enemies of Asgard. His Fight effect says "KO all your SHIELD Heroes."
Neither of you was correct; look at p. 16 in the rules, "Your Heroes" & "Heroes You Have":
Rules p. 16 wrote:
These phrases include both the cards in
your hand and the cards you have played
this turn. The Heroes in your deck and
discard pile don’t count.
So your friend would have had to KO both any SHIELD Agents he had played and any that were still in his hand, but he would not get to strip his discard pile and his deck.