anchore/syft

CLI tool and library for generating a Software Bill of Materials from container images and filesystems

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 12 minutes ago
Added to GitGenius on September 6th, 2026
Created on May 7th, 2020
Open Issues & Pull Requests: 635 (+0)
GitHub issues: Enabled
Number of forks: 947
Total Stargazers: 9,533 (+0)
Total Subscribers: 72 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 3.3 days
Mean response time: 39.8 days
90th percentile: 67.1 days
Tracked items: 596

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "changelog-ignore" is answered fastest, typically in about 35 hours, while "binary-analysis" waits about 11 days. 57% of tracked open issues have had no activity in three months. Only 5% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 324
New in 7 days: 2
Closed in 7 days: 3
Avg open age: 608 days
Stale 30+ days: 288
Stale 90+ days: 229

Recent activity

Opened in 7 days: 2
Closed in 7 days: 2
Comments in 7 days: 0
Events in 7 days: 1

Top labels

  • bug (335)
  • enhancement (269)
  • good-first-issue (82)
  • changelog-ignore (45)
  • needs-investigation (36)
  • new-cataloger (23)
  • license (18)
  • binary-analysis (16)

Detailed Description

Syft is a CLI tool and Go library for generating a Software Bill of Materials from container images and filesystems.

The tool addresses the need to catalog software components within container images and filesystem hierarchies, which is essential for vulnerability tracking and supply chain security. Syft scans container images in multiple formats (OCI, Docker, Singularity) as well as local filesystems and archives, identifying packages across dozens of ecosystems including Alpine, Debian, RPM, Go, Python, Java, JavaScript, Ruby, Rust, PHP, and .NET. It outputs SBOMs in multiple standardized formats such as CycloneDX, SPDX, and Syft JSON, and can convert between these formats. The tool also supports creating signed SBOM attestations using the in-toto specification.

Syft is well-suited for teams building container-based systems who need to maintain visibility into their software dependencies for compliance and security purposes. It works particularly well when paired with vulnerability scanners like Grype for identifying known vulnerabilities in discovered packages. The tool's support for numerous packaging ecosystems and image formats makes it applicable across diverse technology stacks and deployment scenarios. Organizations already using container orchestration or managing container registries will find it integrates naturally into their existing workflows.

The project maintains active validation workflows and releases updates regularly. Development activity shows consistent attention to expanding ecosystem support and output format capabilities. The tool is actively maintained with ongoing improvements to scanning accuracy and format compatibility.