{
  "@context": "https://spdx.org/rdf/3.0.1/spdx-context.jsonld",
  "@graph": [
    {
      "@id": "_:creationInfo_0",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd0"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/additionalToolSPDXRef-gnrtd1"
      ],
      "created": "2026-08-01T17:55:59Z"
    },
    {
      "@id": "_:creationInfo_1",
      "type": "CreationInfo",
      "specVersion": "3.0.1",
      "createdBy": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd2"
      ],
      "createdUsing": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/additionalToolSPDXRef-gnrtd3"
      ],
      "created": "2026-08-01T17:55:59Z"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14292",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14287",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14302",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14299",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14296",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14293",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22084",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd4347"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22078",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14290",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14287",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14284",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14281",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22086",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd4347"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22078",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14298",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14293",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14286",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14281",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14065",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14066"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14046",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14304",
      "type": "Relationship",
      "relationshipType": "hasDeclaredLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14299",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14062",
      "type": "Relationship",
      "relationshipType": "hasConcludedLicense",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14063"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14046",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22083",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14293"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22078",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22082",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14287"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22078",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22080",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14046"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22078",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22081",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14281"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22078",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22079",
      "type": "LifecycleScopedRelationship",
      "relationshipType": "dependsOn",
      "scope": "build",
      "completeness": "noAssertion",
      "to": [
        "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14299"
      ],
      "from": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22078",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14066",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and Apache-2.0 and ISC and BSD and AFL-2.1",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd158",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14063",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MIT and Apache-2.0 and ISC and BSD and AFL-2.1",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd4347",
      "type": "simplelicensing_LicenseExpression",
      "simplelicensing_licenseExpression": "MulanPSL-2.0",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14285",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14064",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14297",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14303",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14291",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22085",
      "type": "Organization",
      "name": "http://openeuler.org",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14299",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14303",
      "software_downloadLocation": "NOASSERTION",
      "summary": "AI coding agent built for the terminal",
      "software_packageVersion": "0:1.3.17-1.oe2403sp3",
      "software_homePage": "https://github.com/anomalyco/opencode",
      "description": "OpenCode is an open source AI coding agent for the terminal. This package builds\nthe upstream CLI from the tagged source tree and installs the native OpenCode\nbinary as `/usr/bin/opencode` for openEuler.",
      "name": "opencode",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d96f7206249b192484cd473c7213938a2173442406260d9a32d8f941053a6c53-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/opencode@1.3.17-1.oe2403sp3?arch=x86_64&epoch=0&upstream=witty-opencode-1.3.17-1.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14293",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14297",
      "software_downloadLocation": "NOASSERTION",
      "summary": "AI coding agent built for the terminal",
      "software_packageVersion": "0:1.15.5-1.oe2403sp3",
      "software_homePage": "https://github.com/anomalyco/opencode",
      "description": "OpenCode is an open source AI coding agent for the terminal. This package builds\nthe upstream CLI from the tagged source tree and installs the native OpenCode\nbinary as `/usr/bin/opencode` for openEuler.",
      "name": "opencode",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d96f7206249b192484cd473c7213938a2173442406260d9a32d8f941053a6c53-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/opencode@1.15.5-1.oe2403sp3?arch=x86_64&epoch=0&upstream=witty-opencode-1.15.5-1.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14287",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14291",
      "software_downloadLocation": "NOASSERTION",
      "summary": "AI coding agent built for the terminal",
      "software_packageVersion": "0:1.15.10-1.oe2403sp3",
      "software_homePage": "https://github.com/anomalyco/opencode",
      "description": "OpenCode is an open source AI coding agent for the terminal. This package builds\nthe upstream CLI from the tagged source tree and installs the native OpenCode\nbinary as `/usr/bin/opencode` for openEuler.",
      "name": "opencode",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d96f7206249b192484cd473c7213938a2173442406260d9a32d8f941053a6c53-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/opencode@1.15.10-1.oe2403sp3?arch=x86_64&epoch=0&upstream=witty-opencode-1.15.10-1.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14046",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14064",
      "software_downloadLocation": "NOASSERTION",
      "summary": "JavaScript runtime",
      "software_packageVersion": "1:20.18.2-5.oe2403sp3",
      "software_homePage": "http://nodejs.org/",
      "description": "Node.js is a platform built on Chrome's JavaScript runtime\nfor easily building fast, scalable network applications.\nNode.js uses an event-driven, non-blocking I/O model that\nmakes it lightweight and efficient, perfect for data-intensive\nreal-time applications that run across distributed devices.",
      "name": "nodejs",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d96f7206249b192484cd473c7213938a2173442406260d9a32d8f941053a6c53-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/nodejs@20.18.2-5.oe2403sp3?arch=x86_64&epoch=1&upstream=nodejs-20.18.2-5.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14281",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd14285",
      "software_downloadLocation": "NOASSERTION",
      "summary": "AI coding agent built for the terminal",
      "software_packageVersion": "0:1.14.48-1.oe2403sp3",
      "software_homePage": "https://github.com/anomalyco/opencode",
      "description": "OpenCode is an open source AI coding agent for the terminal. This package builds\nthe upstream CLI from the tagged source tree and installs the native OpenCode\nbinary as `/usr/bin/opencode` for openEuler.",
      "name": "opencode",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d96f7206249b192484cd473c7213938a2173442406260d9a32d8f941053a6c53-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/opencode@1.14.48-1.oe2403sp3?arch=x86_64&epoch=0&upstream=witty-opencode-1.14.48-1.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22078",
      "type": "software_Package",
      "software_copyrightText": "",
      "suppliedBy": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/SPDXRef-gnrtd22085",
      "software_downloadLocation": "NOASSERTION",
      "summary": "Managed configuration and RPM integration assets for witty-opencode",
      "software_packageVersion": "0:1.14.48-1.oe2403sp3",
      "software_homePage": "https://github.com/anomalyco/opencode",
      "description": "This subpackage ships the managed-config assets for witty-opencode on openEuler.\nIt owns the shared logo plugin, managed resource directories, the config\ngenerator, and the RPM transaction hooks that rebuild `/etc/opencode/opencode.json`\nand `/etc/opencode/tui.json` from installed config fragments and resource bundles.",
      "name": "witty-opencode-base",
      "software_sourceInfo": "acquired package info from repodata DB: repodata/d96f7206249b192484cd473c7213938a2173442406260d9a32d8f941053a6c53-primary.sqlite.bz2",
      "software_packageUrl": "pkg:rpm/witty-opencode-base@1.14.48-1.oe2403sp3?arch=noarch&epoch=0&upstream=witty-opencode-1.14.48-1.oe2403sp3.src.rpm",
      "creationInfo": "_:creationInfo_0"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/additionalToolSPDXRef-gnrtd3",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_1"
    },
    {
      "spdxId": "https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP3/update/x86_64-23bb96e2-e7b5-40b9-83ce-d0ef076bae69-specv3/additionalToolSPDXRef-gnrtd1",
      "type": "Tool",
      "name": "syft-[not provided]",
      "creationInfo": "_:creationInfo_0"
    }
  ]
}