cross-env
Run scripts that set and use environment variables across platforms
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 |
|---|---|---|---|---|
| semgrep | semgrep:env-spread | AI (semgrep): cross-env intentionally spreads process.env to construct the child process environment — this is the package's core functionality, not a secret-capture risk. Stable false positive for this package. | ai | |
| dependencies | unvetted-dep:@epic-web/invariant | AI (dependencies): @epic-web/invariant is published by the same author (kentcdodds) under his own @epic-web scope; stable false positive for this package. | ai |
v10.0.0
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v7.0.3
2 findingsSpreading entire process.env into an object — may capture all secrets Source: https://github.com/kentcdodds/cross-env/blob/bb0287b199c3e4cea5c0e1a20ef0c8d78db1aaa4/src/index.js#L87 85 | 86 | function getEnvVars(envSetters) { > 87 | const envVars = {...process.env} 88 | if (process.env.APPDATA) { 89 | envVars.APPDATA = process.env.APPDATA
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.