@cdxgen/cdxgen 13.5.0 → 13.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -10
- package/bin/audit.js +7 -4
- package/bin/cdxgen.js +260 -37
- package/bin/convert.js +146 -22
- package/bin/evinse.js +28 -3
- package/bin/repl.js +47 -3
- package/bin/sign.js +211 -34
- package/bin/tracebom.js +18 -6
- package/bin/validate.js +24 -3
- package/bin/verify.js +113 -5
- package/data/behavior-taxonomy.schema.json +1491 -0
- package/data/cyclonedx-2.0-bundled.schema.json +18606 -5528
- package/data/cyclonedx-2.0-cryptography-defs.schema.json +857 -0
- package/data/license-aliases.json +24 -2
- package/data/pqc-migration.json +239 -0
- package/data/remediations.json +176 -0
- package/data/rules/ai-bom.yaml +1 -1
- package/data/rules/brotli-decoder.yaml +107 -0
- package/data/rules/cbom-security.yaml +4 -3
- package/data/rules/package-integrity.yaml +28 -0
- package/data/rules/vscode-extensions.yaml +75 -0
- package/data/spdx-license-list.json +121 -7
- package/data/spdx-licenses.json +69 -0
- package/data/spdx.schema.json +845 -2
- package/lib/audit/index.js +25 -3
- package/lib/cli/bomAssembly.js +172 -4
- package/lib/cli/cliOptions.js +121 -17
- package/lib/cli/index.js +720 -902
- package/lib/cli/jsBom.js +156 -64
- package/lib/cli/jvmBom.js +602 -86
- package/lib/cli/managedBom.js +161 -19
- package/lib/cli/nativeBom.js +52 -5
- package/lib/core/boundedFile.js +344 -0
- package/lib/core/brotliProbe.js +182 -0
- package/lib/core/env.js +34 -0
- package/lib/core/fs.js +138 -3
- package/lib/core/globPatterns.js +218 -0
- package/lib/core/httpClient.js +98 -1
- package/lib/core/lockPaths.js +38 -0
- package/lib/core/paths.js +24 -1
- package/lib/core/processTree.js +100 -8
- package/lib/core/projectConfig.js +332 -25
- package/lib/core/toolRegistry.js +184 -0
- package/lib/ecosystems/cppEvidence.js +263 -106
- package/lib/ecosystems/cppIncludeResolver.js +16 -5
- package/lib/ecosystems/denoutils.js +2 -2
- package/lib/ecosystems/ecosystems.js +25 -10
- package/lib/ecosystems/gemHostProbe.js +301 -0
- package/lib/ecosystems/golem.js +3 -8
- package/lib/ecosystems/gradleutils.js +1909 -229
- package/lib/ecosystems/jsEvidence.js +90 -38
- package/lib/ecosystems/kosi.js +3 -5
- package/lib/ecosystems/npmVersionResolution.js +376 -0
- package/lib/ecosystems/parsers-bazel.js +107 -6
- package/lib/ecosystems/parsers-js.js +505 -22
- package/lib/ecosystems/parsers-misc.js +209 -20
- package/lib/ecosystems/parsers-python.js +178 -30
- package/lib/ecosystems/parsers-rust.js +117 -15
- package/lib/ecosystems/pythonutils.js +128 -2
- package/lib/ecosystems/remote/huggingface.js +22 -0
- package/lib/ecosystems/rubyutils.js +538 -31
- package/lib/ecosystems/rusi.js +2 -4
- package/lib/ecosystems/scalacliutils.js +2 -0
- package/lib/ecosystems/scalasem.js +798 -152
- package/lib/ecosystems/vendoredCode.js +237 -3
- package/lib/ecosystems/venvProbe.js +360 -0
- package/lib/evinser/evinser.js +536 -71
- package/lib/evinser/scalasem.js +5 -1
- package/lib/helpers/agenticToolutils.js +525 -94
- package/lib/helpers/bomSigner.js +43 -9
- package/lib/helpers/jssSigner.js +1276 -0
- package/lib/helpers/vsixutils.js +1574 -315
- package/lib/inventory/agentBlueprint.js +193 -0
- package/lib/inventory/agentToolNames.js +145 -0
- package/lib/inventory/aiCollector.js +153 -7
- package/lib/inventory/aiInventory.js +44 -8
- package/lib/inventory/aiProviders.js +324 -0
- package/lib/inventory/atomUtils.js +77 -0
- package/lib/inventory/bomUtils.js +8 -1
- package/lib/inventory/brotliDecoder.js +142 -0
- package/lib/inventory/buildToolRateLimit.js +1 -1
- package/lib/inventory/cbomutils.js +56 -7
- package/lib/inventory/ciParsers/githubActionsLock.js +821 -0
- package/lib/inventory/citations.js +31 -2
- package/lib/inventory/communityAiConfigParser.js +978 -80
- package/lib/inventory/cyclonedx20.js +152 -0
- package/lib/inventory/cyclonedx20Common.js +286 -0
- package/lib/inventory/cyclonedx20Derived.js +159 -0
- package/lib/inventory/cyclonedx20Parties.js +552 -0
- package/lib/inventory/cyclonedx20Read.js +768 -0
- package/lib/inventory/cyclonedx20ReadCommon.js +374 -0
- package/lib/inventory/cyclonedx20ReadComponents.js +692 -0
- package/lib/inventory/cyclonedx20ReadContext.js +380 -0
- package/lib/inventory/cyclonedx20ReadEvidence.js +466 -0
- package/lib/inventory/cyclonedx20ReadSections.js +599 -0
- package/lib/inventory/cyclonedx20Render.js +766 -0
- package/lib/inventory/cyclonedx20RenderComponents.js +716 -0
- package/lib/inventory/cyclonedx20RenderDefinitions.js +405 -0
- package/lib/inventory/cyclonedx20RenderEvidence.js +726 -0
- package/lib/inventory/cyclonedx20RenderHardware.js +203 -0
- package/lib/inventory/cyclonedx20RenderPatents.js +174 -0
- package/lib/inventory/cyclonedx20RenderRefIds.js +314 -0
- package/lib/inventory/cyclonedx20RenderSections.js +499 -0
- package/lib/inventory/cyclonedx20Tables.js +594 -0
- package/lib/inventory/deps.js +141 -13
- package/lib/inventory/dosai.js +375 -6
- package/lib/inventory/dosaiParsers.js +3 -6
- package/lib/inventory/dotnetRuntime.js +367 -0
- package/lib/inventory/ecosystemFormulationParsers.js +979 -0
- package/lib/inventory/envcontext.js +436 -48
- package/lib/inventory/evidenceUtils.js +13 -1
- package/lib/inventory/fetchBatch.js +1 -1
- package/lib/inventory/formulationParsers.js +124 -14
- package/lib/inventory/gtfobins.js +13 -0
- package/lib/inventory/hbom.js +45 -6
- package/lib/inventory/hbomLoader.js +166 -0
- package/lib/inventory/hostRuntimeProbe.js +686 -0
- package/lib/inventory/jvmLocalRepos.js +9 -2
- package/lib/inventory/jvmToolEnv.js +29 -0
- package/lib/inventory/licenseEnhancer.js +12 -0
- package/lib/inventory/mavenCentralMirror.js +534 -0
- package/lib/inventory/mcpConfigParser.js +5 -0
- package/lib/inventory/nodeBuildInfo.js +218 -0
- package/lib/inventory/nodeHostProbe.js +202 -0
- package/lib/inventory/occurrenceKey.js +90 -0
- package/lib/inventory/osPackageResolver.js +182 -0
- package/lib/inventory/phpBuildInfo.js +10 -59
- package/lib/inventory/phpHostProbe.js +32 -488
- package/lib/inventory/pqcMigration.js +426 -0
- package/lib/inventory/rubyBuildInfo.js +972 -0
- package/lib/inventory/rubyHostProbe.js +218 -0
- package/lib/inventory/rustFormulationParser.js +21 -10
- package/lib/inventory/scalaCoords.js +4 -3
- package/lib/inventory/scalaDedupe.js +440 -0
- package/lib/inventory/source.js +114 -8
- package/lib/managers/binary.js +337 -3
- package/lib/managers/docker.js +79 -0
- package/lib/parsers/huggingfaceManifest.js +9 -1
- package/lib/parsers/huggingfaceUtils.js +18 -0
- package/lib/parsers/kiroPermissions.js +166 -0
- package/lib/parsers/largeJson.js +28 -11
- package/lib/parsers/vscodeExtensionId.js +183 -0
- package/lib/server/server.js +48 -35
- package/lib/stages/postgen/postgen.js +41 -1
- package/lib/stages/postgen/ruleEngine.js +13 -5
- package/lib/stages/postgen/specVersionCompat.js +76 -0
- package/lib/stages/pregen/envAudit.js +1 -0
- package/lib/stages/pregen/pregen.js +114 -57
- package/lib/validator/bomValidator.js +14 -2
- package/lib/validator/complianceEngine.js +30 -3
- package/lib/validator/complianceRules.js +1416 -4
- package/lib/validator/generated/validate-1.6.mjs +1 -1
- package/lib/validator/generated/validate-1.7.mjs +1 -1
- package/lib/validator/generated/validate-2.0.mjs +57554 -13851
- package/lib/validator/index.js +49 -8
- package/lib/validator/reporters/json.js +6 -0
- package/package.json +11 -10
- package/types/bin/repl.d.ts.map +1 -1
- package/types/lib/audit/index.d.ts +6 -2
- package/types/lib/audit/index.d.ts.map +1 -1
- package/types/lib/cli/bomAssembly.d.ts +29 -1
- package/types/lib/cli/bomAssembly.d.ts.map +1 -1
- package/types/lib/cli/cliOptions.d.ts +6 -0
- package/types/lib/cli/cliOptions.d.ts.map +1 -1
- package/types/lib/cli/index.d.ts.map +1 -1
- package/types/lib/cli/jsBom.d.ts +3 -18
- package/types/lib/cli/jsBom.d.ts.map +1 -1
- package/types/lib/cli/jvmBom.d.ts +15 -0
- package/types/lib/cli/jvmBom.d.ts.map +1 -1
- package/types/lib/cli/managedBom.d.ts.map +1 -1
- package/types/lib/cli/nativeBom.d.ts.map +1 -1
- package/types/lib/core/boundedFile.d.ts +100 -0
- package/types/lib/core/boundedFile.d.ts.map +1 -0
- package/types/lib/core/brotliProbe.d.ts +37 -0
- package/types/lib/core/brotliProbe.d.ts.map +1 -0
- package/types/lib/core/env.d.ts +14 -0
- package/types/lib/core/env.d.ts.map +1 -1
- package/types/lib/core/fs.d.ts +4 -0
- package/types/lib/core/fs.d.ts.map +1 -1
- package/types/lib/core/globPatterns.d.ts +70 -0
- package/types/lib/core/globPatterns.d.ts.map +1 -0
- package/types/lib/core/httpClient.d.ts +24 -0
- package/types/lib/core/httpClient.d.ts.map +1 -1
- package/types/lib/core/lockPaths.d.ts +19 -0
- package/types/lib/core/lockPaths.d.ts.map +1 -0
- package/types/lib/core/paths.d.ts +9 -0
- package/types/lib/core/paths.d.ts.map +1 -1
- package/types/lib/core/processTree.d.ts +17 -4
- package/types/lib/core/processTree.d.ts.map +1 -1
- package/types/lib/core/projectConfig.d.ts +47 -8
- package/types/lib/core/projectConfig.d.ts.map +1 -1
- package/types/lib/core/toolRegistry.d.ts +36 -0
- package/types/lib/core/toolRegistry.d.ts.map +1 -0
- package/types/lib/ecosystems/cppEvidence.d.ts +40 -13
- package/types/lib/ecosystems/cppEvidence.d.ts.map +1 -1
- package/types/lib/ecosystems/cppIncludeResolver.d.ts +2 -1
- package/types/lib/ecosystems/cppIncludeResolver.d.ts.map +1 -1
- package/types/lib/ecosystems/ecosystems.d.ts.map +1 -1
- package/types/lib/ecosystems/gemHostProbe.d.ts +28 -0
- package/types/lib/ecosystems/gemHostProbe.d.ts.map +1 -0
- package/types/lib/ecosystems/golem.d.ts.map +1 -1
- package/types/lib/ecosystems/gradleutils.d.ts +294 -20
- package/types/lib/ecosystems/gradleutils.d.ts.map +1 -1
- package/types/lib/ecosystems/jsEvidence.d.ts +14 -1
- package/types/lib/ecosystems/jsEvidence.d.ts.map +1 -1
- package/types/lib/ecosystems/kosi.d.ts.map +1 -1
- package/types/lib/ecosystems/npmVersionResolution.d.ts +119 -0
- package/types/lib/ecosystems/npmVersionResolution.d.ts.map +1 -0
- package/types/lib/ecosystems/parsers-bazel.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-js.d.ts +17 -20
- package/types/lib/ecosystems/parsers-js.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-misc.d.ts +19 -0
- package/types/lib/ecosystems/parsers-misc.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-python.d.ts +10 -0
- package/types/lib/ecosystems/parsers-python.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-rust.d.ts.map +1 -1
- package/types/lib/ecosystems/pythonutils.d.ts +19 -1
- package/types/lib/ecosystems/pythonutils.d.ts.map +1 -1
- package/types/lib/ecosystems/remote/huggingface.d.ts.map +1 -1
- package/types/lib/ecosystems/rubyutils.d.ts +144 -12
- package/types/lib/ecosystems/rubyutils.d.ts.map +1 -1
- package/types/lib/ecosystems/rusi.d.ts.map +1 -1
- package/types/lib/ecosystems/scalacliutils.d.ts.map +1 -1
- package/types/lib/ecosystems/scalasem.d.ts +58 -16
- package/types/lib/ecosystems/scalasem.d.ts.map +1 -1
- package/types/lib/ecosystems/vendoredCode.d.ts +26 -0
- package/types/lib/ecosystems/vendoredCode.d.ts.map +1 -1
- package/types/lib/ecosystems/venvProbe.d.ts +40 -0
- package/types/lib/ecosystems/venvProbe.d.ts.map +1 -0
- package/types/lib/evinser/evinser.d.ts +120 -13
- package/types/lib/evinser/evinser.d.ts.map +1 -1
- package/types/lib/evinser/scalasem.d.ts.map +1 -1
- package/types/lib/helpers/agenticToolutils.d.ts +53 -19
- package/types/lib/helpers/agenticToolutils.d.ts.map +1 -1
- package/types/lib/helpers/bomSigner.d.ts +20 -3
- package/types/lib/helpers/bomSigner.d.ts.map +1 -1
- package/types/lib/helpers/jssSigner.d.ts +288 -0
- package/types/lib/helpers/jssSigner.d.ts.map +1 -0
- package/types/lib/helpers/vsixutils.d.ts +303 -19
- package/types/lib/helpers/vsixutils.d.ts.map +1 -1
- package/types/lib/inventory/agentBlueprint.d.ts +70 -0
- package/types/lib/inventory/agentBlueprint.d.ts.map +1 -0
- package/types/lib/inventory/agentToolNames.d.ts +51 -0
- package/types/lib/inventory/agentToolNames.d.ts.map +1 -0
- package/types/lib/inventory/aiCollector.d.ts.map +1 -1
- package/types/lib/inventory/aiInventory.d.ts.map +1 -1
- package/types/lib/inventory/aiProviders.d.ts +85 -0
- package/types/lib/inventory/aiProviders.d.ts.map +1 -0
- package/types/lib/inventory/atomUtils.d.ts +19 -0
- package/types/lib/inventory/atomUtils.d.ts.map +1 -1
- package/types/lib/inventory/bomUtils.d.ts.map +1 -1
- package/types/lib/inventory/brotliDecoder.d.ts +58 -0
- package/types/lib/inventory/brotliDecoder.d.ts.map +1 -0
- package/types/lib/inventory/cbomutils.d.ts +17 -0
- package/types/lib/inventory/cbomutils.d.ts.map +1 -1
- package/types/lib/inventory/ciParsers/githubActionsLock.d.ts +101 -0
- package/types/lib/inventory/ciParsers/githubActionsLock.d.ts.map +1 -0
- package/types/lib/inventory/citations.d.ts +5 -0
- package/types/lib/inventory/citations.d.ts.map +1 -1
- package/types/lib/inventory/communityAiConfigParser.d.ts.map +1 -1
- package/types/lib/inventory/cyclonedx20.d.ts +99 -0
- package/types/lib/inventory/cyclonedx20.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20Common.d.ts +102 -0
- package/types/lib/inventory/cyclonedx20Common.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20Derived.d.ts +74 -0
- package/types/lib/inventory/cyclonedx20Derived.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20Parties.d.ts +91 -0
- package/types/lib/inventory/cyclonedx20Parties.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20Read.d.ts +51 -0
- package/types/lib/inventory/cyclonedx20Read.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20ReadCommon.d.ts +69 -0
- package/types/lib/inventory/cyclonedx20ReadCommon.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20ReadComponents.d.ts +77 -0
- package/types/lib/inventory/cyclonedx20ReadComponents.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20ReadContext.d.ts +118 -0
- package/types/lib/inventory/cyclonedx20ReadContext.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20ReadEvidence.d.ts +40 -0
- package/types/lib/inventory/cyclonedx20ReadEvidence.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20ReadSections.d.ts +45 -0
- package/types/lib/inventory/cyclonedx20ReadSections.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20Render.d.ts +53 -0
- package/types/lib/inventory/cyclonedx20Render.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20RenderComponents.d.ts +73 -0
- package/types/lib/inventory/cyclonedx20RenderComponents.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20RenderDefinitions.d.ts +29 -0
- package/types/lib/inventory/cyclonedx20RenderDefinitions.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20RenderEvidence.d.ts +110 -0
- package/types/lib/inventory/cyclonedx20RenderEvidence.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20RenderHardware.d.ts +42 -0
- package/types/lib/inventory/cyclonedx20RenderHardware.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20RenderPatents.d.ts +26 -0
- package/types/lib/inventory/cyclonedx20RenderPatents.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20RenderRefIds.d.ts +55 -0
- package/types/lib/inventory/cyclonedx20RenderRefIds.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20RenderSections.d.ts +45 -0
- package/types/lib/inventory/cyclonedx20RenderSections.d.ts.map +1 -0
- package/types/lib/inventory/cyclonedx20Tables.d.ts +134 -0
- package/types/lib/inventory/cyclonedx20Tables.d.ts.map +1 -0
- package/types/lib/inventory/deps.d.ts +35 -2
- package/types/lib/inventory/deps.d.ts.map +1 -1
- package/types/lib/inventory/dosai.d.ts +36 -1
- package/types/lib/inventory/dosai.d.ts.map +1 -1
- package/types/lib/inventory/dosaiParsers.d.ts.map +1 -1
- package/types/lib/inventory/dotnetRuntime.d.ts +91 -0
- package/types/lib/inventory/dotnetRuntime.d.ts.map +1 -0
- package/types/lib/inventory/ecosystemFormulationParsers.d.ts +73 -0
- package/types/lib/inventory/ecosystemFormulationParsers.d.ts.map +1 -0
- package/types/lib/inventory/envcontext.d.ts +74 -12
- package/types/lib/inventory/envcontext.d.ts.map +1 -1
- package/types/lib/inventory/evidenceUtils.d.ts.map +1 -1
- package/types/lib/inventory/formulationParsers.d.ts.map +1 -1
- package/types/lib/inventory/gtfobins.d.ts.map +1 -1
- package/types/lib/inventory/hbom.d.ts +11 -0
- package/types/lib/inventory/hbom.d.ts.map +1 -1
- package/types/lib/inventory/hbomLoader.d.ts +54 -0
- package/types/lib/inventory/hbomLoader.d.ts.map +1 -1
- package/types/lib/inventory/hostRuntimeProbe.d.ts +44 -0
- package/types/lib/inventory/hostRuntimeProbe.d.ts.map +1 -0
- package/types/lib/inventory/jvmLocalRepos.d.ts +5 -1
- package/types/lib/inventory/jvmLocalRepos.d.ts.map +1 -1
- package/types/lib/inventory/jvmToolEnv.d.ts +12 -0
- package/types/lib/inventory/jvmToolEnv.d.ts.map +1 -1
- package/types/lib/inventory/licenseEnhancer.d.ts.map +1 -1
- package/types/lib/inventory/mavenCentralMirror.d.ts +170 -0
- package/types/lib/inventory/mavenCentralMirror.d.ts.map +1 -0
- package/types/lib/inventory/mcpConfigParser.d.ts.map +1 -1
- package/types/lib/inventory/nodeBuildInfo.d.ts +95 -0
- package/types/lib/inventory/nodeBuildInfo.d.ts.map +1 -0
- package/types/lib/inventory/nodeHostProbe.d.ts +15 -0
- package/types/lib/inventory/nodeHostProbe.d.ts.map +1 -0
- package/types/lib/inventory/occurrenceKey.d.ts +52 -0
- package/types/lib/inventory/occurrenceKey.d.ts.map +1 -0
- package/types/lib/inventory/osPackageResolver.d.ts +38 -0
- package/types/lib/inventory/osPackageResolver.d.ts.map +1 -1
- package/types/lib/inventory/phpBuildInfo.d.ts.map +1 -1
- package/types/lib/inventory/phpHostProbe.d.ts.map +1 -1
- package/types/lib/inventory/pqcMigration.d.ts +84 -0
- package/types/lib/inventory/pqcMigration.d.ts.map +1 -0
- package/types/lib/inventory/rubyBuildInfo.d.ts +271 -0
- package/types/lib/inventory/rubyBuildInfo.d.ts.map +1 -0
- package/types/lib/inventory/rubyHostProbe.d.ts +47 -0
- package/types/lib/inventory/rubyHostProbe.d.ts.map +1 -0
- package/types/lib/inventory/rustFormulationParser.d.ts +7 -2
- package/types/lib/inventory/rustFormulationParser.d.ts.map +1 -1
- package/types/lib/inventory/scalaCoords.d.ts.map +1 -1
- package/types/lib/inventory/scalaDedupe.d.ts +43 -0
- package/types/lib/inventory/scalaDedupe.d.ts.map +1 -0
- package/types/lib/inventory/source.d.ts +25 -0
- package/types/lib/inventory/source.d.ts.map +1 -1
- package/types/lib/managers/binary.d.ts.map +1 -1
- package/types/lib/managers/docker.d.ts +12 -0
- package/types/lib/managers/docker.d.ts.map +1 -1
- package/types/lib/parsers/huggingfaceManifest.d.ts +10 -1
- package/types/lib/parsers/huggingfaceManifest.d.ts.map +1 -1
- package/types/lib/parsers/huggingfaceUtils.d.ts +12 -0
- package/types/lib/parsers/huggingfaceUtils.d.ts.map +1 -1
- package/types/lib/parsers/kiroPermissions.d.ts +62 -0
- package/types/lib/parsers/kiroPermissions.d.ts.map +1 -0
- package/types/lib/parsers/largeJson.d.ts +4 -3
- package/types/lib/parsers/largeJson.d.ts.map +1 -1
- package/types/lib/parsers/vscodeExtensionId.d.ts +48 -0
- package/types/lib/parsers/vscodeExtensionId.d.ts.map +1 -0
- package/types/lib/server/server.d.ts.map +1 -1
- package/types/lib/stages/postgen/postgen.d.ts +7 -0
- package/types/lib/stages/postgen/postgen.d.ts.map +1 -1
- package/types/lib/stages/postgen/ruleEngine.d.ts.map +1 -1
- package/types/lib/stages/postgen/specVersionCompat.d.ts +25 -0
- package/types/lib/stages/postgen/specVersionCompat.d.ts.map +1 -1
- package/types/lib/stages/pregen/envAudit.d.ts.map +1 -1
- package/types/lib/stages/pregen/pregen.d.ts +12 -8
- package/types/lib/stages/pregen/pregen.d.ts.map +1 -1
- package/types/lib/validator/bomValidator.d.ts +5 -1
- package/types/lib/validator/bomValidator.d.ts.map +1 -1
- package/types/lib/validator/complianceEngine.d.ts +4 -4
- package/types/lib/validator/complianceEngine.d.ts.map +1 -1
- package/types/lib/validator/complianceRules.d.ts +14 -2
- package/types/lib/validator/complianceRules.d.ts.map +1 -1
- package/types/lib/validator/index.d.ts +10 -0
- package/types/lib/validator/index.d.ts.map +1 -1
- package/types/lib/validator/reporters/json.d.ts.map +1 -1
|
@@ -41,6 +41,37 @@ export declare function defaultEvidenceLanguage(dirPath: string, bomJson?: Objec
|
|
|
41
41
|
* @returns {Object} Options for prepareDB, analyzeProject, and createEvinseFile
|
|
42
42
|
*/
|
|
43
43
|
export declare function buildEvinseOptions(options: Object, args: Object, input: string): Object;
|
|
44
|
+
/**
|
|
45
|
+
* Read the evinse input BOM as cdxgen's 1.x-shaped internal model. A
|
|
46
|
+
* CycloneDX 2.0 document is converted with loadBomForAnalysis; a 1.x document
|
|
47
|
+
* (or an internal model) is returned as is. When `options.inputBomJson` holds
|
|
48
|
+
* a model converted earlier, a copy of it is returned instead of reading
|
|
49
|
+
* `options.input` again, so prepareDB, analyzeProject and createEvinseFile
|
|
50
|
+
* each get their own object, as they did when each parsed the file.
|
|
51
|
+
*
|
|
52
|
+
* @param {Object} options Evinse options with `input` and optional
|
|
53
|
+
* `inputBomJson`
|
|
54
|
+
* @returns {{bomJson: Object, losses: Array<{pointer: string, reason: string}>}}
|
|
55
|
+
* The internal model and the losses of the 2.0 read (none when
|
|
56
|
+
* `inputBomJson` was given)
|
|
57
|
+
*/
|
|
58
|
+
export declare function loadEvinseInputBom(options: Object): {
|
|
59
|
+
bomJson: Object;
|
|
60
|
+
losses: Array<{
|
|
61
|
+
pointer: string;
|
|
62
|
+
reason: string;
|
|
63
|
+
}>;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Print the one-line notice for the losses of reading a 2.0 evinse input,
|
|
67
|
+
* with the details in thoughtLog.
|
|
68
|
+
*
|
|
69
|
+
* @param {Array<{pointer: string, reason: string}>} losses Reader losses
|
|
70
|
+
*/
|
|
71
|
+
export declare function reportEvinseInputLosses(losses: Array<{
|
|
72
|
+
pointer: string;
|
|
73
|
+
reason: string;
|
|
74
|
+
}>): void;
|
|
44
75
|
/**
|
|
45
76
|
* Function to create the db for the libraries referred in the sbom.
|
|
46
77
|
*
|
|
@@ -147,15 +178,18 @@ export declare function purlToLanguage(purl: string, filePath?: string): string
|
|
|
147
178
|
* Walks the supplied components reading `internal:ImportedModules` (or
|
|
148
179
|
* `internal:Namespaces` for php/ruby, plus the `internal:ImportedSymbols` the
|
|
149
180
|
* C/C++ collector records) and `evidence.occurrences` properties to construct
|
|
150
|
-
* lookup maps used during slice analysis.
|
|
181
|
+
* lookup maps used during slice analysis. An occurrence that carries `offset`
|
|
182
|
+
* or `symbol` seeds those too, so a re-run over a previous evinse output keys
|
|
183
|
+
* and annotates the same use sites the fresh slice adds.
|
|
151
184
|
*
|
|
152
185
|
* @param {Object[]} components CycloneDX components from the input SBOM
|
|
153
186
|
* @param {string} language Application language used to select the import property name
|
|
154
|
-
* @returns {{ purlLocationMap: Object<string, Set>, purlImportsMap: Object<string, string[]
|
|
187
|
+
* @returns {{ purlLocationMap: Object<string, Set>, purlImportsMap: Object<string, string[]>, purlSymbolMap: Object<string, Object<string, string>> }} Seeded purl location, import and symbol maps
|
|
155
188
|
*/
|
|
156
189
|
export declare function initFromSbom(components: Object[], language: string): {
|
|
157
190
|
purlLocationMap: Record<string, Set<any>>;
|
|
158
191
|
purlImportsMap: Record<string, string[]>;
|
|
192
|
+
purlSymbolMap: Record<string, Record<string, string>>;
|
|
159
193
|
};
|
|
160
194
|
/**
|
|
161
195
|
* Load a semantics slices file for reuse when it belongs to this project.
|
|
@@ -223,6 +257,7 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
|
|
|
223
257
|
servicesMap: {};
|
|
224
258
|
dataFlowFrames: {};
|
|
225
259
|
userDefinedTypesMap: {};
|
|
260
|
+
purlSymbolMap: Record<string, Record<string, string>>;
|
|
226
261
|
componentPropertiesMap?: undefined;
|
|
227
262
|
metadataProperties?: undefined;
|
|
228
263
|
workspaceComponent?: undefined;
|
|
@@ -231,6 +266,7 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
|
|
|
231
266
|
dataFlowSlicesFile?: undefined;
|
|
232
267
|
reachablesSlicesFile?: undefined;
|
|
233
268
|
semanticsSlicesFile?: undefined;
|
|
269
|
+
clearedOccurrencePurls?: undefined;
|
|
234
270
|
tempDir?: undefined;
|
|
235
271
|
tempDirOwned?: undefined;
|
|
236
272
|
cryptoComponents?: undefined;
|
|
@@ -246,12 +282,14 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
|
|
|
246
282
|
cryptoGeneratePurls: any;
|
|
247
283
|
servicesMap: {};
|
|
248
284
|
userDefinedTypesMap: {};
|
|
285
|
+
purlSymbolMap: Record<string, Record<string, string>>;
|
|
249
286
|
workspaceComponent?: undefined;
|
|
250
287
|
atomFile?: undefined;
|
|
251
288
|
usagesSlicesFile?: undefined;
|
|
252
289
|
dataFlowSlicesFile?: undefined;
|
|
253
290
|
reachablesSlicesFile?: undefined;
|
|
254
291
|
semanticsSlicesFile?: undefined;
|
|
292
|
+
clearedOccurrencePurls?: undefined;
|
|
255
293
|
tempDir?: undefined;
|
|
256
294
|
tempDirOwned?: undefined;
|
|
257
295
|
aiComponents?: undefined;
|
|
@@ -266,11 +304,13 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
|
|
|
266
304
|
servicesMap: {};
|
|
267
305
|
userDefinedTypesMap: {};
|
|
268
306
|
workspaceComponent: Object | undefined;
|
|
307
|
+
purlSymbolMap: Record<string, Record<string, string>>;
|
|
269
308
|
atomFile?: undefined;
|
|
270
309
|
usagesSlicesFile?: undefined;
|
|
271
310
|
dataFlowSlicesFile?: undefined;
|
|
272
311
|
reachablesSlicesFile?: undefined;
|
|
273
312
|
semanticsSlicesFile?: undefined;
|
|
313
|
+
clearedOccurrencePurls?: undefined;
|
|
274
314
|
tempDir?: undefined;
|
|
275
315
|
tempDirOwned?: undefined;
|
|
276
316
|
aiComponents?: undefined;
|
|
@@ -291,8 +331,10 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
|
|
|
291
331
|
cryptoComponents: any[];
|
|
292
332
|
aiComponents: any[];
|
|
293
333
|
cryptoGeneratePurls: {};
|
|
334
|
+
purlSymbolMap: Record<string, Record<string, string>>;
|
|
294
335
|
atomFile?: undefined;
|
|
295
336
|
reachablesSlicesFile?: undefined;
|
|
337
|
+
clearedOccurrencePurls?: undefined;
|
|
296
338
|
openapiSpecFile?: undefined;
|
|
297
339
|
} | {
|
|
298
340
|
componentPropertiesMap?: undefined;
|
|
@@ -304,6 +346,8 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
|
|
|
304
346
|
reachablesSlicesFile: any;
|
|
305
347
|
semanticsSlicesFile: any;
|
|
306
348
|
purlLocationMap: Record<string, Set<any>>;
|
|
349
|
+
purlSymbolMap: Record<string, Record<string, string>>;
|
|
350
|
+
clearedOccurrencePurls: Set<any>;
|
|
307
351
|
servicesMap: {};
|
|
308
352
|
dataFlowFrames: {};
|
|
309
353
|
tempDir: any;
|
|
@@ -417,14 +461,7 @@ export declare function isFilterableType(language: string, userDefinedTypesMap:
|
|
|
417
461
|
* @returns {void}
|
|
418
462
|
*/
|
|
419
463
|
export declare function detectServicesFromOpenAPI(_language: string, openapiSpecFile: string, servicesMap: Object): void;
|
|
420
|
-
|
|
421
|
-
* Method to detect services from annotation objects in the usage slice
|
|
422
|
-
*
|
|
423
|
-
* @param {string} language Application language
|
|
424
|
-
* @param {Array} slice Usages array for each objectSlice
|
|
425
|
-
* @param {Object} servicesMap Existing service map
|
|
426
|
-
*/
|
|
427
|
-
export declare function detectServicesFromUsages(language: string, slice: any[], servicesMap?: Object): never[] | undefined;
|
|
464
|
+
export declare function detectServicesFromUsages(language: any, slice: any, servicesMap?: {}): never[] | undefined;
|
|
428
465
|
/**
|
|
429
466
|
* Method to detect services from user defined types in the usage slice
|
|
430
467
|
*
|
|
@@ -457,14 +494,46 @@ export declare function constructServiceName(_language: string, slice: Object):
|
|
|
457
494
|
* @returns {string[]|undefined} Array of endpoint paths or `undefined` when none are found
|
|
458
495
|
*/
|
|
459
496
|
export declare function extractEndpoints(language: string, code: string): string[] | undefined;
|
|
497
|
+
/**
|
|
498
|
+
* Key naming the package a purl refers to, independent of its version,
|
|
499
|
+
* qualifiers and subpath. Namespace and name are the decoded purl segments,
|
|
500
|
+
* so an encoded scope (`%40angular/common`) keys like a plain one.
|
|
501
|
+
*
|
|
502
|
+
* @param {string} purl Purl string
|
|
503
|
+
* @returns {string|undefined} `type/namespace/name`, or undefined for a non-purl
|
|
504
|
+
*/
|
|
505
|
+
export declare function versionlessPurlKey(purl: string): string | undefined;
|
|
506
|
+
/**
|
|
507
|
+
* Index the data-flow frames recorded under versionless flow purls by
|
|
508
|
+
* {@link versionlessPurlKey}. A flow purl without a version attaches to every
|
|
509
|
+
* BOM component of the same package name, whatever its version (maintainer
|
|
510
|
+
* decision, 2026-10-27); chen leaves the version off exactly when it cannot
|
|
511
|
+
* pick one between apps that pin the package differently.
|
|
512
|
+
*
|
|
513
|
+
* @param {Object} dataFlowFrames Frames keyed by flow purl
|
|
514
|
+
* @returns {Object} Frames keyed by versionless purl key
|
|
515
|
+
*/
|
|
516
|
+
export declare function indexVersionlessPurls(dataFlowFrames: Object): Object;
|
|
517
|
+
/**
|
|
518
|
+
* Index the crypto generate pools recorded under versionless flow purls by
|
|
519
|
+
* {@link versionlessPurlKey}, the crypto counterpart of
|
|
520
|
+
* {@link indexVersionlessPurls}.
|
|
521
|
+
*
|
|
522
|
+
* @param {Object} cryptoGeneratePurls Algorithm bom-refs keyed by flow purl
|
|
523
|
+
* @returns {Object} Algorithm bom-ref sets keyed by versionless purl key
|
|
524
|
+
*/
|
|
525
|
+
export declare function indexVersionlessCrypto(cryptoGeneratePurls: Object): Object;
|
|
460
526
|
/**
|
|
461
527
|
* Method to create the SBOM with evidence file called evinse file.
|
|
462
528
|
*
|
|
463
529
|
* @param {Object} sliceArtefacts Various artefacts from the slice operation
|
|
464
|
-
* @param {Object} options Command line options
|
|
465
|
-
*
|
|
530
|
+
* @param {Object} options Command line options. With `returnInternalModel`,
|
|
531
|
+
* a CycloneDX 2.0 run returns the 1.x-shaped internal model instead of the
|
|
532
|
+
* rendered document; the file written is the rendered document either way.
|
|
533
|
+
* @returns {Promise<Object>} The BOM written to the output file, or its
|
|
534
|
+
* internal model when `returnInternalModel` is set
|
|
466
535
|
*/
|
|
467
|
-
export declare function createEvinseFile(sliceArtefacts: Object, options: Object): Promise<
|
|
536
|
+
export declare function createEvinseFile(sliceArtefacts: Object, options: Object): Promise<Object>;
|
|
468
537
|
/**
|
|
469
538
|
* Method to convert dataflow slice into usable callstack frames
|
|
470
539
|
* Implemented based on the logic proposed here - https://github.com/AppThreat/atom/blob/main/specification/docs/slices.md#data-flow-slice
|
|
@@ -526,4 +595,42 @@ export declare function simplifyType(typeFullName: string): string;
|
|
|
526
595
|
* @returns {string|undefined} Enclosing class type or `undefined` when it cannot be resolved
|
|
527
596
|
*/
|
|
528
597
|
export declare function getClassTypeFromSignature(language: string, typeFullName: string): string | undefined;
|
|
598
|
+
/**
|
|
599
|
+
* npm package name of a JavaScript module specifier: `@scope/pkg/sub` -> `@scope/pkg`,
|
|
600
|
+
* `lodash/fp` -> `lodash`. Node.js builtins (`node:fs`, `fs`) are not packages.
|
|
601
|
+
*
|
|
602
|
+
* @param {string} module module specifier
|
|
603
|
+
* @returns {string|undefined} package name
|
|
604
|
+
*/
|
|
605
|
+
export declare function jsPackageOfModule(module: string): string | undefined;
|
|
606
|
+
/**
|
|
607
|
+
* Attribute a JavaScript usage's module-qualified entries to the packages providing them.
|
|
608
|
+
*
|
|
609
|
+
* Each call entry with a `module` is a use of that module's package at the call's line. When
|
|
610
|
+
* the slice's object is an import binding (defined by a require/import naming the module),
|
|
611
|
+
* every call the object takes part in is a use of that package too.
|
|
612
|
+
*
|
|
613
|
+
* @param {Object} ausage usage entry of an object slice
|
|
614
|
+
* @param {string} fileName file of the slice
|
|
615
|
+
* @param {Object} purlImportsMap purl -> imported modules and symbols
|
|
616
|
+
* @param {Object} purlLocationMap purl -> Set of `file#line`
|
|
617
|
+
*/
|
|
618
|
+
export declare function attributeJsModules(ausage: Object, fileName: string, purlImportsMap: Object, purlLocationMap: Object): void;
|
|
619
|
+
/**
|
|
620
|
+
* Attribute a callsites slice's records to the packages providing their modules.
|
|
621
|
+
*
|
|
622
|
+
* Each record of `{"callsites": [...]}` (atom `callsites` command) is one external use site
|
|
623
|
+
* carrying its own file, line and column; the record is an occurrence of every purl whose
|
|
624
|
+
* package matches the record's module. A record with a column (0 or more; atom writes -1 for
|
|
625
|
+
* none) is keyed `file:line:col`, so two use sites on one line are two occurrences, and its
|
|
626
|
+
* occurrence carries the column as `offset` and `module` joined with `path` by `.` as
|
|
627
|
+
* `symbol`. A record without a column keys the line (`file#line`) and its occurrence carries
|
|
628
|
+
* the `symbol` alone; a record without a `path` leaves the symbol at the bare `module`.
|
|
629
|
+
*
|
|
630
|
+
* @param {Object} callsitesSlice callsites slice with a `callsites` array
|
|
631
|
+
* @param {Object} purlImportsMap purl -> imported modules and symbols
|
|
632
|
+
* @param {Object} purlLocationMap purl -> Set of occurrence keys
|
|
633
|
+
* @param {Object} [purlSymbolMap] purl -> occurrence key -> symbol, filled in place
|
|
634
|
+
*/
|
|
635
|
+
export declare function attributeJsCallsites(callsitesSlice: Object, purlImportsMap: Object, purlLocationMap: Object, purlSymbolMap?: Object): void;
|
|
529
636
|
//# sourceMappingURL=evinser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evinser.d.ts","sourceRoot":"","sources":["../../../lib/evinser/evinser.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"evinser.d.ts","sourceRoot":"","sources":["../../../lib/evinser/evinser.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scalasem.d.ts","sourceRoot":"","sources":["../../../lib/evinser/scalasem.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scalasem.d.ts","sourceRoot":"","sources":["../../../lib/evinser/scalasem.js"],"names":[],"mappings":"AAyBA;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAJjC,MAAM,EAI2B,EAAE,cAAc,EAHjD,MAGiD,GAF/C;IAAE,eAAe,2BAA0B;CAAE,CAkCzD"}
|
|
@@ -1,17 +1,11 @@
|
|
|
1
|
+
import { redactHomePath } from "../core/paths.js";
|
|
2
|
+
export { redactHomePath };
|
|
1
3
|
/**
|
|
2
4
|
* The purl type used for installed agentic CLI tools. These tools ship as
|
|
3
5
|
* self-contained executables rather than as a resolvable source package, so a
|
|
4
6
|
* `pkg:generic/...` identifier is the honest representation.
|
|
5
7
|
*/
|
|
6
8
|
export declare const AGENTIC_TOOL_PURL_TYPE = "generic";
|
|
7
|
-
/**
|
|
8
|
-
* Rewrite an absolute path under the user's home directory to a `~`-relative
|
|
9
|
-
* form so the emitted BOM does not carry the local username.
|
|
10
|
-
*
|
|
11
|
-
* @param {string} filePath Absolute path
|
|
12
|
-
* @returns {string} Home-relative path when applicable, else the input
|
|
13
|
-
*/
|
|
14
|
-
export declare function redactHomePath(filePath: string): string;
|
|
15
9
|
/**
|
|
16
10
|
* Describe where each supported agentic CLI tool stores its per-user state.
|
|
17
11
|
*
|
|
@@ -20,28 +14,56 @@ export declare function redactHomePath(filePath: string): string;
|
|
|
20
14
|
* extension locations). Only the current platform's directories plus
|
|
21
15
|
* always-present dot-directories are included.
|
|
22
16
|
*
|
|
23
|
-
*
|
|
17
|
+
* An entry may also name `mcpConfigs`, the files and keys where the tool
|
|
18
|
+
* lists its MCP servers, and `ide`, the IDE_PRODUCTS id of the editor the tool
|
|
19
|
+
* ships in, whose installed version and extensions folder it then reports.
|
|
20
|
+
*
|
|
21
|
+
* @param {string} [home] Home directory to resolve the folders against
|
|
22
|
+
* @returns {Array<{tool: string, name: string, dirs: string[], supportDirs?: string[], mcpConfigs?: Array<{file: string, key: string}>, ide?: string}>}
|
|
24
23
|
* One entry per known agentic CLI tool.
|
|
25
24
|
*/
|
|
26
|
-
export declare function getAgenticToolDirs(): Array<{
|
|
25
|
+
export declare function getAgenticToolDirs(home?: string): Array<{
|
|
27
26
|
tool: string;
|
|
28
27
|
name: string;
|
|
29
28
|
dirs: string[];
|
|
30
29
|
supportDirs?: string[];
|
|
30
|
+
mcpConfigs?: Array<{
|
|
31
|
+
file: string;
|
|
32
|
+
key: string;
|
|
33
|
+
}>;
|
|
34
|
+
ide?: string;
|
|
31
35
|
}>;
|
|
32
36
|
/**
|
|
33
37
|
* Discover which agentic CLI tools are installed for the current user by
|
|
34
38
|
* checking their known home directories.
|
|
35
39
|
*
|
|
36
|
-
* @
|
|
40
|
+
* @param {string} [home] Home directory to resolve the folders against
|
|
41
|
+
* @returns {Array<{tool: string, name: string, dir: string, supportDir?: string, mcpConfigs?: Object[], ide?: string}>}
|
|
37
42
|
* One entry per discovered tool, using the first existing directory.
|
|
38
43
|
*/
|
|
39
|
-
export declare function discoverAgenticTools(): Array<{
|
|
44
|
+
export declare function discoverAgenticTools(home?: string): Array<{
|
|
40
45
|
tool: string;
|
|
41
46
|
name: string;
|
|
42
47
|
dir: string;
|
|
43
48
|
supportDir?: string;
|
|
49
|
+
mcpConfigs?: Object[];
|
|
50
|
+
ide?: string;
|
|
44
51
|
}>;
|
|
52
|
+
/**
|
|
53
|
+
* Count the MCP servers a tool lists across its configuration files. A server
|
|
54
|
+
* named in two files is counted once.
|
|
55
|
+
*
|
|
56
|
+
* @param {string} dir Tool home directory, which relative files resolve against
|
|
57
|
+
* @param {Array<{file: string, key: string}>} [mcpConfigs] Files and the key
|
|
58
|
+
* holding the server map. A key is looked up as written first, so a dotted
|
|
59
|
+
* key such as `amp.mcpServers` matches a literal property.
|
|
60
|
+
* @returns {number|undefined} Number of servers, or undefined when no file
|
|
61
|
+
* defines any
|
|
62
|
+
*/
|
|
63
|
+
export declare function countConfiguredMcpServers(dir: string, mcpConfigs?: Array<{
|
|
64
|
+
file: string;
|
|
65
|
+
key: string;
|
|
66
|
+
}>): number | undefined;
|
|
45
67
|
/**
|
|
46
68
|
* Compute safe, redacted signal counts for a discovered tool. Only structural
|
|
47
69
|
* counts and small enumerated values are returned; no credential, transcript,
|
|
@@ -50,14 +72,21 @@ export declare function discoverAgenticTools(): Array<{
|
|
|
50
72
|
* @param {string} tool Tool key
|
|
51
73
|
* @param {string} dir Discovered tool home directory
|
|
52
74
|
* @param {string} [supportDir] Optional platform support directory
|
|
75
|
+
* @param {Array<{file: string, key: string}>} [mcpConfigs] Files that list
|
|
76
|
+
* the tool's MCP servers, used when the tool has no reader of its own
|
|
77
|
+
* @param {string} [home] Home directory the tool was found in
|
|
53
78
|
* @returns {Object} Map of signal name to count/boolean/small-string value
|
|
54
79
|
*/
|
|
55
|
-
export declare function collectToolSignals(tool: string, dir: string, supportDir?: string
|
|
80
|
+
export declare function collectToolSignals(tool: string, dir: string, supportDir?: string, mcpConfigs?: Array<{
|
|
81
|
+
file: string;
|
|
82
|
+
key: string;
|
|
83
|
+
}>, home?: string): Object;
|
|
56
84
|
/**
|
|
57
85
|
* Build a CycloneDX application component for one discovered agentic tool.
|
|
58
86
|
*
|
|
59
|
-
* @param {{tool: string, name: string, dir: string, supportDir?: string}} entry
|
|
87
|
+
* @param {{tool: string, name: string, dir: string, supportDir?: string, mcpConfigs?: Object[], ide?: string}} entry
|
|
60
88
|
* Discovered tool entry
|
|
89
|
+
* @param {string} [home] Home directory, used to find the tool's editor
|
|
61
90
|
* @returns {Object} CycloneDX component
|
|
62
91
|
*/
|
|
63
92
|
export declare function componentForAgenticTool(entry: {
|
|
@@ -65,7 +94,9 @@ export declare function componentForAgenticTool(entry: {
|
|
|
65
94
|
name: string;
|
|
66
95
|
dir: string;
|
|
67
96
|
supportDir?: string;
|
|
68
|
-
|
|
97
|
+
mcpConfigs?: Object[];
|
|
98
|
+
ide?: string;
|
|
99
|
+
}, home?: string): Object;
|
|
69
100
|
/**
|
|
70
101
|
* Discover installed agentic CLI tools on the current host and return CycloneDX
|
|
71
102
|
* components describing each one, plus the child agents, plugins, and providers
|
|
@@ -73,13 +104,16 @@ export declare function componentForAgenticTool(entry: {
|
|
|
73
104
|
*
|
|
74
105
|
* This host scan is unconditional: it does not consult scan filters such as
|
|
75
106
|
* `--exclude` or profile/technique options, because it inventories fixed tool
|
|
76
|
-
* home directories rather than a project tree.
|
|
77
|
-
* accepted for signature parity and is intentionally not used to alter results.
|
|
107
|
+
* home directories rather than a project tree.
|
|
78
108
|
*
|
|
79
|
-
* @param {Object} [options={}] Collection options
|
|
109
|
+
* @param {Object} [options={}] Collection options
|
|
110
|
+
* @param {string} [options.home] Home directory to scan, defaulting to the
|
|
111
|
+
* current user's
|
|
80
112
|
* @returns {{components: Object[], services: Object[], dependencies: Object[]}} Discovered inventory
|
|
81
113
|
*/
|
|
82
|
-
export declare function collectAgenticTools(
|
|
114
|
+
export declare function collectAgenticTools(options?: {
|
|
115
|
+
home?: string;
|
|
116
|
+
}): {
|
|
83
117
|
components: Object[];
|
|
84
118
|
services: Object[];
|
|
85
119
|
dependencies: Object[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agenticToolutils.d.ts","sourceRoot":"","sources":["../../../lib/helpers/agenticToolutils.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agenticToolutils.d.ts","sourceRoot":"","sources":["../../../lib/helpers/agenticToolutils.js"],"names":[],"mappings":"AAUA,OAAO,EAAgB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAQhE,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,YAAY,CAAC;AAiDhD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,AAJpC,CACA,EADQ,MAIwC,GAHtC,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAgOtJ;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,AAJtC,CACA,EADQ,MAI0C,GAHxC,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAuBtH;AA4eD;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAPlC,MAOkC,EAAE,UAAU,AANtD,CAGA,EAHQ,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAC,CAMa,GAH5C,MAAM,GAAC,SAAS,CAuB5B;AAkCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EATK,MASL,EACJ,GAAG,EATM,MASN,EACH,UAAU,AATT,CACA,EADQ,MASC,EACV,UAAU,AATT,CAEA,EAFQ,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAC,CAShC,EACV,IAAI,AARH,CACA,EADQ,MAQO,GAPL,MAAM,CAsBlB;AA6BD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EALlC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAKhE,EAAE,IAAI,AAHhD,CACA,EADQ,MAGoD,GAFlD,MAAM,CAqElB;AA0QD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,AALxC,CAGA,EAFA;IAAyB,IAAI,AAA7B,CAEA,EAFQ,MAAM,CAEd;CAE6C,GAFnC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAC,CA0C9E"}
|
|
@@ -6,11 +6,18 @@ import crypto from "node:crypto";
|
|
|
6
6
|
*/
|
|
7
7
|
export declare const MAX_SIGNATURE_ENTRIES = 32;
|
|
8
8
|
/**
|
|
9
|
-
* Members the CycloneDX 1.4 to 1.7
|
|
10
|
-
*
|
|
11
|
-
*
|
|
9
|
+
* Members the CycloneDX 1.4 to 1.7 schemas define at the root of a BOM, plus
|
|
10
|
+
* `specFormat`, which an early 2.0 draft used in place of `bomFormat`. A JSF
|
|
11
|
+
* root signature is only accepted on an object made of these members, so a
|
|
12
|
+
* signed component, service, or annotation cannot pass as a signed BOM.
|
|
12
13
|
*/
|
|
13
14
|
export declare const BOM_ROOT_MEMBERS: readonly string[];
|
|
15
|
+
/**
|
|
16
|
+
* Members the CycloneDX 2.0 draft schema defines at the root of a document.
|
|
17
|
+
* A JSS root signature (lib/helpers/jssSigner.js) is only accepted on an
|
|
18
|
+
* object made of these members.
|
|
19
|
+
*/
|
|
20
|
+
export declare const BOM_20_ROOT_MEMBERS: readonly string[];
|
|
14
21
|
/**
|
|
15
22
|
* Renders a value taken from a document for a message. JSON can make any field
|
|
16
23
|
* an object or array, and interpolating those directly can throw.
|
|
@@ -19,6 +26,16 @@ export declare const BOM_ROOT_MEMBERS: readonly string[];
|
|
|
19
26
|
* @returns {string} - Printable text
|
|
20
27
|
*/
|
|
21
28
|
export declare function displayValue(value: any): string;
|
|
29
|
+
/**
|
|
30
|
+
* Deterministic JSON canonicalizer following RFC 8785 (JCS), which JSF uses to
|
|
31
|
+
* produce the signed data. Values are serialized the way JSON.stringify would
|
|
32
|
+
* see them, so an in-memory object and its parsed JSON form canonicalize
|
|
33
|
+
* identically.
|
|
34
|
+
*
|
|
35
|
+
* @param {any} value - The JSON object/value to canonicalize
|
|
36
|
+
* @returns {string|undefined} - Canonicalized JSON string, or undefined for values JSON omits
|
|
37
|
+
*/
|
|
38
|
+
export declare function canonicalizeJson(value: any): string | undefined;
|
|
22
39
|
/**
|
|
23
40
|
* Wraps shared-secret material for HMAC (HS256, HS384, HS512) signing or
|
|
24
41
|
* verification.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bomSigner.d.ts","sourceRoot":"","sources":["../../../lib/helpers/bomSigner.js"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAyDjC;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC
|
|
1
|
+
{"version":3,"file":"bomSigner.d.ts","sourceRoot":"","sources":["../../../lib/helpers/bomSigner.js"],"names":[],"mappings":"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"}
|