I have GitHub - pfaffman/discourse-allow-pm-to-staff: Allow private messages to be sent to staff for users who could otherwise not send private messages. · GitHub that does some of what you ask. It has no UI.