Can I add a debug script to NPM?

In your package.json define the script

"scripts": {
  "debug": "node --inspect server.js"
}

And then you can use npm's run-script

npm run-script debug

or the shorter version

npm run debug

From the nodejs docs:

The legacy debugger has been deprecated as of Node 7.7.0. Please use --inspect and Inspector instead.

So starting from Node 7.7.0v use --inspect


VS Code adds a debug button inline in the package.json file

  1. Open package.json and click debug above scripts section

    code npm package debug

  2. Select script to debug

    code npm package debug options

  3. Debugger should be attached

    code debugger


for remote debug get npm-cli.js path

> npm --verbose
npm info it worked if it ends with ok
npm verb cli [
npm verb cli   'C:\\Program Files\\nodejs\\node.exe',
npm verb cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
npm verb cli   '--verbose'
npm verb cli ]
npm info using [email protected]
npm info using [email protected]

then

node --inspect-brk "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" run your-npm-script

for mac or linux

➜  ~ npm --verbose
npm info it worked if it ends with ok
npm verb cli [
npm verb cli   '/usr/local/Cellar/node@14/14.18.2/bin/node',
npm verb cli   '/usr/local/bin/npm',
npm verb cli   '--verbose'
npm verb cli ]
npm info using [email protected]
npm info using [email protected]
node --inspect-brk "/usr/local/bin/npm" run your-npm-script