usb
Library to access USB devices
Supply chain provenance
Status for the latest visible version.
Maintainers
Keywords
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| semgrep | semgrep:child-process-import | AI (semgrep): Standard napi-rs musl detection boilerplate; stable for this package. | ai | |
| semgrep | semgrep:child-process-execsync | AI (semgrep): execSync('ldd --version') for musl detection; standard napi-rs pattern. | ai | |
| semgrep | semgrep:dynamic-require | AI (semgrep): Loads native binary via NAPI_RS_NATIVE_LIBRARY_PATH; standard napi-rs pattern. | ai | |
| provenance | publisher-changed | AI (provenance): Transition to GitHub Actions CI/CD publishing with SLSA provenance; legitimate for this package. | ai | |
| install-scripts | install-script:install | AI (install-scripts): node-gyp-build is the standard install mechanism for native addons with prebuildify prebuilts; expected for a USB hardware binding. | ai | |
| phantom-deps | phantom-dep:@types/w3c-web-usb | AI (phantom-deps): TypeScript type definitions package; consumed by the type system, not via direct JS imports. | ai | |
| npm-metadata | bundled-binaries | AI (npm-metadata): Prebuilt .node binaries for multiple platforms are the standard prebuildify pattern for native Node.js addons. | ai | |
| typosquat | typosquat.levenshtein:qs | AI (typosquat): False positive. 'usb' is a descriptive name for a USB library with 368k weekly downloads; not a typosquat of 'qs'. | ai | |
| phantom-deps | phantom-dep:node-addon-api | AI (phantom-deps): node-addon-api is consumed at the C++ native addon build level (binding.gyp), not via JS imports. | ai |
Versions (showing 4 of 4)
| Version | Deps | Published |
|---|---|---|
| 3.0.0 | 1 / 5 | |
| 2.18.0 | 3 / 12 | |
| 2.17.0 | 3 / 12 | |
| 2.9.0 | 3 / 12 |
v3.0.0
2 findingsThis version was published by a different npm account than previous versions on 2026-06-06. This could indicate a legitimate maintainer transition or an account compromise.
Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.
v2.18.0
1 findingPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
v2.17.0
3 findingsScript: node-gyp-build
Package contains compiled binaries that could be backdoors: • prebuilds/linux-arm/node.napi.armv6.node • prebuilds/android-arm/node.napi.armv7.node • prebuilds/linux-arm/node.napi.armv7.node • prebuilds/android-arm64/node.napi.armv8.node • prebuilds/linux-arm64/node.napi.armv8.node • prebuilds/linux-x64/node.napi.glibc.node • prebuilds/linux-x64/node.napi.musl.node • prebuilds/linux-ia32/node.napi.node • prebuilds/win32-arm64/node.napi.node • prebuilds/win32-ia32/node.napi.node ... and 1 more
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v2.9.0
1 findingPackage was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.