|
|
- npm-config(7) -- More than you probably want to know about npm configuration
- ============================================================================
-
- ## DESCRIPTION
-
- npm gets its configuration values from the following sources, sorted by priority:
-
- ### Command Line Flags
-
- Putting `--foo bar` on the command line sets the `foo` configuration
- parameter to `"bar"`. A `--` argument tells the cli parser to stop
- reading flags. Using `--flag` without specifying any value will set
- the value to `true`.
-
- Example: `--flag1 --flag2` will set both configuration parameters
- to `true`, while `--flag1 --flag2 bar` will set `flag1` to `true`,
- and `flag2` to `bar`. Finally, `--flag1 --flag2 -- bar` will set
- both configuration parameters to `true`, and the `bar` is taken
- as a command argument.
-
- ### Environment Variables
-
- Any environment variables that start with `npm_config_` will be
- interpreted as a configuration parameter. For example, putting
- `npm_config_foo=bar` in your environment will set the `foo`
- configuration parameter to `bar`. Any environment configurations that
- are not given a value will be given the value of `true`. Config
- values are case-insensitive, so `NPM_CONFIG_FOO=bar` will work the
- same. However, please note that inside [npm-scripts](/misc/scripts)
- npm will set its own environment variables and Node will prefer
- those lowercase versions over any uppercase ones that you might set.
- For details see [this issue](https://github.com/npm/npm/issues/14528).
-
- Notice that you need to use underscores instead of dashes, so `--allow-same-version`
- would become `npm_config_allow_same_version=true`.
-
- ### npmrc Files
-
- The four relevant files are:
-
- * per-project configuration file (`/path/to/my/project/.npmrc`)
- * per-user configuration file (defaults to `$HOME/.npmrc`; configurable via CLI
- option `--userconfig` or environment variable `$NPM_CONFIG_USERCONFIG`)
- * global configuration file (defaults to `$PREFIX/etc/npmrc`; configurable via
- CLI option `--globalconfig` or environment variable `$NPM_CONFIG_GLOBALCONFIG`)
- * npm's built-in configuration file (`/path/to/npm/npmrc`)
-
- See npmrc(5) for more details.
-
- ### Default Configs
-
- Run `npm config ls -l` to see a set of configuration parameters that are
- internal to npm, and are defaults if nothing else is specified.
-
- ## Shorthands and Other CLI Niceties
-
- The following shorthands are parsed on the command-line:
-
- * `-v`: `--version`
- * `-h`, `-?`, `--help`, `-H`: `--usage`
- * `-s`, `--silent`: `--loglevel silent`
- * `-q`, `--quiet`: `--loglevel warn`
- * `-d`: `--loglevel info`
- * `-dd`, `--verbose`: `--loglevel verbose`
- * `-ddd`: `--loglevel silly`
- * `-g`: `--global`
- * `-C`: `--prefix`
- * `-l`: `--long`
- * `-m`: `--message`
- * `-p`, `--porcelain`: `--parseable`
- * `-reg`: `--registry`
- * `-f`: `--force`
- * `-desc`: `--description`
- * `-S`: `--save`
- * `-P`: `--save-prod`
- * `-D`: `--save-dev`
- * `-O`: `--save-optional`
- * `-B`: `--save-bundle`
- * `-E`: `--save-exact`
- * `-y`: `--yes`
- * `-n`: `--yes false`
- * `ll` and `la` commands: `ls --long`
-
- If the specified configuration param resolves unambiguously to a known
- configuration parameter, then it is expanded to that configuration
- parameter. For example:
-
- npm ls --par
- # same as:
- npm ls --parseable
-
- If multiple single-character shorthands are strung together, and the
- resulting combination is unambiguously not some other configuration
- param, then it is expanded to its various component pieces. For
- example:
-
- npm ls -gpld
- # same as:
- npm ls --global --parseable --long --loglevel info
-
- ## Per-Package Config Settings
-
- When running scripts (see `npm-scripts(7)`) the package.json "config"
- keys are overwritten in the environment if there is a config param of
- `<name>[@<version>]:<key>`. For example, if the package.json has
- this:
-
- { "name" : "foo"
- , "config" : { "port" : "8080" }
- , "scripts" : { "start" : "node server.js" } }
-
- and the server.js is this:
-
- http.createServer(...).listen(process.env.npm_package_config_port)
-
- then the user could change the behavior by doing:
-
- npm config set foo:port 80
-
- See package.json(5) for more information.
-
- ## Config Settings
-
- ### access
-
- * Default: `restricted`
- * Type: Access
-
- When publishing scoped packages, the access level defaults to `restricted`. If
- you want your scoped package to be publicly viewable (and installable) set
- `--access=public`. The only valid values for `access` are `public` and
- `restricted`. Unscoped packages _always_ have an access level of `public`.
-
- ### allow-same-version
-
- * Default: false
- * Type: Boolean
-
- Prevents throwing an error when `npm version` is used to set the new version
- to the same value as the current version.
-
- ### always-auth
-
- * Default: false
- * Type: Boolean
-
- Force npm to always require authentication when accessing the registry,
- even for `GET` requests.
-
- ### also
-
- * Default: null
- * Type: String
-
- When "dev" or "development" and running local `npm shrinkwrap`,
- `npm outdated`, or `npm update`, is an alias for `--dev`.
-
- ### audit
-
- * Default: true
- * Type: Boolean
-
- When "true" submit audit reports alongside `npm install` runs to the default
- registry and all registries configured for scopes. See the documentation
- for npm-audit(1) for details on what is submitted.
-
- ### audit-level
-
- * Default: `"low"`
- * Type: `'low'`, `'moderate'`, `'high'`, `'critical'`
-
- The minimum level of vulnerability for `npm audit` to exit with
- a non-zero exit code.
-
- ### auth-type
-
- * Default: `'legacy'`
- * Type: `'legacy'`, `'sso'`, `'saml'`, `'oauth'`
-
- What authentication strategy to use with `adduser`/`login`.
-
- ### bin-links
-
- * Default: `true`
- * Type: Boolean
-
- Tells npm to create symlinks (or `.cmd` shims on Windows) for package
- executables.
-
- Set to false to have it not do this. This can be used to work around
- the fact that some file systems don't support symlinks, even on
- ostensibly Unix systems.
-
- ### browser
-
- * Default: OS X: `"open"`, Windows: `"start"`, Others: `"xdg-open"`
- * Type: String
-
- The browser that is called by the `npm docs` command to open websites.
-
- ### ca
-
- * Default: The npm CA certificate
- * Type: String, Array or null
-
- The Certificate Authority signing certificate that is trusted for SSL
- connections to the registry. Values should be in PEM format (Windows calls it "Base-64 encoded X.509 (.CER)") with newlines
- replaced by the string "\n". For example:
-
- ca="-----BEGIN CERTIFICATE-----\nXXXX\nXXXX\n-----END CERTIFICATE-----"
-
- Set to `null` to only allow "known" registrars, or to a specific CA cert
- to trust only that specific signing authority.
-
- Multiple CAs can be trusted by specifying an array of certificates:
-
- ca[]="..."
- ca[]="..."
-
- See also the `strict-ssl` config.
-
- ### cafile
-
- * Default: `null`
- * Type: path
-
- A path to a file containing one or multiple Certificate Authority signing
- certificates. Similar to the `ca` setting, but allows for multiple CA's, as
- well as for the CA information to be stored in a file on disk.
-
- ### cache
-
- * Default: Windows: `%AppData%\npm-cache`, Posix: `~/.npm`
- * Type: path
-
- The location of npm's cache directory. See `npm-cache(1)`
-
- ### cache-lock-stale
-
- * Default: 60000 (1 minute)
- * Type: Number
-
- The number of ms before cache folder lockfiles are considered stale.
-
- ### cache-lock-retries
-
- * Default: 10
- * Type: Number
-
- Number of times to retry to acquire a lock on cache folder lockfiles.
-
- ### cache-lock-wait
-
- * Default: 10000 (10 seconds)
- * Type: Number
-
- Number of ms to wait for cache lock files to expire.
-
- ### cache-max
-
- * Default: Infinity
- * Type: Number
-
- **DEPRECATED**: This option has been deprecated in favor of `--prefer-online`.
-
- `--cache-max=0` is an alias for `--prefer-online`.
-
- ### cache-min
-
- * Default: 10
- * Type: Number
-
- **DEPRECATED**: This option has been deprecated in favor of `--prefer-offline`.
-
- `--cache-min=9999 (or bigger)` is an alias for `--prefer-offline`.
-
- ### cert
-
- * Default: `null`
- * Type: String
-
- A client certificate to pass when accessing the registry. Values should be in
- PEM format (Windows calls it "Base-64 encoded X.509 (.CER)") with newlines replaced by the string "\n". For example:
-
- cert="-----BEGIN CERTIFICATE-----\nXXXX\nXXXX\n-----END CERTIFICATE-----"
-
- It is _not_ the path to a certificate file (and there is no "certfile" option).
-
- ### cidr
-
- * Default: `null`
- * Type: String, Array, null
-
- This is a list of CIDR address to be used when configuring limited access tokens with the `npm token create` command.
-
- ### color
-
- * Default: true
- * Type: Boolean or `"always"`
-
- If false, never shows colors. If `"always"` then always shows colors.
- If true, then only prints color codes for tty file descriptors.
-
- This option can also be changed using the environment: colors are
- disabled when the environment variable `NO_COLOR` is set to any value.
-
- ### depth
-
- * Default: Infinity
- * Type: Number
-
- The depth to go when recursing directories for `npm ls`,
- `npm cache ls`, and `npm outdated`.
-
- For `npm outdated`, a setting of `Infinity` will be treated as `0`
- since that gives more useful information. To show the outdated status
- of all packages and dependents, use a large integer value,
- e.g., `npm outdated --depth 9999`
-
- ### description
-
- * Default: true
- * Type: Boolean
-
- Show the description in `npm search`
-
- ### dev
-
- * Default: false
- * Type: Boolean
-
- Install `dev-dependencies` along with packages.
-
- ### dry-run
-
- * Default: false
- * Type: Boolean
-
- Indicates that you don't want npm to make any changes and that it should
- only report what it would have done. This can be passed into any of the
- commands that modify your local installation, eg, `install`, `update`,
- `dedupe`, `uninstall`. This is NOT currently honored by some network related
- commands, eg `dist-tags`, `owner`, etc.
-
- ### editor
-
- * Default: `EDITOR` environment variable if set, or `"vi"` on Posix,
- or `"notepad"` on Windows.
- * Type: path
-
- The command to run for `npm edit` or `npm config edit`.
-
- ### engine-strict
-
- * Default: false
- * Type: Boolean
-
- If set to true, then npm will stubbornly refuse to install (or even
- consider installing) any package that claims to not be compatible with
- the current Node.js version.
-
- ### force
-
- * Default: false
- * Type: Boolean
-
- Makes various commands more forceful.
-
- * lifecycle script failure does not block progress.
- * publishing clobbers previously published versions.
- * skips cache when requesting from the registry.
- * prevents checks against clobbering non-npm files.
-
- ### fetch-retries
-
- * Default: 2
- * Type: Number
-
- The "retries" config for the `retry` module to use when fetching
- packages from the registry.
-
- ### fetch-retry-factor
-
- * Default: 10
- * Type: Number
-
- The "factor" config for the `retry` module to use when fetching
- packages.
-
- ### fetch-retry-mintimeout
-
- * Default: 10000 (10 seconds)
- * Type: Number
-
- The "minTimeout" config for the `retry` module to use when fetching
- packages.
-
- ### fetch-retry-maxtimeout
-
- * Default: 60000 (1 minute)
- * Type: Number
-
- The "maxTimeout" config for the `retry` module to use when fetching
- packages.
-
- ### git
-
- * Default: `"git"`
- * Type: String
-
- The command to use for git commands. If git is installed on the
- computer, but is not in the `PATH`, then set this to the full path to
- the git binary.
-
- ### git-tag-version
-
- * Default: `true`
- * Type: Boolean
-
- Tag the commit when using the `npm version` command.
-
- ### commit-hooks
-
- * Default: `true`
- * Type: Boolean
-
- Run git commit hooks when using the `npm version` command.
-
- ### global
-
- * Default: false
- * Type: Boolean
-
- Operates in "global" mode, so that packages are installed into the
- `prefix` folder instead of the current working directory. See
- `npm-folders(5)` for more on the differences in behavior.
-
- * packages are installed into the `{prefix}/lib/node_modules` folder, instead of the
- current working directory.
- * bin files are linked to `{prefix}/bin`
- * man pages are linked to `{prefix}/share/man`
-
- ### globalconfig
-
- * Default: {prefix}/etc/npmrc
- * Type: path
-
- The config file to read for global config options.
-
- ### global-style
-
- * Default: false
- * Type: Boolean
-
- Causes npm to install the package into your local `node_modules` folder with
- the same layout it uses with the global `node_modules` folder. Only your
- direct dependencies will show in `node_modules` and everything they depend
- on will be flattened in their `node_modules` folders. This obviously will
- eliminate some deduping. If used with `legacy-bundling`, `legacy-bundling` will be
- preferred.
-
- ### group
-
- * Default: GID of the current process
- * Type: String or Number
-
- The group to use when running package scripts in global mode as the root
- user.
-
- ### heading
-
- * Default: `"npm"`
- * Type: String
-
- The string that starts all the debugging log output.
-
- ### https-proxy
-
- * Default: null
- * Type: url
-
- A proxy to use for outgoing https requests. If the `HTTPS_PROXY` or
- `https_proxy` or `HTTP_PROXY` or `http_proxy` environment variables are set,
- proxy settings will be honored by the underlying `request` library.
-
- ### if-present
-
- * Default: false
- * Type: Boolean
-
- If true, npm will not exit with an error code when `run-script` is invoked for
- a script that isn't defined in the `scripts` section of `package.json`. This
- option can be used when it's desirable to optionally run a script when it's
- present and fail if the script fails. This is useful, for example, when running
- scripts that may only apply for some builds in an otherwise generic CI setup.
-
- ### ignore-prepublish
-
- * Default: false
- * Type: Boolean
-
- If true, npm will not run `prepublish` scripts.
-
- ### ignore-scripts
-
- * Default: false
- * Type: Boolean
-
- If true, npm does not run scripts specified in package.json files.
-
- ### init-module
-
- * Default: ~/.npm-init.js
- * Type: path
-
- A module that will be loaded by the `npm init` command. See the
- documentation for the
- [init-package-json](https://github.com/isaacs/init-package-json) module
- for more information, or npm-init(1).
-
- ### init-author-name
-
- * Default: ""
- * Type: String
-
- The value `npm init` should use by default for the package author's name.
-
- ### init-author-email
-
- * Default: ""
- * Type: String
-
- The value `npm init` should use by default for the package author's email.
-
- ### init-author-url
-
- * Default: ""
- * Type: String
-
- The value `npm init` should use by default for the package author's homepage.
-
- ### init-license
-
- * Default: "ISC"
- * Type: String
-
- The value `npm init` should use by default for the package license.
-
- ### init-version
-
- * Default: "1.0.0"
- * Type: semver
-
- The value that `npm init` should use by default for the package
- version number, if not already set in package.json.
-
- ### json
-
- * Default: false
- * Type: Boolean
-
- Whether or not to output JSON data, rather than the normal output.
-
- This feature is currently experimental, and the output data structures for many
- commands is either not implemented in JSON yet, or subject to change. Only the
- output from `npm ls --json` and `npm search --json` are currently valid.
-
- ### key
-
- * Default: `null`
- * Type: String
-
- A client key to pass when accessing the registry. Values should be in PEM
- format with newlines replaced by the string "\n". For example:
-
- key="-----BEGIN PRIVATE KEY-----\nXXXX\nXXXX\n-----END PRIVATE KEY-----"
-
- It is _not_ the path to a key file (and there is no "keyfile" option).
-
- ### legacy-bundling
-
- * Default: false
- * Type: Boolean
-
- Causes npm to install the package such that versions of npm prior to 1.4,
- such as the one included with node 0.8, can install the package. This
- eliminates all automatic deduping. If used with `global-style` this option
- will be preferred.
-
- ### link
-
- * Default: false
- * Type: Boolean
-
- If true, then local installs will link if there is a suitable globally
- installed package.
-
- Note that this means that local installs can cause things to be
- installed into the global space at the same time. The link is only done
- if one of the two conditions are met:
-
- * The package is not already installed globally, or
- * the globally installed version is identical to the version that is
- being installed locally.
-
- ### local-address
-
- * Default: undefined
- * Type: IP Address
-
- The IP address of the local interface to use when making connections
- to the npm registry. Must be IPv4 in versions of Node prior to 0.12.
-
- ### loglevel
-
- * Default: "notice"
- * Type: String
- * Values: "silent", "error", "warn", "notice", "http", "timing", "info",
- "verbose", "silly"
-
- What level of logs to report. On failure, *all* logs are written to
- `npm-debug.log` in the current working directory.
-
- Any logs of a higher level than the setting are shown. The default is "notice".
-
- ### logstream
-
- * Default: process.stderr
- * Type: Stream
-
- This is the stream that is passed to the
- [npmlog](https://github.com/npm/npmlog) module at run time.
-
- It cannot be set from the command line, but if you are using npm
- programmatically, you may wish to send logs to somewhere other than
- stderr.
-
- If the `color` config is set to true, then this stream will receive
- colored output if it is a TTY.
-
- ### logs-max
-
- * Default: 10
- * Type: Number
-
- The maximum number of log files to store.
-
- ### long
-
- * Default: false
- * Type: Boolean
-
- Show extended information in `npm ls` and `npm search`.
-
- ### maxsockets
-
- * Default: 50
- * Type: Number
-
- The maximum number of connections to use per origin (protocol/host/port
- combination). Passed to the `http` `Agent` used to make the request.
-
- ### message
-
- * Default: "%s"
- * Type: String
-
- Commit message which is used by `npm version` when creating version commit.
-
- Any "%s" in the message will be replaced with the version number.
-
- ### metrics-registry
-
- * Default: The value of `registry` (which defaults to "https://registry.npmjs.org/")
- * Type: String
-
- The registry you want to send cli metrics to if `send-metrics` is true.
-
- ### node-options
-
- * Default: null
- * Type: String
-
- Options to pass through to Node.js via the `NODE_OPTIONS` environment
- variable. This does not impact how npm itself is executed but it does
- impact how lifecycle scripts are called.
-
- ### node-version
-
- * Default: process.version
- * Type: semver or false
-
- The node version to use when checking a package's `engines` map.
-
- ### noproxy
-
- * Default: null
- * Type: String or Array
-
- A comma-separated string or an array of domain extensions that a proxy should not be used for.
-
- ### offline
-
- * Default: false
- * Type: Boolean
-
- Force offline mode: no network requests will be done during install. To allow
- the CLI to fill in missing cache data, see `--prefer-offline`.
-
- ### onload-script
-
- * Default: false
- * Type: path
-
- A node module to `require()` when npm loads. Useful for programmatic
- usage.
-
- ### only
-
- * Default: null
- * Type: String
-
- When "dev" or "development" and running local `npm install` without any
- arguments, only devDependencies (and their dependencies) are installed.
-
- When "dev" or "development" and running local `npm ls`, `npm outdated`, or
- `npm update`, is an alias for `--dev`.
-
- When "prod" or "production" and running local `npm install` without any
- arguments, only non-devDependencies (and their dependencies) are
- installed.
-
- When "prod" or "production" and running local `npm ls`, `npm outdated`, or
- `npm update`, is an alias for `--production`.
-
- ### optional
-
- * Default: true
- * Type: Boolean
-
- Attempt to install packages in the `optionalDependencies` object. Note
- that if these packages fail to install, the overall installation
- process is not aborted.
-
- ### otp
-
- * Default: null
- * Type: Number
-
- This is a one-time password from a two-factor authenticator. It's needed
- when publishing or changing package permissions with `npm access`.
-
- ### package-lock
-
- * Default: true
- * Type: Boolean
-
- If set to false, then ignore `package-lock.json` files when installing. This
- will also prevent _writing_ `package-lock.json` if `save` is true.
-
- When package package-locks are disabled, automatic pruning of extraneous
- modules will also be disabled. To remove extraneous modules with
- package-locks disabled use `npm prune`.
-
- This option is an alias for `--shrinkwrap`.
-
- ### package-lock-only
-
- * Default: false
- * Type: Boolean
-
- If set to true, it will update only the `package-lock.json`,
- instead of checking `node_modules` and downloading dependencies.
-
- ### parseable
-
- * Default: false
- * Type: Boolean
-
- Output parseable results from commands that write to
- standard output. For `npm search`, this will be tab-separated table format.
-
- ### prefer-offline
-
- * Default: false
- * Type: Boolean
-
- If true, staleness checks for cached data will be bypassed, but missing data
- will be requested from the server. To force full offline mode, use `--offline`.
-
- This option is effectively equivalent to `--cache-min=9999999`.
-
- ### prefer-online
-
- * Default: false
- * Type: Boolean
-
- If true, staleness checks for cached data will be forced, making the CLI look
- for updates immediately even for fresh package data.
-
- ### prefix
-
- * Default: see npm-folders(5)
- * Type: path
-
- The location to install global items. If set on the command line, then
- it forces non-global commands to run in the specified folder.
-
- ### preid
-
- * Default: ""
- * Type: String
-
- The "prerelease identifier" to use as a prefix for the "prerelease" part of a
- semver. Like the `rc` in `1.2.0-rc.8`.
-
- ### production
-
- * Default: false
- * Type: Boolean
-
- Set to true to run in "production" mode.
-
- 1. devDependencies are not installed at the topmost level when running
- local `npm install` without any arguments.
- 2. Set the NODE_ENV="production" for lifecycle scripts.
-
- ### progress
-
- * Default: true, unless TRAVIS or CI env vars set.
- * Type: Boolean
-
- When set to `true`, npm will display a progress bar during time intensive
- operations, if `process.stderr` is a TTY.
-
- Set to `false` to suppress the progress bar.
-
- ### proxy
-
- * Default: null
- * Type: url
-
- A proxy to use for outgoing http requests. If the `HTTP_PROXY` or
- `http_proxy` environment variables are set, proxy settings will be
- honored by the underlying `request` library.
-
- ### read-only
-
- * Default: false
- * Type: Boolean
-
- This is used to mark a token as unable to publish when configuring limited access tokens with the `npm token create` command.
-
- ### rebuild-bundle
-
- * Default: true
- * Type: Boolean
-
- Rebuild bundled dependencies after installation.
-
- ### registry
-
- * Default: https://registry.npmjs.org/
- * Type: url
-
- The base URL of the npm package registry.
-
- ### rollback
-
- * Default: true
- * Type: Boolean
-
- Remove failed installs.
-
- ### save
-
- * Default: true
- * Type: Boolean
-
- Save installed packages to a package.json file as dependencies.
-
- When used with the `npm rm` command, it removes it from the `dependencies`
- object.
-
- Only works if there is already a package.json file present.
-
- ### save-bundle
-
- * Default: false
- * Type: Boolean
-
- If a package would be saved at install time by the use of `--save`,
- `--save-dev`, or `--save-optional`, then also put it in the
- `bundleDependencies` list.
-
- When used with the `npm rm` command, it removes it from the
- bundledDependencies list.
-
- ### save-prod
-
- * Default: false
- * Type: Boolean
-
- Makes sure that a package will be saved into `dependencies` specifically. This
- is useful if a package already exists in `devDependencies` or
- `optionalDependencies`, but you want to move it to be a production dep. This is
- also the default behavior if `--save` is true, and neither `--save-dev` or
- `--save-optional` are true.
-
- ### save-dev
-
- * Default: false
- * Type: Boolean
-
- Save installed packages to a package.json file as `devDependencies`.
-
- When used with the `npm rm` command, it removes it from the
- `devDependencies` object.
-
- Only works if there is already a package.json file present.
-
- ### save-exact
-
- * Default: false
- * Type: Boolean
-
- Dependencies saved to package.json using `--save`, `--save-dev` or
- `--save-optional` will be configured with an exact version rather than
- using npm's default semver range operator.
-
- ### save-optional
-
- * Default: false
- * Type: Boolean
-
- Save installed packages to a package.json file as
- optionalDependencies.
-
- When used with the `npm rm` command, it removes it from the
- `devDependencies` object.
-
- Only works if there is already a package.json file present.
-
- ### save-prefix
-
- * Default: '^'
- * Type: String
-
- Configure how versions of packages installed to a package.json file via
- `--save` or `--save-dev` get prefixed.
-
- For example if a package has version `1.2.3`, by default its version is
- set to `^1.2.3` which allows minor upgrades for that package, but after
- `npm config set save-prefix='~'` it would be set to `~1.2.3` which only allows
- patch upgrades.
-
- ### scope
-
- * Default: the scope of the current project, if any, or ""
- * Type: String
-
- Associate an operation with a scope for a scoped registry. Useful when logging
- in to a private registry for the first time:
- `npm login --scope=@organization --registry=registry.organization.com`, which
- will cause `@organization` to be mapped to the registry for future installation
- of packages specified according to the pattern `@organization/package`.
-
- ### script-shell
-
- * Default: `null`
- * Type: path
-
- The shell to use for scripts run with the `npm run` command.
-
- ### scripts-prepend-node-path
-
- * Default: "warn-only"
- * Type: Boolean, `"auto"` or `"warn-only"`
-
- If set to `true`, add the directory in which the current `node` executable
- resides to the `PATH` environment variable when running scripts,
- even if that means that `npm` will invoke a different `node` executable than
- the one which it is running.
-
- If set to `false`, never modify `PATH` with that.
-
- If set to `"warn-only"`, never modify `PATH` but print a warning if `npm` thinks
- that you may want to run it with `true`, e.g. because the `node` executable
- in the `PATH` is not the one `npm` was invoked with.
-
- If set to `auto`, only add that directory to the `PATH` environment variable
- if the `node` executable with which `npm` was invoked and the one that is found
- first on the `PATH` are different.
-
- ### searchexclude
-
- * Default: ""
- * Type: String
-
- Space-separated options that limit the results from search.
-
- ### searchopts
-
- * Default: ""
- * Type: String
-
- Space-separated options that are always passed to search.
-
- ### searchlimit
-
- * Default: 20
- * Type: Number
-
- Number of items to limit search results to. Will not apply at all to legacy
- searches.
-
- ### searchstaleness
-
- * Default: 900 (15 minutes)
- * Type: Number
-
- The age of the cache, in seconds, before another registry request is made if
- using legacy search endpoint.
-
- ### send-metrics
-
- * Default: false
- * Type: Boolean
-
- If true, success/failure metrics will be reported to the registry stored in
- `metrics-registry`. These requests contain the number of successful and
- failing runs of the npm CLI and the time period overwhich those counts were
- gathered. No identifying information is included in these requests.
-
- ### shell
-
- * Default: SHELL environment variable, or "bash" on Posix, or "cmd" on
- Windows
- * Type: path
-
- The shell to run for the `npm explore` command.
-
- ### shrinkwrap
-
- * Default: true
- * Type: Boolean
-
- If set to false, then ignore `npm-shrinkwrap.json` files when installing. This
- will also prevent _writing_ `npm-shrinkwrap.json` if `save` is true.
-
- This option is an alias for `--package-lock`.
-
- ### sign-git-commit
-
- * Default: false
- * Type: Boolean
-
- If set to true, then the `npm version` command will commit the new package
- version using `-S` to add a signature.
-
- Note that git requires you to have set up GPG keys in your git configs
- for this to work properly.
-
- ### sign-git-tag
-
- * Default: false
- * Type: Boolean
-
- If set to true, then the `npm version` command will tag the version
- using `-s` to add a signature.
-
- Note that git requires you to have set up GPG keys in your git configs
- for this to work properly.
-
- ### sso-poll-frequency
-
- * Default: 500
- * Type: Number
-
- When used with SSO-enabled `auth-type`s, configures how regularly the registry
- should be polled while the user is completing authentication.
-
- ### sso-type
-
- * Default: 'oauth'
- * Type: 'oauth', 'saml', or null
-
- If `--auth-type=sso`, the type of SSO type to use.
-
- ### strict-ssl
-
- * Default: true
- * Type: Boolean
-
- Whether or not to do SSL key validation when making requests to the
- registry via https.
-
- See also the `ca` config.
-
- ### tag
-
- * Default: latest
- * Type: String
-
- If you ask npm to install a package and don't tell it a specific version, then
- it will install the specified tag.
-
- Also the tag that is added to the package@version specified by the `npm
- tag` command, if no explicit tag is given.
-
- ### tag-version-prefix
-
- * Default: `"v"`
- * Type: String
-
- If set, alters the prefix used when tagging a new version when performing a
- version increment using `npm-version`. To remove the prefix altogether, set it
- to the empty string: `""`.
-
- Because other tools may rely on the convention that npm version tags look like
- `v1.0.0`, _only use this property if it is absolutely necessary_. In
- particular, use care when overriding this setting for public packages.
-
- ### timing
-
- * Default: `false`
- * Type: Boolean
-
- If true, writes an `npm-debug` log to `_logs` and timing information to
- `_timing.json`, both in your cache. `_timing.json` is a newline delimited
- list of JSON objects. You can quickly view it with this
- [json](https://www.npmjs.com/package/json) command line:
- `json -g < ~/.npm/_timing.json`.
-
- ### tmp
-
- * Default: TMPDIR environment variable, or "/tmp"
- * Type: path
-
- Where to store temporary files and folders. All temp files are deleted
- on success, but left behind on failure for forensic purposes.
-
- ### unicode
-
- * Default: false on windows, true on mac/unix systems with a unicode locale
- * Type: Boolean
-
- When set to true, npm uses unicode characters in the tree output. When
- false, it uses ascii characters to draw trees.
-
- ### unsafe-perm
-
- * Default: false if running as root, true otherwise
- * Type: Boolean
-
- Set to true to suppress the UID/GID switching when running package
- scripts. If set explicitly to false, then installing as a non-root user
- will fail.
-
- ### update-notifier
-
- * Default: true
- * Type: Boolean
-
- Set to false to suppress the update notification when using an older
- version of npm than the latest.
-
- ### usage
-
- * Default: false
- * Type: Boolean
-
- Set to show short usage output (like the -H output)
- instead of complete help when doing `npm-help(1)`.
-
- ### user
-
- * Default: "nobody"
- * Type: String or Number
-
- The UID to set to when running package scripts as root.
-
- ### userconfig
-
- * Default: ~/.npmrc
- * Type: path
-
- The location of user-level configuration settings.
-
- ### umask
-
- * Default: 022
- * Type: Octal numeric string in range 0000..0777 (0..511)
-
- The "umask" value to use when setting the file creation mode on files
- and folders.
-
- Folders and executables are given a mode which is `0777` masked against
- this value. Other files are given a mode which is `0666` masked against
- this value. Thus, the defaults are `0755` and `0644` respectively.
-
- ### user-agent
-
- * Default: node/{process.version} {process.platform} {process.arch}
- * Type: String
-
- Sets a User-Agent to the request header
-
- ### version
-
- * Default: false
- * Type: boolean
-
- If true, output the npm version and exit successfully.
-
- Only relevant when specified explicitly on the command line.
-
- ### versions
-
- * Default: false
- * Type: boolean
-
- If true, output the npm version as well as node's `process.versions` map, and
- exit successfully.
-
- Only relevant when specified explicitly on the command line.
-
- ### viewer
-
- * Default: "man" on Posix, "browser" on Windows
- * Type: path
-
- The program to use to view help content.
-
- Set to `"browser"` to view html help content in the default web browser.
-
- ## SEE ALSO
-
- * npm-config(1)
- * npmrc(5)
- * npm-scripts(7)
- * npm-folders(5)
- * npm(1)
|