nano-spawn
Tiny process execution for humans — a better child_process
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): Known legitimate transfer: ehmicky is a co-author of nano-spawn and a well-established npm publisher. Repository remains under sindresorhus/nano-spawn. | ai | |
| maintainer-change | maintainer-added | AI (maintainer-change): ehmicky is a documented co-maintainer of nano-spawn; this is a legitimate handoff, not a suspicious takeover. | ai | |
| semgrep | semgrep:env-spread | AI (semgrep): nano-spawn is a child_process wrapper; merging process.env with user-supplied env overrides is the canonical and expected pattern for spawning subprocesses. No exfiltration risk. | ai |
Versions (showing 10 of 10)
| Version | Deps | Published |
|---|---|---|
| 2.1.0 | 0 / 11 | |
| 2.0.0 | 0 / 11 | |
| 1.0.3 | 0 / 11 | |
| 1.0.2 | 0 / 11 | |
| 1.0.1 | 0 / 11 | |
| 1.0.0 | 0 / 11 | |
| 0.2.1 | 0 / 11 | |
| 0.2.0 | 0 / 10 | |
| 0.1.0 | 0 / 10 | |
| 0.0.1 | 0 / 3 |
v2.1.0
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/sindresorhus/nano-spawn/blob/cc231e2c7b1e434a96f25f907ca2cb2f7c596e90/source/options.js#L16 14 | }) => { 15 | const cwd = cwdOption instanceof URL ? fileURLToPath(cwdOption) : path.resolve(cwdOption); > 16 | const env = envOption ? {...process.env, ...envOption} : undefined; 17 | const input = stdio[0]?.string; 18 | return {
Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v2.0.0
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.0.3
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.0.2
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.0.1
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v1.0.0
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.2.1
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.2.0
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.1.0
2 findingsThis version was published by a different npm account than previous versions on 2024-09-08. This could indicate a legitimate maintainer transition or an account compromise.
Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v0.0.1
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.