Esse é o erro que o launchctl dá quando você não faz parte do tipo de sessão apropriado. Nesse caso, parece que você está tentando carregar o item de inicialização em uma sessão do Aqua (ou seja, login da GUI), e isso está falhando porque você não está executando em uma sessão desse tipo. Você está entrando no computador ou algo parecido?
BTW, o motivo pelo qual ele funciona quando sudoed é que executar launchctl como root sempre fala com a sessão do sistema (aparentemente isso substitui a opção -S Aqua
), que está sempre lá.