@osv verifica as dependências fixadas do projeto contra a base pública OSV.dev — keyless, sem API key e sem CLI externa. Inspirado no osv_check do hermes-agent, implementado nativamente em Go.
Subcomandos
scan {path}
Lê um manifesto (ou um diretório que contenha um) e checa cada dependência fixada:
| Ecossistema | Manifesto |
|---|---|
| Go | go.mod |
| PyPI | requirements.txt (pins ==) |
| npm | package-lock.json (v1 e v2+) |
| crates.io | Cargo.lock |
path padrão é o diretório atual; um diretório é resolvido para o primeiro manifesto suportado encontrado.
check {ecosystem, package, version}
Verifica uma única dependência. Ecossistemas: Go | PyPI | npm | crates.io | Maven | RubyGems | NuGet | Packagist.
Saída
Para cada dependência vulnerável, lista o ID do advisory, aliases (CVE/GHSA), severidade (CVSS) e um resumo:✅ No known vulnerabilities found.
Notas
- É read-only e concurrency-safe — o orquestrador pode rodar vários
@osvem paralelo. - Falhas transitórias de rede em deps individuais são puladas sem abortar o scan inteiro.
- Por ser keyless e baseado em HTTP público, funciona em qualquer SO.