Skip to main content
The @osv tool checks the project’s pinned dependencies against the public OSV.dev database — keyless, no API key and no external CLI. Inspired by hermes-agent’s osv_check, implemented natively in Go.

Subcommands

scan {path}

Reads a manifest (or a directory containing one) and checks every pinned dependency: path defaults to the current directory; a directory is resolved to the first supported manifest found.

check {ecosystem, package, version}

Checks a single dependency. Ecosystems: Go | PyPI | npm | crates.io | Maven | RubyGems | NuGet | Packagist.

Output

For each vulnerable dependency it lists the advisory ID, aliases (CVE/GHSA), severity (CVSS) and a summary:
When nothing is found: ✅ No known vulnerabilities found.

Notes

  • It is read-only and concurrency-safe — the orchestrator can fan out multiple @osv calls in parallel.
  • Transient network failures on individual deps are skipped without aborting the whole scan.
  • Being keyless and HTTP-based, it works on any OS.
Combine with the Scheduler for a periodic scan and @send to notify you when a new CVE appears in your dependencies.