I think Dial is right.
In that case the macro should be:

/target [target=focustarget, harm, nodead]
/castsequence reset=combat/target Curse of Agony, Corruption, !Shoot

and you can leave the combat check:

/target [target=focustarget, harm, nodead]
/castsequence reset=target Curse of Agony, Corruption, !Shoot

[edit] Or:

/assist [target=focus,exists]
/castsequence reset=target Curse of Agony, Corruption, !Shoot