Consider using Dynamic Actions. You'll need to have a (typically Checkbox) field that tracks that the given action has been performed against the current record. If you do this, you can use this field in the action's visibility expression.

Only top voted, non community-wiki answers of a minimum length are eligible