services / package-check
Package Check Before Install
Check dependencies before your coding agent installs them: up to 20 packages per call (npm, PyPI, crates.io, Go, Maven, NuGet, RubyGems), one decision each: ALLOW, CAUTION or BLOCK with reasons. Catches hallucinated package names that do not exist (slopsquatting), known malware (OSV malicious-package feed, including versions already removed from the registry), typosquats one typo away from a popular package, critical and high vulnerabilities in the exact version with a safe upgrade, deprecated or yanked versions, brand-new packages, npm install scripts and low usage. npm version ranges are resolved like npm does. Pass packages as strings ("express@4.17.1", "pypi:requests==2.31.0", "cargo:serde") or objects, or paste a package.json or requirements.txt as manifest. Sources: deps.dev, OSV.dev, the registries.
Call it
Input
| Field | Type | Description |
|---|---|---|
| packages | array | Strings like "express@4.17.1", "pypi:requests==2.31.0", "go:github.com/gin-gonic/gin", "maven:org.apache.logging.log4j:log4j-core:2.14.1", or {name, ecosystem, version} |
| ecosystem | string | Default for entries without a prefix: npm, pypi, cargo, go, maven, nuget or rubygems. Default npm |
| manifest | string | Contents of a package.json or requirements.txt (alternative to packages) |
Output
| Field | Type | Description |
|---|---|---|
| verdict | string | Worst decision over all packages: ALLOW, CAUTION or BLOCK |
| summary | object | |
| packages | array | |
| sources | string | |
| checked_at | string |