Isso é o que funcionou para mim:
USER_NAME=$(printf '%s' "${SUDO_USER:-$USER}")
sudo -u $USER_NAME <command-to-exec-in-nonroot-context>
Existe uma maneira de alternar contextos como esse?
O script no meu caso específico é um script postinstall do instalador, que requer privilégios sudo apenas para algumas das tarefas e requer que o usuário conectado execute um LaunchAgent no final do script.
Se esse agente for iniciado com privilégios sudo, os caminhos para os logs e outros recursos específicos do usuário (colocados no diretório do usuário) ficarão confusos.