Skip to main content
Version: 4.x

pnpm list

Aliases: ls

This command will print to stdout all the versions of packages that are installed, as well as their dependencies, in a tree-structure.

Positional arguments are [email protected] identifiers, which will limit the results to only the packages named. For example, pnpm list babel-* eslint-* [email protected]


pnpm list [-r] [--filter <package selector>] [--depth <number>]          [<package pattern> ...]
pnpm recursive list [--filter <package selector>] [--depth <number>]                    [<package pattern> ...]


--recursive, -r#

Perform command on every package in subdirectories or on every workspace package, when executed inside a workspace.


Added in: 3.7.0

Show information in JSON format.


Show extended information.


Show parseable output instead of tree view.


List packages in the global install directory instead of in the current project.

--depth <number>#

Max display depth of the dependency tree.

pnpm ls --depth 0 will list direct dependencies only. pnpm ls --depth -1 will list projects only. Useful inside a workspace when used with the -r option.

--prod, -P#

Display only the dependency graph for packages in dependencies and optionalDependencies.

--dev, -D#

Display only the dependency graph for packages in devDependencies.


Don't display packages from optionalDependencies.

--filter <package_selector>#

Read more about filtering.