commander
the complete solution for node.js command-line programs
Supply chain provenance
Status for the latest visible version.
Without SLSA provenance there is no cryptographic link between this tarball and the public source — the axios compromise (March 2026) relied on exactly this gap.
Maintainers
Keywords
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| provenance | publisher-changed | AI (provenance): Legitimate maintainer transition from 2014; zhiyelee is a long-standing trusted publisher with 27 approved packages. | ai | |
| provenance | missing-githead | AI (provenance): Old publish from 2014 era; npm metadata conventions differed. Not a risk signal for commander. | ai | |
| semgrep | semgrep:child-process-import | AI (semgrep): Commander is a CLI framework that legitimately uses child_process to spawn sub-commands. This is a core, documented feature stable across all versions. | ai | |
| semgrep | semgrep:child-process-spawn | AI (semgrep): spawn() calls are used to launch user-defined CLI sub-commands — fundamental to commander's purpose. No malicious use; stable across all versions. | ai | |
| provenance | no-provenance | AI (provenance): Established package with 370M weekly downloads and 5000+ day history. Lack of Sigstore provenance is not a meaningful risk signal here. | ai |
Versions (showing 100 of 104)
| Version | Deps | Published |
|---|---|---|
| 15.0.0 | 0 / 9 | |
| 14.0.3 | 0 / 13 | |
| 14.0.2 | 0 / 13 | |
| 14.0.1 | 0 / 13 | |
| 14.0.0 | 0 / 13 | |
| 13.1.0 | 0 / 13 | |
| 13.0.0 | 0 / 13 | |
| 12.1.0 | 0 / 15 | |
| 12.0.0 | 0 / 15 | |
| 11.1.0 | 0 / 15 | |
| 11.0.0 | 0 / 15 | |
| 10.0.1 | 0 / 15 | |
| 10.0.0 | 0 / 15 | |
| 9.5.0 | 0 / 15 | |
| 9.4.1 | 0 / 15 | |
| 9.4.0 | 0 / 15 | |
| 9.3.0 | 0 / 15 | |
| 9.2.0 | 0 / 15 | |
| 9.1.0 | 0 / 15 | |
| 9.0.0 | 0 / 15 | |
| 8.3.0 | 0 / 12 | |
| 8.2.0 | 0 / 12 | |
| 8.1.0 | 0 / 12 | |
| 8.0.0 | 0 / 12 | |
| 7.2.0 | 0 / 12 | |
| 7.1.0 | 0 / 11 | |
| 7.0.0 | 0 / 10 | |
| 6.2.1 | 0 / 9 | |
| 6.2.0 | 0 / 9 | |
| 6.1.0 | 0 / 9 | |
| 6.0.0 | 0 / 9 | |
| 5.1.0 | 0 / 9 | |
| 5.0.0 | 0 / 9 | |
| 4.1.1 | 0 / 7 | |
| 4.1.0 | 0 / 7 | |
| 4.0.1 | 0 / 8 | |
| 4.0.0 | 0 / 8 | |
| 3.0.2 | 0 / 7 | |
| 3.0.1 | 0 / 7 | |
| 3.0.0 | 0 / 7 | |
| 2.20.3 | 0 / 7 | |
| 2.20.1 | 0 / 7 | |
| 2.20.0 | 0 / 7 | |
| 2.19.0 | 0 / 7 | |
| 2.18.0 | 0 / 7 | |
| 2.17.1 | 0 / 6 | |
| 2.17.0 | 0 / 6 | |
| 2.16.0 | 0 / 6 | |
| 2.15.1 | 0 / 6 | |
| 2.15.0 | 0 / 6 | |
| 2.14.1 | 0 / 6 | |
| 2.14.0 | 0 / 6 | |
| 2.13.0 | 0 / 4 | |
| 2.12.2 | 0 / 4 | |
| 2.12.1 | 0 / 4 | |
| 2.12.0 | 1 / 3 | |
| 2.11.0 | 0 / 2 | |
| 2.10.0 | 1 / 2 | |
| 2.9.0 | 1 / 2 | |
| 2.8.1 | 1 / 2 | |
| 2.8.0 | 1 / 2 | |
| 2.7.1 | 1 / 1 | |
| 2.7.0 | 1 / 1 | |
| 2.6.0 | 0 / 1 | |
| 2.5.1 | 0 / 1 | |
| 2.5.0 | 0 / 1 | |
| 2.4.0 | 0 / 1 | |
| 2.3.0 | 0 / 1 | |
| 2.2.0 | 0 / 1 | |
| 2.1.0 | 0 / 1 | |
| 2.0.0 | 0 / 1 | |
| 1.3.2 | 1 / 1 | |
| 1.3.1 | 1 / 1 | |
| 1.3.0 | 1 / 1 | |
| 1.2.0 | 1 / 1 | |
| 1.1.1 | 1 / 1 | |
| 1.1.0 | 1 / 1 | |
| 1.0.5 | 1 / 1 | |
| 1.0.4 | 1 / 1 | |
| 1.0.3 | 1 / 1 | |
| 1.0.2 | 1 / 1 | |
| 1.0.1 | 0 / 1 | |
| 1.0.0 | 0 / 1 | |
| 0.6.1 | 0 / 1 | |
| 0.6.0 | 0 / 1 | |
| 0.5.2 | 0 / 1 | |
| 0.5.1 | 0 / 1 | |
| 0.5.0 | 0 / 1 | |
| 0.4.3 | 0 / 1 | |
| 0.4.2 | 0 / 1 | |
| 0.4.1 | 0 / 1 | |
| 0.4.0 | 0 / 1 | |
| 0.3.3 | 0 / 1 | |
| 0.3.2 | 0 / 1 | |
| 0.3.1 | 0 / 1 | |
| 0.3.0 | 0 / 1 | |
| 0.2.1 | 0 / 1 | |
| 0.2.0 | 0 / 1 | |
| 0.1.0 | 0 / 1 | |
| 0.0.5 | 0 / 1 |
v15.0.0
2 findings[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
This version was published by a different npm account (abetomo) than the most recent previously approved version (shadowspawn) on 2026-05-29, but abetomo is listed as a maintainer on prior approved versions (matched on name). This looks like a manual publish by a known maintainer rather than a publisher change. Recorded as INFO for audit trail.