Potresti scrivere un breve script ed eseguirlo via cron ogni paio di minuti. 
pmset -g batt
 L'esecuzione di quanto sopra mostrerà il tuo attuale utilizzo della batteria. Puoi quindi analizzarlo e puoi avvisarti con qualcosa del tipo: 
say "low battery power"
 Ciò significa "batteria scarica" o per emettere un segnale acustico: 
printf "\a"
 Ho un desktop, quindi non posso vedere l'output del pmset, un rapido google mostra qualcosa del genere lo farebbe: 
if [[ 'pmset -g batt | awk -F'[^0-9]*' '{ print $3 }'' -lt 10 ]];then say "Battery low";fi
 Puoi metterlo in un cron da eseguire ogni 5 minuti circa. 
 Per aggiungere questo a cron per l'esecuzione ogni 5 minuti, fai: 
crontab -e
 e inserisci una riga simile a questa: 
*/5  *  *  *  *  if [[ 'pmset -g batt | awk -F'[^0-9]*' '{ print $3 }'' -lt 10 ]];then say "Battery low";fi
 Quindi salva e esci. L'editor di crontab sarà quello impostato come editor predefinito in $ EDITOR. Per me che vim, OSX predefinito è nano. 
crontab -l
 Questo elenca il tuo crontab. Per maggiori informazioni vedi:  inserisci la descrizione del link qui  
 Per usare launchd, sarebbe meglio metterlo in uno script di shell, quindi inserire un file plist di launchd nella tua cartella ~ / Library / LaunchDaemons. Questo è un po 'fuori dalla portata di questa risposta, Lingon è un ottimo strumento per controllare i file LaunchD. Vedi  LaunchD  per ulteriori informazioni. Lo script di shell sarebbe lo stesso comando usato sopra, con 
#!/bin/sh
 come prima riga. Salvalo da qualche parte, fallo avviare LaunchD.