{
  "bomFormat": "CycloneDX",
  "specVersion": "1.7",
  "serialNumber": "urn:uuid:6ea41aca-7ef2-4736-8871-c9d94ddcda51",
  "version": 1,
  "metadata": {
    "timestamp": "2026-11-15T05:30:53Z",
    "tools": {
      "components": [
        {
          "group": "@cyclonedx",
          "name": "cdxgen",
          "version": "12.9.2",
          "purl": "pkg:npm/%40cyclonedx/cdxgen@12.9.2",
          "type": "application",
          "bom-ref": "pkg:npm/@cyclonedx/cdxgen@12.9.2",
          "publisher": "OWASP Foundation",
          "authors": [
            {
              "name": "OWASP Foundation"
            }
          ]
        }
      ]
    },
    "authors": [
      {
        "name": "OWASP Foundation"
      }
    ],
    "lifecycles": [
      {
        "phase": "pre-build"
      }
    ],
    "component": {
      "name": "e2e",
      "group": "",
      "version": "0.23.0",
      "description": "SDK, runner, and CLI for agentic end-to-end testing",
      "purl": "pkg:npm/e2e@0.23.0",
      "bom-ref": "pkg:npm/e2e@0.23.0",
      "properties": [
        {
          "name": "cdx:npm:bin",
          "value": "e2e"
        },
        {
          "name": "cdx:npm:has_binary",
          "value": "true"
        },
        {
          "name": "cdx:npm:scripts",
          "value": "build, prepublishOnly, typecheck, test, test:watch, test:unit"
        },
        {
          "name": "cdx:npm:buildScripts",
          "value": "build, test:watch"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "type": "application",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/tester-army/e2e#readme"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/tester-army/e2e.git"
        }
      ]
    },
    "properties": [
      {
        "name": "cdx:bom:componentTypes",
        "value": "npm"
      },
      {
        "name": "cdx:bom:componentNamespaces",
        "value": "@ai-sdk\\n@clack\\n@e2e-dev\\n@jridgewell\\n@modelcontextprotocol\\n@openrouter\\n@oxc-project\\n@types\\n@vitest"
      },
      {
        "name": "cdx:bom:componentSrcFiles",
        "value": "node_modules/@ai-sdk/anthropic/package.json\\nnode_modules/@ai-sdk/google/package.json\\nnode_modules/@ai-sdk/openai-compatible/package.json\\nnode_modules/@ai-sdk/openai/package.json\\nnode_modules/@ai-sdk/provider/package.json\\nnode_modules/@ai-sdk/xai/package.json\\nnode_modules/@clack/prompts/package.json\\nnode_modules/@e2e-dev/web/package.json\\nnode_modules/@jridgewell/remapping/package.json\\nnode_modules/@modelcontextprotocol/client/package.json\\nnode_modules/@modelcontextprotocol/server/package.json\\nnode_modules/@openrouter/ai-sdk-provider/package.json\\nnode_modules/@oxc-project/runtime/package.json\\nnode_modules/@types/node/package.json\\nnode_modules/@types/pngjs/package.json\\nnode_modules/@vitest/expect/package.json\\nnode_modules/ai/package.json\\nnode_modules/ajv-formats/package.json\\nnode_modules/ajv/package.json\\nnode_modules/commander/package.json\\nnode_modules/fast-png/package.json\\nnode_modules/get-tsconfig/package.json\\nnode_modules/oxc-parser/package.json\\nnode_modules/oxc-transform/package.json\\nnode_modules/picocolors/package.json\\nnode_modules/pixelmatch/package.json\\nnode_modules/pngjs/package.json\\nnode_modules/typescript/package.json\\nnode_modules/vitest/package.json\\nnode_modules/zod/package.json"
      }
    ]
  },
  "components": [
    {
      "authors": [
        {
          "name": "Colin McDonnell <zod@colinhacks.com>"
        }
      ],
      "group": "",
      "name": "zod",
      "version": "4.6.7",
      "description": "TypeScript-first schema declaration and validation library with static type inference",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/zod@4.6.7",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://zod.dev"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/colinhacks/zod.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/zod@4.6.7",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/zod/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "zod,zod/z"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/zod/package.json"
              }
            ],
            "concludedValue": "node_modules/zod/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/agent/primitives.js",
            "line": 11
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 112
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 113
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 114
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 119
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 228
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 235
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 239
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 240
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 249
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 267
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 272
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 274
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 280
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 281
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 311
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 312
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 313
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 314
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 324
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 350
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 351
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 352
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 364
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 371
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 378
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 385
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 392
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 397
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 398
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 422
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 427
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 434
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 441
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 446
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 449
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 462
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 465
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 466
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 484
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 549
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 550
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 610
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 619
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 622
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 623
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 641
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 644
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 645
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 666
          },
          {
            "location": "dist/agent/primitives.js",
            "line": 680
          },
          {
            "location": "dist/cli/init/package.js",
            "line": 4
          },
          {
            "location": "dist/cli/init/package.js",
            "line": 7
          },
          {
            "location": "dist/cli/init/package.js",
            "line": 8
          },
          {
            "location": "dist/cli/init/package.js",
            "line": 13
          },
          {
            "location": "dist/cli/init/package.js",
            "line": 14
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 13
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 30
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 31
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 32
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 33
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 34
          },
          {
            "location": "dist/explore/executor.js",
            "line": 8
          },
          {
            "location": "dist/explore/executor.js",
            "line": 53
          },
          {
            "location": "dist/explore/executor.js",
            "line": 54
          },
          {
            "location": "dist/explore/executor.js",
            "line": 59
          },
          {
            "location": "dist/explore/executor.js",
            "line": 62
          },
          {
            "location": "dist/explore/executor.js",
            "line": 65
          },
          {
            "location": "dist/explore/executor.js",
            "line": 66
          },
          {
            "location": "dist/explore/executor.js",
            "line": 67
          },
          {
            "location": "dist/explore/executor.js",
            "line": 68
          },
          {
            "location": "dist/explore/plan.js",
            "line": 7
          },
          {
            "location": "dist/explore/plan.js",
            "line": 34
          },
          {
            "location": "dist/explore/plan.js",
            "line": 36
          },
          {
            "location": "dist/explore/plan.js",
            "line": 37
          },
          {
            "location": "dist/explore/plan.js",
            "line": 38
          },
          {
            "location": "dist/explore/plan.js",
            "line": 39
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 18
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 107
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 115
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 116
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 117
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 118
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 119
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 120
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 121
          },
          {
            "location": "dist/mcp/catalog.js",
            "line": 122
          },
          {
            "location": "dist/mcp/recording.js",
            "line": 13
          },
          {
            "location": "dist/mcp/recording.js",
            "line": 129
          },
          {
            "location": "dist/mcp/recording.js",
            "line": 130
          },
          {
            "location": "dist/mcp/recording.js",
            "line": 141
          },
          {
            "location": "dist/mcp/run-code.js",
            "line": 21
          },
          {
            "location": "dist/mcp/run-code.js",
            "line": 57
          },
          {
            "location": "dist/mcp/run-code.js",
            "line": 58
          },
          {
            "location": "dist/mcp/run-code.js",
            "line": 59
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 14
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 25
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 26
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 27
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 29
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 34
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 37
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 38
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 39
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 41
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 47
          },
          {
            "location": "dist/mcp/run-tests.js",
            "line": 48
          },
          {
            "location": "dist/mcp/session.js",
            "line": 14
          },
          {
            "location": "dist/mcp/session.js",
            "line": 434
          },
          {
            "location": "dist/mcp/session.js",
            "line": 435
          },
          {
            "location": "dist/mcp/session.js",
            "line": 436
          },
          {
            "location": "dist/mcp/session.js",
            "line": 437
          },
          {
            "location": "dist/mcp/session.js",
            "line": 441
          },
          {
            "location": "dist/mcp/session.js",
            "line": 455
          },
          {
            "location": "dist/mcp/session.js",
            "line": 456
          },
          {
            "location": "dist/mcp/session.js",
            "line": 457
          },
          {
            "location": "dist/mcp/session.js",
            "line": 467
          },
          {
            "location": "dist/mcp/session.js",
            "line": 468
          },
          {
            "location": "dist/mcp/session.js",
            "line": 469
          },
          {
            "location": "dist/mcp/session.js",
            "line": 470
          },
          {
            "location": "dist/mcp/session.js",
            "line": 480
          },
          {
            "location": "dist/mcp/session.js",
            "line": 481
          },
          {
            "location": "dist/mcp/test-lines.js",
            "line": 19
          },
          {
            "location": "dist/mcp/test-lines.js",
            "line": 105
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 8
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 74
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 75
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 76
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 77
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 78
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 79
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 80
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 83
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 85
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 86
          },
          {
            "location": "dist/oauth/device-code.js",
            "line": 87
          },
          {
            "location": "dist/oauth/errors.js",
            "line": 1
          },
          {
            "location": "dist/oauth/errors.js",
            "line": 11
          },
          {
            "location": "dist/oauth/errors.js",
            "line": 13
          },
          {
            "location": "dist/oauth/errors.js",
            "line": 14
          },
          {
            "location": "dist/oauth/errors.js",
            "line": 15
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 9
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 104
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 106
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 107
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 108
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 138
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 139
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 140
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 141
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 142
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 143
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 144
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 145
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 147
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 148
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 154
          },
          {
            "location": "dist/oauth/providers/github-copilot.js",
            "line": 155
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 9
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 197
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 198
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 199
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 200
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 203
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 204
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 205
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 241
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 242
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 243
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 244
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 245
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 246
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 278
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 279
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 283
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 284
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 285
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 286
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 287
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 288
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 289
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 292
          },
          {
            "location": "dist/oauth/providers/openai.js",
            "line": 293
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 9
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 74
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 75
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 76
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 79
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 80
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 81
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 82
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 83
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 84
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 89
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 92
          },
          {
            "location": "dist/oauth/providers/opencode-console.js",
            "line": 93
          },
          {
            "location": "dist/oauth/providers/xai.js",
            "line": 7
          },
          {
            "location": "dist/oauth/providers/xai.js",
            "line": 45
          },
          {
            "location": "dist/oauth/providers/xai.js",
            "line": 46
          },
          {
            "location": "dist/oauth/providers/xai.js",
            "line": 47
          },
          {
            "location": "dist/oauth/providers/xai.js",
            "line": 48
          },
          {
            "location": "dist/oauth/providers/xai.js",
            "line": 51
          },
          {
            "location": "dist/oauth/providers/xai.js",
            "line": 53
          },
          {
            "location": "dist/oauth/token-endpoint.js",
            "line": 7
          },
          {
            "location": "dist/oauth/token-endpoint.js",
            "line": 13
          },
          {
            "location": "dist/oauth/token-endpoint.js",
            "line": 14
          },
          {
            "location": "dist/oauth/token-endpoint.js",
            "line": 15
          },
          {
            "location": "dist/oauth/token-endpoint.js",
            "line": 16
          },
          {
            "location": "dist/oauth/token-endpoint.js",
            "line": 17
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 13
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 155
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 156
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 157
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 164
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 338
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 347
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 351
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 352
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 362
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 381
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 386
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 388
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 394
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 395
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 428
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 429
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 430
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 431
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 445
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 471
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 472
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 473
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 490
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 498
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 507
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 519
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 527
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 536
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 537
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 561
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 567
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 575
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 582
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 587
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 591
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 610
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 613
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 614
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 635
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 719
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 720
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 789
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 799
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 802
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 803
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 820
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 823
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 824
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 845
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 859
          },
          {
            "location": "src/cli/init/package.ts",
            "line": 5
          },
          {
            "location": "src/cli/init/package.ts",
            "line": 9
          },
          {
            "location": "src/cli/init/package.ts",
            "line": 10
          },
          {
            "location": "src/cli/init/package.ts",
            "line": 15
          },
          {
            "location": "src/cli/init/package.ts",
            "line": 16
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 14
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 53
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 54
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 55
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 56
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 57
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 58
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 59
          },
          {
            "location": "src/explore/executor.ts",
            "line": 10
          },
          {
            "location": "src/explore/executor.ts",
            "line": 77
          },
          {
            "location": "src/explore/executor.ts",
            "line": 78
          },
          {
            "location": "src/explore/executor.ts",
            "line": 83
          },
          {
            "location": "src/explore/executor.ts",
            "line": 88
          },
          {
            "location": "src/explore/executor.ts",
            "line": 93
          },
          {
            "location": "src/explore/executor.ts",
            "line": 94
          },
          {
            "location": "src/explore/executor.ts",
            "line": 95
          },
          {
            "location": "src/explore/executor.ts",
            "line": 96
          },
          {
            "location": "src/explore/plan.ts",
            "line": 8
          },
          {
            "location": "src/explore/plan.ts",
            "line": 39
          },
          {
            "location": "src/explore/plan.ts",
            "line": 41
          },
          {
            "location": "src/explore/plan.ts",
            "line": 42
          },
          {
            "location": "src/explore/plan.ts",
            "line": 43
          },
          {
            "location": "src/explore/plan.ts",
            "line": 44
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 20
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 158
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 168
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 169
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 170
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 171
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 172
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 173
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 174
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 175
          },
          {
            "location": "src/mcp/recording.ts",
            "line": 15
          },
          {
            "location": "src/mcp/recording.ts",
            "line": 166
          },
          {
            "location": "src/mcp/recording.ts",
            "line": 167
          },
          {
            "location": "src/mcp/recording.ts",
            "line": 179
          },
          {
            "location": "src/mcp/run-code.ts",
            "line": 23
          },
          {
            "location": "src/mcp/run-code.ts",
            "line": 97
          },
          {
            "location": "src/mcp/run-code.ts",
            "line": 98
          },
          {
            "location": "src/mcp/run-code.ts",
            "line": 99
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 15
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 40
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 41
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 43
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 45
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 50
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 53
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 54
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 55
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 57
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 63
          },
          {
            "location": "src/mcp/run-tests.ts",
            "line": 64
          },
          {
            "location": "src/mcp/session.ts",
            "line": 15
          },
          {
            "location": "src/mcp/session.ts",
            "line": 522
          },
          {
            "location": "src/mcp/session.ts",
            "line": 523
          },
          {
            "location": "src/mcp/session.ts",
            "line": 524
          },
          {
            "location": "src/mcp/session.ts",
            "line": 525
          },
          {
            "location": "src/mcp/session.ts",
            "line": 529
          },
          {
            "location": "src/mcp/session.ts",
            "line": 545
          },
          {
            "location": "src/mcp/session.ts",
            "line": 546
          },
          {
            "location": "src/mcp/session.ts",
            "line": 547
          },
          {
            "location": "src/mcp/session.ts",
            "line": 559
          },
          {
            "location": "src/mcp/session.ts",
            "line": 560
          },
          {
            "location": "src/mcp/session.ts",
            "line": 561
          },
          {
            "location": "src/mcp/session.ts",
            "line": 562
          },
          {
            "location": "src/mcp/session.ts",
            "line": 573
          },
          {
            "location": "src/mcp/session.ts",
            "line": 574
          },
          {
            "location": "src/mcp/test-lines.ts",
            "line": 21
          },
          {
            "location": "src/mcp/test-lines.ts",
            "line": 203
          },
          {
            "location": "src/mcp/tools.ts",
            "line": 19
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 9
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 108
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 109
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 110
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 111
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 112
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 113
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 114
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 118
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 120
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 121
          },
          {
            "location": "src/oauth/device-code.ts",
            "line": 122
          },
          {
            "location": "src/oauth/errors.ts",
            "line": 1
          },
          {
            "location": "src/oauth/errors.ts",
            "line": 29
          },
          {
            "location": "src/oauth/errors.ts",
            "line": 31
          },
          {
            "location": "src/oauth/errors.ts",
            "line": 32
          },
          {
            "location": "src/oauth/errors.ts",
            "line": 33
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 10
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 135
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 138
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 139
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 140
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 171
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 172
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 173
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 174
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 175
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 176
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 177
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 178
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 180
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 181
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 190
          },
          {
            "location": "src/oauth/providers/github-copilot.ts",
            "line": 191
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 10
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 237
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 238
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 239
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 240
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 244
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 245
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 246
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 284
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 285
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 286
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 287
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 288
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 289
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 324
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 325
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 330
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 331
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 332
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 333
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 334
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 335
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 336
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 340
          },
          {
            "location": "src/oauth/providers/openai.ts",
            "line": 341
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 10
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 93
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 94
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 95
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 99
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 100
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 101
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 102
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 103
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 104
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 112
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 116
          },
          {
            "location": "src/oauth/providers/opencode-console.ts",
            "line": 117
          },
          {
            "location": "src/oauth/providers/xai.ts",
            "line": 8
          },
          {
            "location": "src/oauth/providers/xai.ts",
            "line": 64
          },
          {
            "location": "src/oauth/providers/xai.ts",
            "line": 65
          },
          {
            "location": "src/oauth/providers/xai.ts",
            "line": 66
          },
          {
            "location": "src/oauth/providers/xai.ts",
            "line": 67
          },
          {
            "location": "src/oauth/providers/xai.ts",
            "line": 71
          },
          {
            "location": "src/oauth/providers/xai.ts",
            "line": 74
          },
          {
            "location": "src/oauth/token-endpoint.ts",
            "line": 8
          },
          {
            "location": "src/oauth/token-endpoint.ts",
            "line": 15
          },
          {
            "location": "src/oauth/token-endpoint.ts",
            "line": 16
          },
          {
            "location": "src/oauth/token-endpoint.ts",
            "line": 17
          },
          {
            "location": "src/oauth/token-endpoint.ts",
            "line": 18
          },
          {
            "location": "src/oauth/token-endpoint.ts",
            "line": 19
          }
        ]
      },
      "tags": [
        "validation"
      ]
    },
    {
      "authors": [
        {
          "name": "Anthony Fu <anthonyfu117@hotmail.com>"
        }
      ],
      "group": "",
      "name": "vitest",
      "version": "5.1.0",
      "description": "Next generation testing framework powered by Vite",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/vitest@5.1.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://vitest.dev"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/vitest-dev/vitest.git"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/vitest@5.1.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/vitest/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/vitest/package.json"
              }
            ],
            "concludedValue": "node_modules/vitest/package.json"
          }
        ]
      },
      "tags": [
        "framework"
      ]
    },
    {
      "authors": [
        {
          "name": "Microsoft Corp."
        }
      ],
      "group": "",
      "name": "typescript",
      "version": "7.0.2",
      "description": "TypeScript is a language for application scale JavaScript development",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/typescript@7.0.2",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://www.typescriptlang.org/"
        },
        {
          "type": "vcs",
          "url": "https://github.com/microsoft/TypeScript.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/typescript@7.0.2",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/typescript/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/typescript/package.json"
              }
            ],
            "concludedValue": "node_modules/typescript/package.json"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "pngjs",
      "version": "7.0.0",
      "description": "PNG encoder/decoder in pure JS, supporting any bit size & interlace, async & sync with full test suite.",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/pngjs@7.0.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/lukeapage/pngjs"
        },
        {
          "type": "vcs",
          "url": "git://github.com/pngjs/pngjs.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/pngjs@7.0.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/pngjs/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/pngjs/package.json"
              }
            ],
            "concludedValue": "node_modules/pngjs/package.json"
          }
        ]
      },
      "tags": [
        "test"
      ]
    },
    {
      "authors": [
        {
          "name": "Volodymyr Agafonkin"
        }
      ],
      "group": "",
      "name": "pixelmatch",
      "version": "8.0.0",
      "description": "The smallest and fastest pixel-level image comparison library.",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "ISC",
            "url": "https://opensource.org/licenses/ISC",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/pixelmatch@8.0.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/mapbox/pixelmatch#readme"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/mapbox/pixelmatch.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/pixelmatch@8.0.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/pixelmatch/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "pixelmatch"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/pixelmatch/package.json"
              }
            ],
            "concludedValue": "node_modules/pixelmatch/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/internal/image.js",
            "line": 3
          },
          {
            "location": "dist/internal/image.js",
            "line": 141
          },
          {
            "location": "src/internal/image.ts",
            "line": 4
          },
          {
            "location": "src/internal/image.ts",
            "line": 183
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Alexey Raspopov"
        }
      ],
      "group": "",
      "name": "picocolors",
      "version": "1.1.1",
      "description": "The tiniest and the fastest library for terminal output formatting with ANSI colors",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "ISC",
            "url": "https://opensource.org/licenses/ISC",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/picocolors@1.1.1",
      "type": "library",
      "bom-ref": "pkg:npm/picocolors@1.1.1",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/picocolors/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "picocolors"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/picocolors/package.json"
              }
            ],
            "concludedValue": "node_modules/picocolors/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/cli/cache.js",
            "line": 15
          },
          {
            "location": "dist/cli/cache.js",
            "line": 179
          },
          {
            "location": "dist/cli/doctor.js",
            "line": 8
          },
          {
            "location": "dist/cli/doctor.js",
            "line": 321
          },
          {
            "location": "dist/cli/doctor.js",
            "line": 322
          },
          {
            "location": "dist/cli/doctor.js",
            "line": 323
          },
          {
            "location": "dist/cli/doctor.js",
            "line": 324
          },
          {
            "location": "dist/cli/doctor.js",
            "line": 325
          },
          {
            "location": "dist/cli/doctor.js",
            "line": 332
          },
          {
            "location": "dist/cli/help.js",
            "line": 4
          },
          {
            "location": "dist/cli/help.js",
            "line": 11
          },
          {
            "location": "dist/cli/index.js",
            "line": 10
          },
          {
            "location": "dist/cli/index.js",
            "line": 618
          },
          {
            "location": "dist/cli/telemetry.js",
            "line": 2
          },
          {
            "location": "dist/cli/telemetry.js",
            "line": 31
          },
          {
            "location": "dist/cli/telemetry.js",
            "line": 35
          },
          {
            "location": "dist/cli/update-check.js",
            "line": 12
          },
          {
            "location": "dist/cli/update-check.js",
            "line": 127
          },
          {
            "location": "dist/cli/update-check.js",
            "line": 128
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 12
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 90
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 96
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 118
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 119
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 124
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 141
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 352
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 356
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 455
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 459
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 463
          },
          {
            "location": "dist/cli/upgrade.js",
            "line": 474
          },
          {
            "location": "dist/cli/watch.js",
            "line": 13
          },
          {
            "location": "dist/mcp/test-outcome.js",
            "line": 8
          },
          {
            "location": "dist/mcp/test-outcome.js",
            "line": 13
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 8
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 103
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 111
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 216
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 217
          },
          {
            "location": "dist/report/format.js",
            "line": 7
          },
          {
            "location": "dist/report/list.js",
            "line": 10
          },
          {
            "location": "dist/report/list.js",
            "line": 265
          },
          {
            "location": "dist/telemetry/telemetry.js",
            "line": 29
          },
          {
            "location": "dist/telemetry/telemetry.js",
            "line": 45
          },
          {
            "location": "dist/telemetry/telemetry.js",
            "line": 46
          },
          {
            "location": "src/cli/cache.ts",
            "line": 17
          },
          {
            "location": "src/cli/cache.ts",
            "line": 238
          },
          {
            "location": "src/cli/doctor.ts",
            "line": 9
          },
          {
            "location": "src/cli/doctor.ts",
            "line": 396
          },
          {
            "location": "src/cli/doctor.ts",
            "line": 397
          },
          {
            "location": "src/cli/doctor.ts",
            "line": 398
          },
          {
            "location": "src/cli/doctor.ts",
            "line": 399
          },
          {
            "location": "src/cli/doctor.ts",
            "line": 400
          },
          {
            "location": "src/cli/doctor.ts",
            "line": 408
          },
          {
            "location": "src/cli/help.ts",
            "line": 5
          },
          {
            "location": "src/cli/help.ts",
            "line": 13
          },
          {
            "location": "src/cli/index.ts",
            "line": 11
          },
          {
            "location": "src/cli/index.ts",
            "line": 753
          },
          {
            "location": "src/cli/telemetry.ts",
            "line": 3
          },
          {
            "location": "src/cli/telemetry.ts",
            "line": 38
          },
          {
            "location": "src/cli/telemetry.ts",
            "line": 41
          },
          {
            "location": "src/cli/update-check.ts",
            "line": 13
          },
          {
            "location": "src/cli/update-check.ts",
            "line": 155
          },
          {
            "location": "src/cli/update-check.ts",
            "line": 156
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 13
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 140
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 149
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 171
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 172
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 176
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 199
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 422
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 426
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 526
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 530
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 534
          },
          {
            "location": "src/cli/upgrade.ts",
            "line": 544
          },
          {
            "location": "src/cli/watch.ts",
            "line": 14
          },
          {
            "location": "src/mcp/test-outcome.ts",
            "line": 9
          },
          {
            "location": "src/mcp/test-outcome.ts",
            "line": 16
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 9
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 117
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 125
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 228
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 229
          },
          {
            "location": "src/report/format.ts",
            "line": 8
          },
          {
            "location": "src/report/list.ts",
            "line": 11
          },
          {
            "location": "src/report/list.ts",
            "line": 387
          },
          {
            "location": "src/telemetry/telemetry.ts",
            "line": 30
          },
          {
            "location": "src/telemetry/telemetry.ts",
            "line": 67
          },
          {
            "location": "src/telemetry/telemetry.ts",
            "line": 68
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Boshen and oxc contributors"
        }
      ],
      "group": "",
      "name": "oxc-transform",
      "version": "0.157.0",
      "description": "Oxc Transformer Node API",
      "scope": "excluded",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/oxc-transform@0.157.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://oxc.rs/docs/guide/usage/transformer"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/oxc-project/oxc.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/oxc-transform@0.157.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/oxc-transform/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "oxc-transform,JsxOptions,oxc-transform/JsxOptions,OxcError,oxc-transform/OxcError,TransformOptions,oxc-transform/TransformOptions"
        },
        {
          "name": "cdx:npm:package:type-only",
          "value": "true"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/oxc-transform/package.json"
              }
            ],
            "concludedValue": "node_modules/oxc-transform/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "src/config/typescript.ts",
            "line": 15
          },
          {
            "location": "src/config/typescript.ts",
            "line": 16
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Boshen and oxc contributors"
        }
      ],
      "group": "",
      "name": "oxc-parser",
      "version": "0.157.0",
      "description": "Oxc Parser Node API",
      "scope": "excluded",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/oxc-parser@0.157.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://oxc.rs/docs/guide/usage/parser"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/oxc-project/oxc.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/oxc-parser@0.157.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/oxc-parser/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "oxc-parser,Argument,oxc-parser/Argument,CallExpression,oxc-parser/CallExpression,Directive,oxc-parser/Directive,Expression,oxc-parser/Expression,MemberExpression,oxc-parser/MemberExpression,Node,oxc-parser/Node,ObjectExpression,oxc-parser/ObjectExpression,PropertyKey,oxc-parser/PropertyKey,Span,oxc-parser/Span,Statement,oxc-parser/Statement"
        },
        {
          "name": "cdx:npm:package:type-only",
          "value": "true"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/oxc-parser/package.json"
              }
            ],
            "concludedValue": "node_modules/oxc-parser/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "src/config/typescript.ts",
            "line": 14
          },
          {
            "location": "src/mcp/code-parse.ts",
            "line": 15
          }
        ]
      },
      "tags": [
        "parse"
      ]
    },
    {
      "authors": [
        {
          "name": "Hiroki Osame <hiroki.osame@gmail.com>"
        }
      ],
      "group": "",
      "name": "get-tsconfig",
      "version": "4.14.3",
      "description": "Find and parse the tsconfig.json file from a directory path",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/get-tsconfig@4.14.3",
      "type": "library",
      "bom-ref": "pkg:npm/get-tsconfig@4.14.3",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/get-tsconfig/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/get-tsconfig/package.json"
              }
            ],
            "concludedValue": "node_modules/get-tsconfig/package.json"
          }
        ]
      },
      "tags": [
        "parse"
      ]
    },
    {
      "authors": [
        {
          "name": "Michaël Zasso"
        }
      ],
      "group": "",
      "name": "fast-png",
      "version": "8.0.0",
      "description": "PNG image decoder and encoder written entirely in JavaScript",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/fast-png@8.0.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://image-js.github.io/fast-png/"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/image-js/fast-png.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/fast-png@8.0.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/fast-png/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "fast-png,convertIndexedToRgb,fast-png/convertIndexedToRgb,decode,fast-png/decode,encode,fast-png/encode,DecodedPng,fast-png/DecodedPng"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/fast-png/package.json"
              }
            ],
            "concludedValue": "node_modules/fast-png/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/internal/image.js",
            "line": 2
          },
          {
            "location": "dist/internal/image.js",
            "line": 6
          },
          {
            "location": "dist/internal/image.js",
            "line": 11
          },
          {
            "location": "dist/internal/image.js",
            "line": 22
          },
          {
            "location": "src/internal/image.ts",
            "line": 3
          },
          {
            "location": "src/internal/image.ts",
            "line": 23
          },
          {
            "location": "src/internal/image.ts",
            "line": 29
          },
          {
            "location": "src/internal/image.ts",
            "line": 41
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "TJ Holowaychuk <tj@vision-media.ca>"
        }
      ],
      "group": "",
      "name": "commander",
      "version": "15.0.0",
      "description": "the complete solution for node.js command-line programs",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/commander@15.0.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "git+https://github.com/tj/commander.js.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/commander@15.0.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/commander/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "commander,Argument,commander/Argument,Command,commander/Command,CommanderError,commander/CommanderError,Help,commander/Help,InvalidArgumentError,commander/InvalidArgumentError,Option,commander/Option"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/commander/package.json"
              }
            ],
            "concludedValue": "node_modules/commander/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/cli/index.js",
            "line": 9
          },
          {
            "location": "dist/cli/init/flags.js",
            "line": 2
          },
          {
            "location": "dist/cli/parse-names.js",
            "line": 2
          },
          {
            "location": "dist/cli/upgrade-target.js",
            "line": 5
          },
          {
            "location": "src/cli/cache.ts",
            "line": 16
          },
          {
            "location": "src/cli/index.ts",
            "line": 10
          },
          {
            "location": "src/cli/init/flags.ts",
            "line": 3
          },
          {
            "location": "src/cli/parse-names.ts",
            "line": 3
          },
          {
            "location": "src/cli/upgrade-target.ts",
            "line": 6
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Evgeny Poberezkin"
        }
      ],
      "group": "",
      "name": "ajv-formats",
      "version": "3.0.1",
      "description": "Format validation for Ajv v7+",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/ajv-formats@3.0.1",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/ajv-validator/ajv-formats#readme"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/ajv-validator/ajv-formats.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/ajv-formats@3.0.1",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/ajv-formats/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/ajv-formats/package.json"
              }
            ],
            "concludedValue": "node_modules/ajv-formats/package.json"
          }
        ]
      },
      "tags": [
        "validation"
      ]
    },
    {
      "authors": [
        {
          "name": "Evgeny Poberezkin"
        }
      ],
      "group": "",
      "name": "ajv",
      "version": "8.20.0",
      "description": "Another JSON Schema Validator",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/ajv@8.20.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://ajv.js.org"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/ajv@8.20.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/ajv/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/ajv/package.json"
              }
            ],
            "concludedValue": "node_modules/ajv/package.json"
          }
        ]
      },
      "tags": [
        "json"
      ]
    },
    {
      "group": "",
      "name": "ai",
      "version": "7.0.163",
      "description": "AI SDK by Vercel - build apps like ChatGPT, Claude, Gemini, and more with a single interface for any model using the Vercel AI Gateway or go direct to OpenAI, Anthropic, Google, or any other model provider.",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/ai@7.0.163",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://ai-sdk.dev/docs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/vercel/ai"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/ai@7.0.163",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/ai/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "ai,LanguageModel,ai/LanguageModel,Tool,ai/Tool,ToolExecutionOptions,ai/ToolExecutionOptions,ToolSet,ai/ToolSet,JSONSchema7,ai/JSONSchema7,ModelMessage,ai/ModelMessage,SystemModelMessage,ai/SystemModelMessage,StepResult,ai/StepResult,ToolResultPart,ai/ToolResultPart,AssistantModelMessage,ai/AssistantModelMessage,ToolCallPart,ai/ToolCallPart,FilePart,ai/FilePart,TextPart,ai/TextPart,UserContent,ai/UserContent,Telemetry,ai/Telemetry"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/ai/package.json"
              }
            ],
            "concludedValue": "node_modules/ai/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/agent/ai-sdk.js",
            "line": 49
          },
          {
            "location": "src/agent/ai-sdk.ts",
            "line": 8
          },
          {
            "location": "src/agent/ai-sdk.ts",
            "line": 62
          },
          {
            "location": "src/agent/default-agent.ts",
            "line": 10
          },
          {
            "location": "src/agent/invocation.ts",
            "line": 9
          },
          {
            "location": "src/agent/loop-guards.ts",
            "line": 12
          },
          {
            "location": "src/agent/message-shape.ts",
            "line": 11
          },
          {
            "location": "src/agent/model/adapter.ts",
            "line": 3
          },
          {
            "location": "src/agent/model/provider-hints.ts",
            "line": 30
          },
          {
            "location": "src/agent/model/schema.ts",
            "line": 17
          },
          {
            "location": "src/agent/model/sdk.ts",
            "line": 10
          },
          {
            "location": "src/agent/primitives.ts",
            "line": 12
          },
          {
            "location": "src/agent/protocol.ts",
            "line": 11
          },
          {
            "location": "src/agent/screen-update.ts",
            "line": 21
          },
          {
            "location": "src/agent/tool-loop.ts",
            "line": 15
          },
          {
            "location": "src/agent/tool.ts",
            "line": 3
          },
          {
            "location": "src/agent/transcript-compaction.ts",
            "line": 13
          },
          {
            "location": "src/explore/executor.ts",
            "line": 9
          },
          {
            "location": "src/internal/ai-trace.ts",
            "line": 21
          },
          {
            "location": "src/mcp/catalog.ts",
            "line": 19
          },
          {
            "location": "src/mcp/recording.ts",
            "line": 14
          },
          {
            "location": "src/mcp/run-code.ts",
            "line": 22
          },
          {
            "location": "src/mcp/test-lines.ts",
            "line": 20
          },
          {
            "location": "src/mcp/tools.ts",
            "line": 18
          }
        ]
      },
      "tags": [
        "ai"
      ]
    },
    {
      "group": "@vitest",
      "name": "expect",
      "version": "5.1.0",
      "description": "Jest's expect matchers as a Chai plugin",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40vitest/expect@5.1.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://vitest.dev/api/expect"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/vitest-dev/vitest.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@vitest/expect@5.1.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@vitest/expect/package.json"
        },
        {
          "name": "ExportedModules",
          "value": "expect/index"
        },
        {
          "name": "ImportedModules",
          "value": "@vitest/expect,@vitest/expect/Any,Anything,@vitest/expect/Anything,ArrayContaining,@vitest/expect/ArrayContaining,ObjectContaining,@vitest/expect/ObjectContaining,StringContaining,@vitest/expect/StringContaining,StringMatching,@vitest/expect/StringMatching,equals,@vitest/expect/equals,isAsymmetric,@vitest/expect/isAsymmetric,iterableEquality,@vitest/expect/iterableEquality,subsetEquality,@vitest/expect/subsetEquality"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@vitest/expect/package.json"
              }
            ],
            "concludedValue": "node_modules/@vitest/expect/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/expect/index.js",
            "line": 2
          },
          {
            "location": "dist/expect/values.js",
            "line": 3
          },
          {
            "location": "dist/expect/values.js",
            "line": 32
          },
          {
            "location": "dist/expect/values.js",
            "line": 37
          },
          {
            "location": "dist/expect/values.js",
            "line": 77
          },
          {
            "location": "dist/expect/values.js",
            "line": 87
          },
          {
            "location": "dist/expect/values.js",
            "line": 124
          },
          {
            "location": "dist/expect/values.js",
            "line": 138
          },
          {
            "location": "src/expect/index.ts",
            "line": 3
          },
          {
            "location": "src/expect/values.ts",
            "line": 4
          },
          {
            "location": "src/expect/values.ts",
            "line": 32
          },
          {
            "location": "src/expect/values.ts",
            "line": 35
          },
          {
            "location": "src/expect/values.ts",
            "line": 78
          },
          {
            "location": "src/expect/values.ts",
            "line": 93
          },
          {
            "location": "src/expect/values.ts",
            "line": 169
          },
          {
            "location": "src/expect/values.ts",
            "line": 187
          }
        ]
      },
      "tags": [
        "test"
      ]
    },
    {
      "group": "@types",
      "name": "pngjs",
      "version": "6.0.5",
      "description": "TypeScript definitions for pngjs",
      "scope": "excluded",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40types/pngjs@6.0.5",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/pngjs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@types/pngjs@6.0.5",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@types/pngjs/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@types/pngjs/package.json"
              }
            ],
            "concludedValue": "node_modules/@types/pngjs/package.json"
          }
        ]
      }
    },
    {
      "group": "@types",
      "name": "node",
      "version": "26.6.6",
      "description": "TypeScript definitions for node",
      "scope": "excluded",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40types/node@26.6.6",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node"
        },
        {
          "type": "vcs",
          "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@types/node@26.6.6",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@types/node/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@types/node/package.json"
              }
            ],
            "concludedValue": "node_modules/@types/node/package.json"
          }
        ]
      }
    },
    {
      "group": "@oxc-project",
      "name": "runtime",
      "version": "0.157.0",
      "description": "Oxc's modular runtime helpers",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40oxc-project/runtime@0.157.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://oxc.rs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/oxc-project/oxc.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@oxc-project/runtime@0.157.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@oxc-project/runtime/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@oxc-project/runtime/package.json"
              }
            ],
            "concludedValue": "node_modules/@oxc-project/runtime/package.json"
          }
        ]
      }
    },
    {
      "group": "@openrouter",
      "name": "ai-sdk-provider",
      "version": "3.1.0",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40openrouter/ai-sdk-provider@3.1.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/OpenRouterTeam/ai-sdk-provider"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/OpenRouterTeam/ai-sdk-provider.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@openrouter/ai-sdk-provider@3.1.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@openrouter/ai-sdk-provider/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@openrouter/ai-sdk-provider/package.json"
              }
            ],
            "concludedValue": "node_modules/@openrouter/ai-sdk-provider/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Anthropic"
        },
        {
          "name": " PBC (https://anthropic.com)"
        }
      ],
      "group": "@modelcontextprotocol",
      "name": "server",
      "version": "2.4.0",
      "description": "Model Context Protocol implementation for TypeScript - Server package",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40modelcontextprotocol/server@2.4.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://modelcontextprotocol.io"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/modelcontextprotocol/typescript-sdk.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@modelcontextprotocol/server@2.4.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@modelcontextprotocol/server/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@modelcontextprotocol/server,McpServer,@modelcontextprotocol/server/McpServer,ResourceTemplate,@modelcontextprotocol/server/ResourceTemplate,@modelcontextprotocol/server/stdio,StdioServerTransport,@modelcontextprotocol/server/stdio/StdioServerTransport"
        },
        {
          "name": "cdx:mcp:package",
          "value": "true"
        },
        {
          "name": "cdx:mcp:official",
          "value": "true"
        },
        {
          "name": "cdx:mcp:role",
          "value": "server-sdk"
        },
        {
          "name": "cdx:mcp:catalogSource",
          "value": "official-sdk"
        },
        {
          "name": "cdx:mcp:packageName",
          "value": "@modelcontextprotocol/server"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "tags": [
        "mcp",
        "mcp-sdk",
        "mcp-server",
        "official-mcp-sdk",
        "trusted-source"
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@modelcontextprotocol/server/package.json"
              }
            ],
            "concludedValue": "node_modules/@modelcontextprotocol/server/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/mcp/server.js",
            "line": 10
          },
          {
            "location": "src/mcp/server.ts",
            "line": 12
          },
          {
            "location": "dist/mcp/server.js",
            "line": 11
          },
          {
            "location": "src/mcp/server.ts",
            "line": 13
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Anthropic"
        },
        {
          "name": " PBC (https://anthropic.com)"
        }
      ],
      "group": "@modelcontextprotocol",
      "name": "client",
      "version": "2.4.0",
      "description": "Model Context Protocol implementation for TypeScript - Client package",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40modelcontextprotocol/client@2.4.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://modelcontextprotocol.io"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/modelcontextprotocol/typescript-sdk.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@modelcontextprotocol/client@2.4.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@modelcontextprotocol/client/package.json"
        },
        {
          "name": "cdx:mcp:package",
          "value": "true"
        },
        {
          "name": "cdx:mcp:official",
          "value": "true"
        },
        {
          "name": "cdx:mcp:role",
          "value": "client-sdk"
        },
        {
          "name": "cdx:mcp:catalogSource",
          "value": "official-sdk"
        },
        {
          "name": "cdx:mcp:packageName",
          "value": "@modelcontextprotocol/client"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "tags": [
        "mcp",
        "mcp-client",
        "mcp-sdk",
        "official-mcp-sdk",
        "trusted-source"
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@modelcontextprotocol/client/package.json"
              }
            ],
            "concludedValue": "node_modules/@modelcontextprotocol/client/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Justin Ridgewell <justin@ridgewell.name>"
        }
      ],
      "group": "@jridgewell",
      "name": "remapping",
      "version": "2.3.5",
      "description": "Remap sequential sourcemaps through transformations to point at the original source code",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40jridgewell/remapping@2.3.5",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/jridgewell/sourcemaps/tree/main/packages/remapping"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/jridgewell/sourcemaps.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@jridgewell/remapping@2.3.5",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@jridgewell/remapping/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@jridgewell/remapping,EncodedSourceMap,@jridgewell/remapping/EncodedSourceMap"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@jridgewell/remapping/package.json"
              }
            ],
            "concludedValue": "node_modules/@jridgewell/remapping/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/config/typescript.js",
            "line": 10
          },
          {
            "location": "dist/config/typescript.js",
            "line": 305
          },
          {
            "location": "src/config/typescript.ts",
            "line": 11
          },
          {
            "location": "src/config/typescript.ts",
            "line": 324
          }
        ]
      }
    },
    {
      "group": "@e2e-dev",
      "name": "web",
      "version": "0.15.5",
      "description": "Web engine for e2e agentic end-to-end testing, built on Playwright",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40e2e-dev/web@0.15.5",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/tester-army/e2e/tree/main/packages/web#readme"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/tester-army/e2e.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@e2e-dev/web@0.15.5",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@e2e-dev/web/package.json"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@e2e-dev/web/package.json"
              }
            ],
            "concludedValue": "node_modules/@e2e-dev/web/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Nate Moore <nate@natemoo.re> (https://twitter.com/n_moore)"
        }
      ],
      "group": "@clack",
      "name": "prompts",
      "version": "1.8.1",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40clack/prompts@1.8.1",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/bombshell-dev/clack/tree/main/packages/prompts#readme"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/bombshell-dev/clack.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@clack/prompts@1.8.1",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@clack/prompts/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@clack/prompts"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@clack/prompts/package.json"
              }
            ],
            "concludedValue": "node_modules/@clack/prompts/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/cli/init.js",
            "line": 2
          },
          {
            "location": "dist/cli/init.js",
            "line": 50
          },
          {
            "location": "dist/cli/init.js",
            "line": 91
          },
          {
            "location": "dist/cli/init.js",
            "line": 104
          },
          {
            "location": "dist/cli/init.js",
            "line": 171
          },
          {
            "location": "dist/cli/init.js",
            "line": 183
          },
          {
            "location": "dist/cli/init.js",
            "line": 194
          },
          {
            "location": "dist/cli/init.js",
            "line": 280
          },
          {
            "location": "dist/cli/init.js",
            "line": 295
          },
          {
            "location": "dist/cli/init.js",
            "line": 300
          },
          {
            "location": "dist/cli/init.js",
            "line": 355
          },
          {
            "location": "dist/cli/init.js",
            "line": 383
          },
          {
            "location": "dist/cli/init.js",
            "line": 387
          },
          {
            "location": "dist/cli/init.js",
            "line": 392
          },
          {
            "location": "dist/cli/init.js",
            "line": 437
          },
          {
            "location": "dist/cli/init.js",
            "line": 446
          },
          {
            "location": "dist/cli/init.js",
            "line": 459
          },
          {
            "location": "dist/cli/init.js",
            "line": 463
          },
          {
            "location": "dist/cli/watch.js",
            "line": 12
          },
          {
            "location": "dist/cli/watch.js",
            "line": 526
          },
          {
            "location": "dist/cli/watch.js",
            "line": 534
          },
          {
            "location": "dist/cli/watch.js",
            "line": 541
          },
          {
            "location": "dist/cli/watch.js",
            "line": 549
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 7
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 140
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 144
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 165
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 203
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 205
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 235
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 236
          },
          {
            "location": "dist/oauth/cli.js",
            "line": 247
          },
          {
            "location": "src/cli/init.ts",
            "line": 3
          },
          {
            "location": "src/cli/init.ts",
            "line": 114
          },
          {
            "location": "src/cli/init.ts",
            "line": 160
          },
          {
            "location": "src/cli/init.ts",
            "line": 172
          },
          {
            "location": "src/cli/init.ts",
            "line": 241
          },
          {
            "location": "src/cli/init.ts",
            "line": 253
          },
          {
            "location": "src/cli/init.ts",
            "line": 263
          },
          {
            "location": "src/cli/init.ts",
            "line": 349
          },
          {
            "location": "src/cli/init.ts",
            "line": 365
          },
          {
            "location": "src/cli/init.ts",
            "line": 370
          },
          {
            "location": "src/cli/init.ts",
            "line": 424
          },
          {
            "location": "src/cli/init.ts",
            "line": 452
          },
          {
            "location": "src/cli/init.ts",
            "line": 456
          },
          {
            "location": "src/cli/init.ts",
            "line": 461
          },
          {
            "location": "src/cli/init.ts",
            "line": 507
          },
          {
            "location": "src/cli/init.ts",
            "line": 521
          },
          {
            "location": "src/cli/init.ts",
            "line": 535
          },
          {
            "location": "src/cli/init.ts",
            "line": 540
          },
          {
            "location": "src/cli/watch.ts",
            "line": 13
          },
          {
            "location": "src/cli/watch.ts",
            "line": 640
          },
          {
            "location": "src/cli/watch.ts",
            "line": 648
          },
          {
            "location": "src/cli/watch.ts",
            "line": 655
          },
          {
            "location": "src/cli/watch.ts",
            "line": 663
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 8
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 156
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 160
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 180
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 218
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 219
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 243
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 244
          },
          {
            "location": "src/oauth/cli.ts",
            "line": 253
          }
        ]
      }
    },
    {
      "group": "@ai-sdk",
      "name": "xai",
      "version": "5.0.39",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40ai-sdk/xai@5.0.39",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://ai-sdk.dev/docs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/vercel/ai"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@ai-sdk/xai@5.0.39",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@ai-sdk/xai/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@ai-sdk/xai,createXai,@ai-sdk/xai/createXai"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@ai-sdk/xai/package.json"
              }
            ],
            "concludedValue": "node_modules/@ai-sdk/xai/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/oauth/grok.js",
            "line": 6
          },
          {
            "location": "dist/oauth/grok.js",
            "line": 19
          },
          {
            "location": "src/oauth/grok.ts",
            "line": 8
          },
          {
            "location": "src/oauth/grok.ts",
            "line": 22
          }
        ]
      },
      "tags": [
        "framework"
      ]
    },
    {
      "group": "@ai-sdk",
      "name": "provider",
      "version": "4.0.36",
      "scope": "excluded",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40ai-sdk/provider@4.0.36",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://ai-sdk.dev/docs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/vercel/ai"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@ai-sdk/provider@4.0.36",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@ai-sdk/provider/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@ai-sdk/provider,LanguageModelV4,@ai-sdk/provider/LanguageModelV4,LanguageModelV4CallOptions,@ai-sdk/provider/LanguageModelV4CallOptions,LanguageModelV4Message,@ai-sdk/provider/LanguageModelV4Message"
        },
        {
          "name": "cdx:npm:package:type-only",
          "value": "true"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@ai-sdk/provider/package.json"
              }
            ],
            "concludedValue": "node_modules/@ai-sdk/provider/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "src/oauth/chatgpt.ts",
            "line": 9
          },
          {
            "location": "src/oauth/copilot.ts",
            "line": 11
          },
          {
            "location": "src/oauth/grok.ts",
            "line": 7
          },
          {
            "location": "src/oauth/opencode-console.ts",
            "line": 12
          },
          {
            "location": "src/oauth/responses.ts",
            "line": 3
          }
        ]
      },
      "tags": [
        "framework"
      ]
    },
    {
      "group": "@ai-sdk",
      "name": "openai-compatible",
      "version": "3.0.85",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40ai-sdk/openai-compatible@3.0.85",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://ai-sdk.dev/docs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/vercel/ai"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@ai-sdk/openai-compatible@3.0.85",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@ai-sdk/openai-compatible/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@ai-sdk/openai-compatible,createOpenAICompatible,@ai-sdk/openai-compatible/createOpenAICompatible"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@ai-sdk/openai-compatible/package.json"
              }
            ],
            "concludedValue": "node_modules/@ai-sdk/openai-compatible/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/oauth/copilot.js",
            "line": 9
          },
          {
            "location": "dist/oauth/copilot.js",
            "line": 28
          },
          {
            "location": "dist/oauth/opencode-console.js",
            "line": 10
          },
          {
            "location": "dist/oauth/opencode-console.js",
            "line": 69
          },
          {
            "location": "src/oauth/copilot.ts",
            "line": 10
          },
          {
            "location": "src/oauth/copilot.ts",
            "line": 33
          },
          {
            "location": "src/oauth/opencode-console.ts",
            "line": 11
          },
          {
            "location": "src/oauth/opencode-console.ts",
            "line": 81
          }
        ]
      },
      "tags": [
        "framework",
        "ml"
      ]
    },
    {
      "group": "@ai-sdk",
      "name": "openai",
      "version": "4.0.109",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40ai-sdk/openai@4.0.109",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://ai-sdk.dev/docs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/vercel/ai"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@ai-sdk/openai@4.0.109",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@ai-sdk/openai/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@ai-sdk/openai,createOpenAI,@ai-sdk/openai/createOpenAI"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@ai-sdk/openai/package.json"
              }
            ],
            "concludedValue": "node_modules/@ai-sdk/openai/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/oauth/chatgpt.js",
            "line": 7
          },
          {
            "location": "dist/oauth/chatgpt.js",
            "line": 22
          },
          {
            "location": "dist/oauth/copilot.js",
            "line": 44
          },
          {
            "location": "dist/oauth/opencode-console.js",
            "line": 74
          },
          {
            "location": "src/oauth/chatgpt.ts",
            "line": 8
          },
          {
            "location": "src/oauth/chatgpt.ts",
            "line": 25
          },
          {
            "location": "src/oauth/copilot.ts",
            "line": 58
          },
          {
            "location": "src/oauth/opencode-console.ts",
            "line": 87
          }
        ]
      },
      "tags": [
        "framework",
        "ml"
      ]
    },
    {
      "group": "@ai-sdk",
      "name": "google",
      "version": "4.0.112",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40ai-sdk/google@4.0.112",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://ai-sdk.dev/docs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/vercel/ai"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@ai-sdk/google@4.0.112",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@ai-sdk/google/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@ai-sdk/google"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@ai-sdk/google/package.json"
              }
            ],
            "concludedValue": "node_modules/@ai-sdk/google/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/oauth/opencode-console.js",
            "line": 82
          },
          {
            "location": "src/oauth/opencode-console.ts",
            "line": 95
          }
        ]
      },
      "tags": [
        "framework"
      ]
    },
    {
      "group": "@ai-sdk",
      "name": "anthropic",
      "version": "4.0.97",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0",
            "properties": [
              {
                "name": "cdx:license:category",
                "value": "Permissive"
              },
              {
                "name": "cdx:license:foss",
                "value": "true"
              },
              {
                "name": "cdx:license:osiApproved",
                "value": "true"
              },
              {
                "name": "cdx:license:fsfLibre",
                "value": "true"
              },
              {
                "name": "cdx:license:deprecated",
                "value": "false"
              }
            ]
          }
        }
      ],
      "purl": "pkg:npm/%40ai-sdk/anthropic@4.0.97",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://ai-sdk.dev/docs"
        },
        {
          "type": "vcs",
          "url": "https://github.com/vercel/ai"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@ai-sdk/anthropic@4.0.97",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@ai-sdk/anthropic/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@ai-sdk/anthropic"
        },
        {
          "name": "cdx:license:category",
          "value": "Permissive"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@ai-sdk/anthropic/package.json"
              }
            ],
            "concludedValue": "node_modules/@ai-sdk/anthropic/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/oauth/opencode-console.js",
            "line": 78
          },
          {
            "location": "src/oauth/opencode-console.ts",
            "line": 91
          }
        ]
      },
      "tags": [
        "framework"
      ]
    }
  ],
  "dependencies": [],
  "annotations": [
    {
      "bom-ref": "metadata-annotations",
      "subjects": [
        "pkg:npm/e2e@0.23.0"
      ],
      "annotator": {
        "component": {
          "group": "@cyclonedx",
          "name": "cdxgen",
          "version": "12.9.2",
          "purl": "pkg:npm/%40cyclonedx/cdxgen@12.9.2",
          "type": "application",
          "bom-ref": "pkg:npm/@cyclonedx/cdxgen@12.9.2",
          "publisher": "OWASP Foundation",
          "authors": [
            {
              "name": "OWASP Foundation"
            }
          ]
        }
      },
      "timestamp": "2026-11-15T05:30:53Z",
      "text": "This Software Bill-of-Materials (SBOM) document was created on Sunday, November 15, 2026 with cdxgen. The data was captured during the pre-build lifecycle phase without building the application. The document describes an application named 'e2e' with version '0.23.0'. The package type in this SBOM is npm with 9 purl namespaces described under components. The components were identified from 30 source files."
    }
  ]
}