Software vendors can generate, enrich, attest, and share compliance-ready SBOMs entirely within their existing CI/CD pipeline. The open source sbomify GitHub Action handles generation and enrichment from 11 data sources. SBOMs can be attested using GitHub's built-in SLSA provenance tooling for integrity verification, organized with SBOM hierarchy for complex products, and shared through a branded Trust Center — making compliance with EO 14028, EU CRA, and customer procurement requirements automatic.
Software vendors face growing pressure to provide Software Bills of Materials to their customers. Regulatory frameworks like Executive Order 14028 and the EU Cyber Resilience Act require it. Enterprise procurement contracts demand it. And security-conscious customers expect it as a baseline indicator of software transparency.
The challenge is not whether to produce SBOMs — it’s how to do it without creating a manual process that slows down releases, produces incomplete data, and falls out of date the moment a dependency changes. sbomify solves this by making SBOM generation, enrichment, attestation, and sharing a fully automated part of the CI/CD pipeline.
The Open Source sbomify GitHub Action
The foundation of sbomify’s vendor workflow is the sbomify GitHub Action — an open source action that integrates directly into GitHub Actions workflows. It handles the full SBOM generation process:
- Automatic ecosystem detection — The action analyzes your repository and identifies the technology stack (Node.js, Python, Go, Java, Rust, .NET, Ruby, and more)
- Best-tool selection — Rather than requiring you to choose and configure an SBOM generator, the action selects the most accurate generator for your ecosystem
- Format support — Generates SBOMs in CycloneDX or SPDX format, covering both dominant standards
- CI/CD native — Runs as part of your existing build pipeline, generating an SBOM with every build or release
For teams using GitHub Actions, adding SBOM generation is typically a matter of adding a few lines to an existing workflow file. For GitLab CI, Bitbucket Pipelines, or any other CI/CD system, sbomify provides a Docker image (sbomifyhub/sbomify-action) that runs anywhere. For a complete walkthrough, see the sbomify zero-to-hero guide.
Enrichment from 11 Data Sources
A common problem with SBOM generators is that they produce incomplete SBOMs. A package manager knows the component name and version, but often lacks supplier information, license details, or package descriptions — fields that regulations like NTIA minimum elements require.
sbomify addresses this with automatic enrichment. When an SBOM is ingested, sbomify cross-references every component against 11 data sources to fill in missing information:
- License resolution — Identifies the license for components where the generator couldn’t determine it, resolving ambiguous or multi-licensed packages
- Supplier identification — Maps components to their maintainers and publishing organizations
- Package metadata — Adds descriptions, homepage URLs, and repository links
- Vulnerability cross-referencing — Checks every component against Google OSV and other vulnerability databases
The result is a compliance-ready SBOM that meets NTIA minimum elements out of the box, without manual curation.
SBOM Attestation
Trust in an SBOM depends on knowing that it hasn’t been tampered with and that it genuinely came from the claimed source. When using GitHub Actions, the sbomify action pairs naturally with GitHub’s attest-build-provenance action to create a SLSA build provenance predicate in in-toto format. This provides:
- Integrity — Cryptographic proof that the SBOM hasn’t been modified since it was generated
- Provenance — Verification that the SBOM was produced by a specific CI/CD workflow, not manually assembled
- Independent verification — Anyone can verify the attestation using
gh attestation verify, removing the need to trust sbomify or any other intermediary
The workflow is straightforward: the sbomify action generates the SBOM and writes it to disk, then the attest-build-provenance action signs it. For details and a working example, see the attestation guide.
For regulated industries and high-assurance customers, attested SBOMs are becoming a baseline expectation.
SBOM Hierarchy for Complex Products
Real-world software products are rarely a single application with a single dependency tree. A typical SaaS product might include:
- A frontend application (React/TypeScript)
- Multiple backend services (Go, Python, Java)
- A data pipeline (Python/Spark)
- Infrastructure definitions (Terraform, Helm charts)
- Shared libraries used across services
sbomify’s SBOM hierarchy organizes this complexity with a three-level structure:
- Product — The top-level entity that customers purchase or use (e.g., “Acme Platform v3.2”)
- Projects — Individual services or deployable units within the product
- Components — The actual dependencies within each project
This structure means that both vendors and customers can navigate the SBOM at the right level of detail — product-level for procurement decisions, project-level for service-specific risk assessment, component-level for vulnerability investigation.
Trust Center: Professional SBOM Distribution
Sharing SBOMs through email attachments or file shares doesn’t scale. Customers need self-service access to current SBOMs, and vendors need to control who sees what.
The sbomify Trust Center solves this with a branded portal that vendors host on their own domain:
- Self-service access — Customers browse and download current SBOMs without submitting requests
- Automatic updates — SBOMs refresh with every CI/CD build, so the Trust Center always reflects the latest release
- Compliance documents — Publish SOC 2 reports, ISO 27001 certificates, pentest summaries, and other compliance artifacts alongside SBOMs
- Branded experience — The portal uses the vendor’s branding and can be hosted on their domain (e.g.,
trust.yourcompany.com) - Access control — Control which customers and partners can access which documents
For vendors, the Trust Center eliminates the operational overhead of responding to individual SBOM requests while demonstrating security maturity to prospective customers.
Compliance-Ready by Default
sbomify is designed so that vendors don’t need to understand every regulatory requirement in detail. The platform’s defaults produce SBOMs that meet:
- NTIA minimum elements — Supplier, component name, version, dependency relationships, author, timestamp
- EO 14028 requirements — Machine-readable format, complete dependency inventory, automated generation
- EU CRA obligations — Component documentation, vulnerability handling, update mechanisms
- PCI DSS 4.0 inventory requirements — Software component inventory with version tracking
By automating compliance into the generation and enrichment process, sbomify lets vendors focus on building software rather than interpreting regulatory text.
Self-Hostable Deployment
For organizations with strict data residency requirements or air-gapped environments, sbomify supports self-hosted deployment. This means SBOM data never leaves your infrastructure — the same generation, enrichment, and management capabilities are available on-premises.
The sbomify GitHub Action remains open source regardless of deployment model, ensuring that the core generation workflow is transparent and auditable.
Getting Started as a Vendor
The path from no SBOMs to fully automated SBOM management is straightforward:
- Add the sbomify GitHub Action to your CI/CD workflow. It detects your stack and generates SBOMs automatically.
- Connect to sbomify for enrichment, vulnerability monitoring, and centralized management.
- Organize with SBOM hierarchy — Map your product’s services and components into the product → project → component structure.
- Set up your Trust Center — Give customers self-service access to your SBOMs and compliance documents.
- Enable attestation — Pair with GitHub’s
attest-build-provenanceaction for cryptographic SBOM verification.
For a step-by-step walkthrough, see the zero-to-hero guide. For integration details across different ecosystems, see the integrations page.
Most teams go from zero to continuous SBOM generation in less than a day. The combination of open source tooling, automated enrichment, and a managed platform means that SBOM management no longer requires dedicated headcount or specialized expertise.
Found an error or typo? File a PR against this file.