Run an npm script in each package that contains that script
Last updated a year ago by fberger .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @0x-lerna-fork/run 
SYNC missed versions from official npm registry.


Run an npm script in each package that contains that script

Install lerna for access to the lerna CLI.


$ lerna run <script> -- [..args] # runs npm run my-script in all packages that have it
$ lerna run test
$ lerna run build

# watch all packages and transpile on change, streaming prefixed output
$ lerna run --parallel watch

Run an npm script in each package that contains that script. A double-dash (--) is necessary to pass dashed arguments to the script execution.


lerna run respects the --concurrency, --scope, and --ignore flags (see Filter Flags).

$ lerna run --scope my-component test

--npm-client <client>

Must be an executable that knows how to run npm lifecycle scripts. The default --npm-client is npm.

$ lerna run build --npm-client=yarn

May also be configured in lerna.json:

  "command": {
    "run": {
      "npmClient": "yarn"


Stream output from child processes immediately, prefixed with the originating package name. This allows output from different packages to be interleaved.

$ lerna run watch --stream


Similar to --stream, but completely disregards concurrency and topological sorting, running a given command or script immediately in all matching packages with prefixed streaming output. This is the preferred flag for long-running processes such as npm run watch run over many packages.

$ lerna run watch --parallel

Note: It is advised to constrain the scope of this command when using the --parallel flag, as spawning dozens of subprocesses may be harmful to your shell's equanimity (or maximum file descriptor limit, for example). YMMV


# Run an npm script in all packages that contain it, ignoring non-zero (error) exit codes
$ lerna run --no-bail test

By default, lerna run will exit with an error if any script run returns a non-zero exit code. Pass --no-bail to disable this behavior, running the script in all packages that contain it regardless of exit code.


Disable package name prefixing when output is streaming (--stream or --parallel). This option can be useful when piping results to other processes, such as editor plugins.

Current Tags

  • 3.16.3                                ...           latest (a year ago)

3 Versions

  • 3.16.3                                ...           a year ago
  • 3.16.2                                ...           a year ago
  • 3.0.0-beta.22                                ...           2 years ago
Maintainers (2)
Today 0
This Week 0
This Month 5
Last Day 0
Last Week 1
Last Month 7
Dev Dependencies (0)

Copyright 2014 - 2016 © taobao.org |