I think the below function may be able to solve your prompt problem:
sudo () {
local command=$@
read -rp "Shall command $command be executed? (y/N): "
local YORN_RESP="$(grep -i "[YN]" <<<"${REPLY:0:1}" || echo 'N')"
if [[ "$YORN_RESP" == [Yy] ]]; then
command sudo "$@"
else
return 1
fi
}
As long as this function is loaded it will take precedence over the sudo
command, however it will not prevent people from executing /bin/sudo
directly.
For the no password sudo it sounds like you have already found the solution but you need to uncomment the following line in your /etc/sudoers
file:
%wheel ALL=(ALL) NOPASSWD: ALL