This sounds similar to the example in the help files for a New Task. What have you come up with? What about it is not yet working as desired?
Sorry for the late reply. I found a way to accomplish this by creating an object that imitates Journal.Email. I have a Template that creates the email. A quick action button that fires the quick action to creates the email and displays the window. The User can make changes if needed and Save. Then another quick action updates the actual Journal.Email as Outgoing and the email is sent.
Can you call relationship values from a Command UI? So, using the Command UI to create an email, then pre-populating the body of the email with specific fields from a related object? Example would be to run the Command UI from Incident, it opens the email and is pre-populated with something from the IncidentAssociatedCustomer relationship?