No need for exits, You can use a condition in the workitem text, transfer the initiator to the workitem container and and simply add an IF initiator = sy-uname condition.
As for the workitem subject this can not be changed, since it's calculated as the work if created and stored in table swwwihead, when users read it in their inbox it's not calculated again unless some action is done on the workitem.
You can create fork with only one necessary branch to complete and send different workitems to the initiator and to the other agents.