@hubspot/cli
The official CLI for developing on HubSpot
Supply chain provenance
Status for the latest visible version.
Without SLSA provenance there is no cryptographic link between this tarball and the public source, so a manually published version cannot be tied back to a reviewed commit.
Maintainers
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| publish-pattern | new-deps-added | AI (publish-pattern): semver is a trusted, widely-used dependency. | ai | |
| maintainer-change | maintainer-removed | AI (maintainer-change): Routine maintainer roster churn on long-lived official package. | ai | |
| maintainer-change | maintainer-added | AI (maintainer-change): brodgers16 is an existing known maintainer per provenance record. | ai | |
| semgrep | semgrep:env-bulk-read | AI (semgrep): Filtering npm_config_ keys from env for child process — legitimate CLI pattern, not exfiltration. | ai | |
| phantom-deps | phantom-dep:inquirer | AI (phantom-deps): inquirer is declared as a runtime dep and used via dynamic imports in a CLI; phantom-dep heuristic is a false positive here. | ai | |
| semgrep | semgrep:env-spread | AI (semgrep): Spreading process.env into child process spawn is standard CLI behavior for passing environment context. | ai | |
| phantom-deps | phantom-dep:js-yaml | AI (phantom-deps): js-yaml is listed in dependencies and @types/js-yaml in devDependencies; likely used indirectly or via config files. | ai | |
| typosquat | typosquat.levenshtein:joi | AI (typosquat): Scoped @hubspot/cli package; no relation to unscoped 'joi'. False positive from edit-distance heuristic. | ai | |
| semgrep | semgrep:api-obfuscation-reflect | AI (semgrep): Reflect.get used in a Proxy handler for terminal rendering — legitimate pattern, not obfuscation. | ai | |
| semgrep | semgrep:base64-decode | AI (semgrep): Decoding base64 component IDs for internal ID parsing; no malicious payload pattern. | ai |
Versions (showing 17 of 17)
| Version | Deps | Published |
|---|---|---|
| 8.10.0 | 31 / 29 | |
| 8.9.1 | 30 / 30 | |
| 8.9.0 | 30 / 30 | |
| 8.8.0 | 30 / 30 | |
| 8.7.0 | 30 / 30 | |
| 8.6.0 | 30 / 30 | |
| 8.5.0 | 30 / 30 | |
| 8.4.0 | 30 / 30 | |
| 8.3.0 | 30 / 30 | |
| 8.2.0 | 30 / 30 | |
| 8.1.0 | 31 / 30 | |
| 8.0.0 | 29 / 30 | |
| 7.11.3 | 27 / 30 | |
| 7.11.2 | 27 / 30 | |
| 7.11.1 | 27 / 30 | |
| 7.10.0 | 28 / 30 | |
| 7.9.0 | 28 / 30 |
v8.10.0
2 findingsPackage was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.
This version was published by a different npm account (brodgers16) than the most recent previously approved version (camdenphalen) on 2026-07-16, but brodgers16 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.