^ はキャレット (caret) と読む。

プロジェクトのルートに、 .npmrc というファイルをつくって、

save-exact=true

と書くと、^が自動的につかなくなる。

npmの設定を一覧するには

$ npm config list

マシン全体で設定してしまいたいときは

$ npm config set save-exact=true

他に、

save-prefix='~'

というconfigの書き方もあるっぽい

参考: Change npm default caret(^) in package.json