{"adoption": {"forks": 868, "observed_at": "2026-08-28T04:10:59.812320+00:00", "stars": 12789}, "canonical_url": "https://ross.abutalabs.com/products/grype", "card": {"archived": false, "artifact_type": "cli-tool", "description": "A vulnerability scanner for container images and filesystems", "domain": ["security", "developer-tools"], "enriched": true, "function": ["vulnerability-scanning", "security", "cli", "developer-tools"], "health_score": 100, "homepage": null, "language": "Go", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["anchore/grype"], "name": "anchore/grype", "platform": ["windows", "cli", "go"], "pushed_at": "2026-08-26T19:39:34+00:00", "repo": "anchore/grype", "stars": 12789, "tags": ["sbom", "cve", "container-security", "openvex", "cyclonedx", "static-analysis", "anchore", "containers", "devops", "linux", "macos", "docker"], "topics": ["containers", "security", "vulnerability", "docker", "golang", "go", "static-analysis", "container-image", "tool", "oci", "cyclonedx", "vulnerabilities", "hacktoberfest", "openvex", "vex"], "urls": [], "use_cases": ["scan docker images for known vulnerabilities", "find CVEs in a container image before deploying", "scan a filesystem or SBOM for vulnerable packages", "check if my dependencies have security vulnerabilities", "prioritize vulnerabilities with EPSS and KEV data", "integrate vulnerability scanning into CI/CD pipeline", "generate vulnerability reports for OCI images"], "what_it_is": "Grype is an open-source vulnerability scanner for container images, filesystems, and SBOMs, written in Go by Anchore. It identifies known CVEs across OS and language package ecosystems and supports risk prioritization via EPSS, KEV, and OpenVEX filtering.", "when_to_avoid": ["you need full runtime container security monitoring rather than static scanning", "you require a managed scanning service with a dashboard and policy enforcement", "you need binary-level analysis of proprietary executables without package metadata"], "when_to_choose": ["you need fast, local vulnerability scanning of container images or filesystems", "you want SBOM-based scanning with CycloneDX or Syft integration", "you need OpenVEX support for filtering false positives", "you want a free CLI alternative to commercial container scanners"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/grype", "repo": "anchore/grype", "role": "main", "score": 98}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:59.812320+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:13:47.305141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d9b2254206a96b6d1041cc408d7506f5731c00452eec0198ca6230b252846774", "fetched_at": "2026-08-28T04:10:59.812320+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anchore/grype"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 97}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2290, "days_push": 7, "days_rel": 23, "gap_med": 9, "n_releases_24m": 60}, "score": 98, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}