@expo/cli
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 |
|---|---|---|---|---|
| dependencies | unvetted-dep:@expo/metro-file-map | AI (dependencies): First-party Expo monorepo package; stable false positive for this package. | ai | |
| dependencies | unvetted-dep:toqr | AI (dependencies): QR code utility; expected dep for Expo CLI's dev server QR display. | ai | |
| dependencies | unvetted-dep:multitars | AI (dependencies): Tar utility; stable Expo CLI dependency across versions. | ai | |
| dependencies | unvetted-dep:lan-network | AI (dependencies): LAN discovery utility; expected for Expo CLI's network features. | ai | |
| dependencies | unvetted-dep:@expo/xcpretty | AI (dependencies): First-party Expo package; stable across versions. | ai | |
| dependencies | unvetted-dep:fetch-nodeshim | AI (dependencies): Fetch polyfill; stable Expo CLI dependency. | ai | |
| dependencies | unvetted-dep:@expo/osascript | AI (dependencies): First-party Expo package for macOS scripting; stable across versions. | ai | |
| dependencies | unvetted-dep:@expo/ws-tunnel | AI (dependencies): First-party Expo WebSocket tunnel package; stable across versions. | ai | |
| dependencies | unvetted-dep:@expo/code-signing-certificates | AI (dependencies): First-party Expo code signing package; stable across versions. | ai | |
| provenance | no-provenance | AI (provenance): Established Expo org package; lack of Sigstore provenance is consistent across all versions. | ai | |
| dependencies | unvetted-dep:dnssd-advertise | AI (dependencies): DNS-SD for local network discovery; expected Expo CLI dep. | ai | |
| dependencies | unvetted-dep:structured-headers | AI (dependencies): HTTP structured headers parser; stable Expo CLI dependency. | ai | |
| dependencies | unvetted-dep:@expo/router-server | AI (dependencies): First-party Expo Router server package; stable across versions. | ai | |
| dependencies | unvetted-dep:@expo/package-manager | AI (dependencies): First-party Expo package manager utility; stable across versions. | ai | |
| publish-pattern | new-deps-added | AI (publish-pattern): New deps are first-party @expo/ scoped packages from the same monorepo; not a supply-chain risk pattern. | ai | |
| typosquat | typosquat.levenshtein:joi | AI (typosquat): @expo/cli is the official Expo CLI; levenshtein match to 'joi' is a false positive for this scoped package. | ai |
Versions (showing 35 of 35)
| Version | Deps | Published |
|---|---|---|
| 56.1.13 | 57 / 46 | |
| 56.1.12 | 57 / 46 | |
| 56.1.11 | 57 / 46 | |
| 56.1.10 | 57 / 46 | |
| 56.1.9 | 57 / 46 | |
| 56.1.8 | 57 / 46 | |
| 56.1.7 | 57 / 46 | |
| 56.1.5 | 57 / 46 | |
| 56.1.4 | 58 / 46 | |
| 56.1.3 | 58 / 46 | |
| 56.1.2 | 58 / 46 | |
| 56.1.1 | 58 / 46 | |
| 56.1.0 | 58 / 46 | |
| 56.0.6 | 59 / 47 | |
| 56.0.5 | 59 / 47 | |
| 56.0.4 | 59 / 47 | |
| 56.0.3 | 59 / 47 | |
| 56.0.2 | 59 / 45 | |
| 56.0.1 | 59 / 45 | |
| 56.0.0 | 59 / 45 | |
| 55.0.32 | 57 / 40 | |
| 55.0.29 | 57 / 40 | |
| 55.0.28 | 57 / 40 | |
| 55.0.27 | 57 / 40 | |
| 55.0.23 | 57 / 40 | |
| 55.0.22 | 57 / 40 | |
| 55.0.21 | 57 / 40 | |
| 55.0.18 | 57 / 40 | |
| 55.0.16 | 57 / 40 | |
| 55.0.13 | 57 / 40 | |
| 55.0.11 | 57 / 40 | |
| 55.0.8 | 58 / 40 | |
| 55.0.2 | 65 / 45 | |
| 54.0.25 | 63 / 44 | |
| 54.0.24 | 63 / 44 |
v56.1.13
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.12
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.11
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 (alanhughes) than the most recent previously approved version (brentvatne) on 2026-05-23, but alanhughes 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.
v56.1.10
2 findingsThis version was published by a different npm account than previous versions on 2026-05-21. This could indicate a legitimate maintainer transition or an account compromise.
[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.9
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.8
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.7
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.5
2 findingsThis version was published by a different npm account than previous versions on 2026-05-15. This could indicate a legitimate maintainer transition or an account compromise.
[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.4
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.3
2 findingsThis version was published by a different npm account than previous versions on 2026-05-13. This could indicate a legitimate maintainer transition or an account compromise.
[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.2
2 findingsThis version was published by a different npm account than previous versions on 2026-05-12. This could indicate a legitimate maintainer transition or an account compromise.
[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.1
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.1.0
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.0.6
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.0.5
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.0.4
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.0.3
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.0.2
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.0.1
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v56.0.0
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v55.0.32
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v55.0.29
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v55.0.28
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v55.0.27
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v55.0.23
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v55.0.22
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v55.0.21
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v55.0.18
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v55.0.16
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v55.0.13
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v55.0.11
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v55.0.8
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v55.0.2
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v54.0.25
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v54.0.24
1 finding[Accepted risk] Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.