You can opt out by npm install -no-save and and npm uninstall -no-save, right? This affected both npm install and npm uninstall, right? Anything else? I think this is great ? but coming from HN discussion where a user hated it, so questions on opting out: This was implemented in npm 5, apparently by c0d73db That said, patches to any or all of the above would be most welcome, and would pave the way towards an improved shrinkwrap experience (and install experience) where setting -save to true would be a lot more pleasant / less confusing for everyone. I don’t think it’s in the best interests, as a result, to opt everyone into saving everything by default. There are further complications related to shrinkwrap, although I think those are best considered bugs in shrinkwrap’s current implementation.Moving packages between sections in package.json is still a little more difficult than it should be, which makes cleaning up after things when you forget to specify that somethign is a devDependency.While the cognitive load of having to remember -save or -save-dev at install time is an irritating niggle, it does force you to choose at install time whether a package is a dependency or devDependency.That said, there are still a number of rough spots when making -save the default: It’s also easy enough to run npm config set save true as an end users.To point, npm outdated doesn't show devDependencies if "save=true" in ~/.npmrc #6567 has also been addressed.npmrc files now work as expected, answering ember-cli’s need to be able to set this as the default on a per-project basis. In the last couple years, quite a bit has changed here, which renders parts of this issue moot: