I'm not sure, but I think there is an error in Genki's Grammar point of Lesson 16:
In the first grammar point they explain ～てあげる/くれる and say that if a verb doesn't have a "beneficiaries part" like 〇〇さんに貸してあげる, for example with the verb 行く, you can use 〇〇さんのために as a substitute. They give this example sentence:
I went shopping for Tomoko
But it's completely missing the あげる.
Shouldn't it be 私は智子さんのために買い物に行ってあげました。?
First I thought "well ok, you don't actually use あげる here", but down the grammar point they make the same remark in regards to くれる, that even though it is mostly clear already who is the beneficiary, but you really want explicitly state who receives the benefit, and if the verb you want to use has no place for a person, you use のために again.
But here the example sentences uses ～てくれる unlike above where they didn't use ～てあげる:
Ken cleaned the room for me.
Question is now: Was this a mistake by Genki? Do you actually use ～てあげる when you use のために or only with ～てくれる like they did. They didn't mention this at all that the example sentences under あげる doesn't use てあげる but under the "くれる"-section the example sentence uses てくれる.