You shouldn’t have to be root to use npm on a single user osx machine - try the following:
$ sudo chown -R [your-username] /usr/local
$ sudo chown -R [your-username] ~
The last two commands reclaim your user access rights for non-system related installed files and for all files/dirs in your own home directory.
From there on npm, brew and so on won’t need root permissions via sudo anymore, so even a
$ npm install -g spark-cli
should smoothly work!
Its a pure software issue without any connection to the Spark Core itself.