Public API reference

August 14, 2026 · View on GitHub

Generated by scripts/gen-api-reference.mjs - do not edit by hand. Run npm run api:docs to regenerate; npm run api:check fails CI if it drifts.

Only the symbols listed here are covered by the SemVer contract (VERSIONING.md). Anything not re-exported from a package's entry point is internal and may change in a patch. The machine-readable frozen surface is api-surface.json.

@quantakrypto/core

Public entry: packages/core/src/index.ts - 211 exported symbols.

SymbolKindSummary
ANALYZABLE_LANGUAGES_LABELconstHuman label for the source languages the scanner can analyze for inline
ANALYZABLE_SOURCE_EXTENSIONSconstExtensions the scanner can actually analyze for inline crypto usage today
AbortErrorclassThrown when a scan is aborted via ScanOptions.signal. name is "AbortError"
AlgorithmFamilytypeClassical asymmetric algorithm families that are not quantum-safe.
AssetExposureinterfacePer-asset rollup for the repo summary.
BASELINE_VERSIONconstCurrent on-disk baseline schema version.
BaselineinterfaceThe on-disk baseline shape: a version tag and a set of fingerprints.
BudgetExceededErrorclassThrown when a scan exceeds its maxFiles / maxBytes work budget mid-walk.
CLASSIFICATION_SENSITIVITYconstData-sensitivity weight (S) per classification.
CONFIDENCE_WEIGHTconstCrypto-vulnerability weight (V) scaled by detector confidence.
CONFIG_FILENAMEconstCanonical config file name discovered at a scan root.
CRYPTO_AGILITY_MANIFEST_VERSIONconstSchema version of the manifest this module emits and validates. Bumped only on a
CRYPTO_AGILITY_WELL_KNOWN_PATHconstThe conventional path a manifest is served from, relative to the site origin.
CWE_BROKEN_CRYPTOconstCWE-327: Use of a Broken or Risky Cryptographic Algorithm.
CWE_CERT_VALIDATIONconstCWE-295: Improper Certificate Validation.
CWE_HARDCODED_KEYconstCWE-798: Use of Hard-coded Credentials (embedded private keys).
CWE_RISKY_PRIMITIVEconstCWE-1240: Use of a Cryptographic Primitive with a Risky Implementation.
CWE_WEAK_STRENGTHconstCWE-326: Inadequate Encryption Strength.
CbomComponentinterfaceA single CycloneDX cryptographic-asset component.
CodemodinterfaceA deterministic fix for a class of findings.
ConfidencetypeHow sure the detector is that the finding is a real use of the algorithm.
ConfigErrorclassThrown when a known key has a malformed value (a usage error: exit 2).
ContextLeveltypeHow much source context a redacted request carries.
CryptoAgilityCbomSummaryinterfaceA compact summary of the full CBOM, linking to it by serial number.
CryptoAgilityFamilyinterfaceA single algorithm family in use, mirroring the CBOM's grouping.
CryptoAgilityManifestinterfaceThe full crypto-agility manifest.
CryptoAgilityManifestOptionsinterfaceInputs the CLI/runtime supplies that are not derivable from the scan.
CryptoAgilityPolicyinterfaceThe migration policy the project declares it is measured against.
CryptoAgilityPostureinterfaceThe project's cryptographic posture, distilled from the scan inventory.
CryptoInventoryinterface
CryptoPolicyinterfaceAn organization-supplied cryptography policy (from a JSON file).
CryptoPosturetypeWhat a piece of cryptography means for a quantum adversary.
CycloneDxBominterfaceA CycloneDX 1.6 cryptographic bill of materials (kept permissive).
DEFAULT_MIGRATION_HORIZON_YEARSconstDefault years to complete the org's PQC migration (Y in Mosca's inequality).
DEFAULT_PROFILE_IDconstThe default profile id when --profile is not given.
DEFAULT_QUANTUM_THREAT_YEARSconstDefault years until a cryptographically-relevant quantum computer is assumed
DEFAULT_UNBOUND_CLASSIFICATIONconstClassification assumed for findings that bind to no declared asset.
DEP_ADVISORY_RULEconstGeneric catalog entry for the dep-advisory rule. The per-advisory specifics
DEP_VULNERABLE_RULEconstCatalog entry for the dep-vulnerable rule. Dependency findings are produced
DataClassificationtypeData sensitivity classes, least → most sensitive. Vocabulary aligned with the
DependencyEcosystemtypePackage ecosystems the dependency scanner understands.
DetectorinterfaceA pluggable source detector. Detectors are pure and stateless.
DetectorInputinterface
DetectorLanguagetypeThe programming language / surface a detector targets. "any" means the
DetectorRegistryclassAn ordered, id-indexed collection of detectors. Registration order is
DetectorScopetypeWhich logical scope a detector belongs to. Drives the source/config scope
EvidenceFindinginterfaceStable per-finding record for the evidence body (deterministic per commit).
EvidenceSignerinterfaceAn EXTERNAL signer/timestamper the tool orchestrates. Per ADR-0004 the tool
ExecFntypeShape of an injectable command runner and of the errors it may reject with.
ExposureRationaleinterfaceFull, auditable breakdown of one finding's exposure score.
FIX_REQUEST_SCHEMAconstJSON Schema every fix proposal must satisfy.
FindinginterfaceA single detected concern.
FindingCategorytypeWhat kind of cryptographic concern a finding represents.
FindingExposureinterfaceA finding's computed exposure, keyed by fingerprint for website ingest.
FixProposalinterfaceAn LLM-proposed fix before it enters the deterministic pipeline.
HNDL_FILENAMEconstCanonical hndl.yml file name discovered at a scan root.
HNDL_MODEL_VERSIONconstVersion of the exposure model. Bump on any weight / formula change.
HndlDataAssetinterfaceA single declared data asset from hndl.yml.
HndlDefaultsinterfaceDefaults applied to findings that bind to no declared asset.
HndlErrorclassThrown when hndl.yml is malformed (structure or a bad known value).
HndlHorizoninterfaceThe Mosca horizons that gate the exposure model.
HndlMapinterfaceA fully-parsed, validated hndl.yml.
HndlReportinterfaceThe complete HNDL analysis of a scan.
HndlScopetypeLogical scope a finding belongs to, used for optional scope-bound assets. The
HndlSummaryinterfaceRepo-level HNDL summary.
HybridStancetypeWhether classical+PQC hybridization is required during the transition, per regime.
InventoryAssetinterfaceOne algorithm this repository actually uses, with where it appears.
LoadConfigResultinterfaceResult of {@link loadConfig}: the resolved config plus where it came from.
MANDATESconstThe bundled mandate catalog. Keyed by --mandate <id>.
Mandateinterface
MandateEvaluationinterface
MandateFindingVerdictinterface
MandateGateOptionsinterface
MandateRuleinterface
MandateRuleTiertypeWhich enforcement tier a clause encodes: warn (deprecate) or fail (disallow).
MandateStatustypeA finding's status against a mandate, worst last:
ManifestValidationinterfaceOutcome of {@link validateCryptoAgilityManifest}.
NON_HNDL_DISCOUNTconstDiscount applied to V when a finding is NOT harvest-now-decrypt-later exposed
OpenVexDocumentinterfaceAn OpenVEX 0.2.0 document.
OpenVexOptionsinterfaceOptions for {@link toOpenVex}.
OpenVexStatementinterfaceA single OpenVEX statement: one synthetic vulnerability over its affected products.
PQC_STANDARDSconstThe current snapshot. Update on each quarterly review; the drift test keeps the
PQC_TRANSITION_NOTEconstForward-looking PQC standards worth tracking beyond the current FIPS 203/204/205
PROVENANCE_RULESconstThe two rule ids this module can emit, for SARIF catalog registration.
ParallelScanOptionsinterfaceExtra options for {@link scanParallel}, layered onto {@link ScanOptions}.
PatchinterfaceA concrete proposed edit: the full new content for a single file.
PolicyContextinterfaceFiles a remediation may write to.
PolicyDecisioninterface
PolicyFindingVerdictinterfaceOne finding's verdict against the policy.
PolicyMappinginterfaceThe policyMapping block added to the evidence report.
PolicyVerdicttypeThe three verdicts a finding can carry against a policy.
PqcStandardsinterfaceThe full post-quantum standards snapshot the tool tracks.
ProvenanceOptionsinterfaceOptions for {@link checkProvenance}.
QuantakryptoFileConfiginterfaceThe slice of options a quantakrypto.config.json can set. A subset of
REMEDIATE_RUBRICconstThe system rubric for a fix proposal.
ReadinessReportinterface
ReadinessReportOptionsinterface
RedactedContextinterfaceA finding's context, redacted to a {@link ContextLevel} and secret-stripped.
RejectedPatchinterface
RemediateOptionsinterface
RemediateRequestinterfaceA remediation request bundle for the host agent.
RemediationinterfaceA remediation recommendation for a classical algorithm.
RemediationResultinterface
RepoHeadOutcometypeOutcome of a HEAD request to a declared repository URL.
RepoHeadRequestertypeInjected HEAD requester. Implemented by the (networked) caller — qScan supplies
ReportFormattypeOutput formats qScan / reporters can emit.
ReportOptionsinterfaceOptions shared by the structured reporters ({@link toSarif} / {@link toJson}).
RuleMetainterfaceDeclarative metadata for a single rule a detector can emit. This is the
SEVERITY_ORDERconstSeverity ordering, most → least severe. Index 0 is the most severe.
SEVERITY_VULNERABILITYconstCrypto-vulnerability weight (V) contributed by a finding's severity.
STANDARDS_PROFILESconstBuilt-in regime profiles. Facts reflect each authority's published PQC-transition
STATEFUL_HBS_NOTEconstGuidance for stateful hash-based signatures (SP 800-208: LMS / XMSS / HSS).
SarifLoginterfaceMinimal SARIF 2.1.0 log shape (kept permissive on purpose).
ScanAdvisoriesOptionsinterfaceOptions for {@link scanAdvisories}.
ScanChunkinterfaceOne unit of work dispatched to a worker.
ScanDiagnosticsinterfaceNon-fatal things that happened during a scan that reduce coverage. Surfaced so
ScanOptionsinterfaceOptions controlling a scan.
ScanResultinterfaceThe full result of a scan.
SecurityTiertypeSecurity tier for remediation guidance.
SeveritytypeHow serious a finding is, ordered most → least severe.
SignEvidenceOptionsinterfaceOptions for {@link signReadinessReport}: a detached-signature and/or a timestamp signer.
SourceLocationinterfaceA precise location inside a scanned file.
StandardsCitationinterfaceA single standards fact with its citation and when it was last verified.
StandardsProfileinterfaceA regime's PQC guidance profile.
StandardsReviewStatusinterfaceResult of {@link standardsReviewStatus}.
TIER_PARAMSconstPer-tier KEM / signature parameter sets.
TRIAGE_RUBRICconstThe system rubric that defines what an exposure verdict means.
TRIAGE_VERDICT_SCHEMAconstJSON Schema every triage verdict must satisfy.
TriageAnnotationinterfaceOptional LLM triage annotation attached to a finding by qscan --triage.
TriagePrioritytypeRelative urgency an LLM triage pass assigns to a finding.
TriageRequestinterfaceA triage request bundle: the rubric, the verdict schema, and redacted contexts.
TriageVerdictinterfaceAn LLM triage verdict for a single finding (never suppresses it). The
VERSIONconstThe tool version surfaced in reports. Kept in its own module so reporters and
VerifiedPatchinterface
VerifyReadinessResultinterfaceThe result of {@link verifyReadinessReport}.
VerifyResultinterfaceResult of {@link verifyFix}: the findings that remain, and whether the
VulnerableDependencyinterfaceA known quantum-vulnerable dependency entry.
applyBaselinefunctionSplit findings into those NOT in the baseline (newFindings) and those that
assertKnownMandatesfunctionValidate mandate ids loudly, matching parseCryptoPolicy's fail-loud
baselineFromFindingsfunctionBuild a {@link Baseline} from a set of findings (deduped, sorted).
buildContextfunctionBuild the redacted context for finding at level. fileContent is the full
buildCryptoAgilityManifestfunctionBuild a crypto-agility manifest from a scan result. Pure: every runtime input
buildInventoryfunctionBuild the full inventory (counts + HNDL + score) from a set of findings.
buildPolicyMappingfunctionMap every finding to a policy verdict, with per-verdict counts. Deterministic:
buildReadinessReportfunctionBuild the A.8.24 readiness report for a scan result. The attestation's
buildRemediateRequestfunctionBuild a remediation request bundle (offline; metadata level unless readContent).
buildTriageRequestfunctionBuild a triage request bundle for a set of findings. Offline: for non-metadata
changedFilesfunctionReturn the list of changed files (relative POSIX paths) under root.
checkPatchPolicyfunctionDecide whether patch may be applied under ctx.
checkProvenancefunctionCheck a project's declared-source-repository provenance.
codemodForfunctionThe first codemod that applies to finding, or undefined.
codemodRegistryconstAll registered codemods, in priority order.
compareFindingsfunctionStable comparator: by file, then line, then ruleId. Exported for reuse.
computeHndlfunctionCompute HNDL exposure for a set of findings against a declared data map.
configToggleCodemodconst
defaultRegistryconstThe default registry, preloaded with {@link builtinDetectors}. Used by
defaultStandardsProfilefunctionThe default profile (NIST). Always defined.
detectFilefunctionRun all applicable detectors + the manifest scanner over a single file's
detectorsconstThe full set of built-in detectors exposed on the public API. Re-exported
evaluateMandatesfunctionEvaluate findings against the selected mandates as of now. Unknown mandate
findingFingerprintfunctionIdentity key for a finding's exposure. Prefers a finding.fingerprint field
findingScopefunctionThe scope a finding belongs to. Dependency findings (from the manifest
fingerprintFindingfunctionStable, line-INSENSITIVE fingerprint of a finding: the hex SHA-256 of
formatProfileGuidancefunctionPer-family migration targets tailored to a selected {@link StandardsProfile}
formatSummaryfunctionRender a human-readable summary of a scan result. Colour is off by default;
formatTierGuidancefunctionPer-family migration targets for a CNSA security tier — surfaces the otherwise
getMandateconst
getStandardsProfilefunctionLook up a built-in profile by id, or undefined when unknown.
globMatchfunctionMatch a POSIX path against a glob supporting ** (any path segments incl.
isAnalyzableSourcefunctionTrue when a path is in a source language the scanner can analyze for crypto.
isBinaryPathfunctionTrue if the file's extension marks it as binary / non-text.
isManifestFilefunctionTrue if a file path looks like a manifest we can parse for dependencies.
languageToExtensionfunctionMap a language name (or a bare extension) to a source extension whose
loadBaselinefunctionLoad a baseline from disk. Returns an empty baseline (rather than throwing)
loadConfigfunctionLoad a quantakrypto.config.json for a scan.
loadHndlMapfunctionLoad and validate the hndl.yml for a scan. By default reads
looksMinifiedfunctionHeuristic content check for machine-minified / generated files with no
mandateGateFailsfunctionThe gate decision under the "deadline-aware" default: fail only once a DISALLOW
mandateIdsconst
meetsThresholdfunctionTrue when severity is at or above threshold (i.e. at least as severe).
mergeCbomsfunctionMerge CBOMs into one. Components with the same bom-ref (same algorithm +
moscaFactorfunctionM - the Mosca factor (0..1). X is the data's protection horizon
normalizeRepoUrlfunctionNormalize a declared repository reference to an https(s) URL, or null when it
parseCryptoPolicyfunctionValidate + normalize a parsed policy object (from an operator's JSON file).
parseHndlMapfunctionValidate a parsed hndl.yml object into a typed {@link HndlMap}. Applies
remediateFindingsfunctionRun each finding through patchSource → policy → verify, collecting the patches
remediationForfunctionLook up the recommended post-quantum remediation for a classical algorithm.
remediationForProfilefunctionRegime-aware remediation. Composes the base family guidance with a
remediationForTierfunctionTier-aware remediation. Returns the base family remediation plus the
renderPreflightfunctionRender the exact payload text a --dry-run preflight would send.
sarifLevelfunctionMap our severity to a SARIF 2.1.0 result level.
saveBaselinefunctionWrite a baseline derived from the given findings to disk as pretty JSON
scaffoldHndlYamlfunctionScaffold an hndl.yml document seeded from a scan's findings. Config-scope,
scanfunctionRecursively scan a directory (or single file, or explicit file list) for
scanAdvisoriesfunctionScan root for dependency security advisories by shelling out to each present
scanParallelfunctionScan in parallel across a worker-thread pool, falling back to the in-process
severityRankfunctionRank of a severity within {@link SEVERITY_ORDER} (0 = most severe). Lower
signReadinessReportfunctionFill a readiness report's attestation with a detached signature and/or RFC-3161
standardsProfileIdsfunctionAll built-in profile ids, in a stable order (default first).
statefulHbsAppliesfunctionTrue when stateful HBS (SP 800-208) is a reasonable alternative for a family.
toCbomfunctionBuild a CycloneDX 1.6 CBOM from a scan result. One component per distinct
toJsonfunctionSerialize a scan result as a plain JSON-friendly object.
toOpenVexfunctionBuild an OpenVEX 0.2.0 document from a scan result. One statement per distinct
toSariffunctionSerialize a scan result as SARIF 2.1.0.
validateCryptoAgilityManifestfunctionValidate an untrusted value against the crypto-agility manifest schema.
verifyFixfunctionRun all detectors over code, selecting them by filename (extension) or
verifyReadinessReportfunctionRecompute the deterministic content hash over a readiness report's body and
vulnerabilityFactorfunctionV - crypto-vulnerability factor for a finding (0..1).
vulnerableDependenciesconstKnown quantum-vulnerable npm dependencies.
walkFilesvalue
withWorktreefunctionCreate a detached worktree of repoRoot at HEAD, run fn with its path, and

@quantakrypto/qscan

Public entry: packages/qscan/src/index.ts - 60 exported symbols.

SymbolKindSummary
ArgErrorclassThrown on malformed input; the CLI maps this to exit code 2.
BASELINE_VERSIONvalue
Baselinetype
ChangedFilesFntypeResolve the changed-file list for incremental scans. Injectable for testing;
ConfigurableKeytypeOption keys that a quantakrypto.config.json may also set. When such a key was set
CryptoAgilityEmitResultinterfaceOutcome of {@link runCryptoAgilityEmit}: the rendered manifest and the scan.
EXITconstProcess-style exit codes qScan uses.
Findingtype
HELP_TEXTconstThe full --help screen.
HndlInitResultinterfaceOutcome of {@link runHndlInit}: the scaffold plus where it should be written.
ParsedArgstypeResult of {@link parseArgs}: either resolved options or a meta action.
ParsedRuninterfaceA successful parse: resolved options plus which configurable keys were explicit.
QscanFormattypeOutput formats qScan accepts on the command line. Extends core's
QscanOptionsinterfaceFully-resolved options the CLI/programmatic runner operates on.
QscanRuninterfaceOutcome of {@link runQscan}.
REMEDIATE_EXITconst
REMEDIATE_HELPconst
RemediateHooksinterface
RemediateModetype
RemediateOptionsinterface
RemediateRuninterface
RenderReportOptionsinterfaceRendering controls for {@link renderReport}.
ResolvedConfiginterfaceWhat {@link resolveConfig} returns: the merged options + provenance.
RunQscanHooksinterfaceBehavioral hooks for {@link runQscan}, mainly for testing.
SEVERITY_ORDERvalue
ScanFntypeThe scan implementation runQscan calls. Matches @quantakrypto/core's scan /
ScanOptionstype
ScanResulttype
applyBaselinefunctionPartition findings into those kept and those suppressed by a baseline.
applyConfigfunctionApply a parsed config onto options under the precedence rule. Pure; returns a
asFormatfunctionValidate/normalize a --format value.
asIntfunctionValidate/normalize a non-negative integer flag value.
asSeverityfunctionValidate/normalize a severity value.
baselineFromFindingsvalue
buildBaselinefunctionBuild a {@link Baseline} from a set of findings (deduped + sorted). Alias for
defaultOptionsfunctionDefault options, before any flags are applied.
fingerprintconstCompute a stable fingerprint for a finding. Alias for core's
fingerprintFindingvalue
loadBaselinevalue
meetsThresholdvalue
parseArgsfunction
parseRemediateArgsfunctionParse qremediate argv.
readBaselinefunctionRead a baseline file from disk and return its accepted fingerprints as a set.
renderCbomfunctionRender a CycloneDX 1.6 CBOM (cryptographic bill of materials) for the scan,
renderHumanfunctionRender the human-readable banner.
renderJsonfunctionRender the JSON report (pretty-printed, no trailing newline).
renderReportfunctionRender a scan result in the requested format.
renderSariffunctionRender the SARIF 2.1.0 report (pretty-printed, no trailing newline).
renderVexfunctionRender an OpenVEX 0.2.0 document for the scan (pretty-printed, no trailing
resolveConfigfunctionLoad and merge quantakrypto.config.json into the parsed CLI options.
runCryptoAgilityEmitfunctionEmit a crypto-agility manifest for a repo (qscan crypto-agility emit /
runCryptoAgilityValidatefunctionValidate a LOCAL crypto-agility manifest file against the schema
runHndlInitfunctionScaffold an hndl.yml for a repo (qscan hndl init). Runs a scan to seed the
runQscanfunctionRun a complete qScan pass: scan → baseline → threshold → render.
runRemediatefunctionRun a complete qremediate pass. Pure w.r.t. process; the bin prints + exits.
saveBaselinevalue
severityRankvalue
unifiedDifffunctionMinimal unified diff for a localized change (3 lines of context).
versionLinefunctionThe --version line.
writeBaselinefunctionSerialize and write a baseline to disk (pretty-printed, trailing newline).

@quantakrypto/mcp

Public entry: packages/mcp/src/index.ts - 25 exported symbols.

SymbolKindSummary
CORE_VERSIONconstThe core version these tools are built against (re-exported for diagnostics).
Contenttype
CreateServerOptionsinterface
ErrorCodeconstStandard JSON-RPC 2.0 error codes (plus MCP conventions).
JSONRPC_VERSIONconstThe fixed JSON-RPC protocol marker.
JsonRpcFailureinterfaceA failed JSON-RPC response.
JsonRpcRequestinterfaceA JSON-RPC 2.0 request or notification (notifications omit id).
JsonRpcResponsetype
JsonRpcSuccessinterfaceA successful JSON-RPC response.
JsonSchemainterfaceA minimal JSON Schema object describing a tool's input.
MCP_PROTOCOL_VERSIONconstMCP protocol revision this server speaks. The initialize handshake echoes
McpServerclassA minimal, spec-faithful MCP server. Register tools with {@link registerTool}
McpServerOptionsinterface
RpcErrorclassAn error that carries a JSON-RPC error code, thrown by tool handlers/dispatch.
SERVER_NAMEconstThe MCP server name advertised to clients.
SERVER_VERSIONconstThe version reported by the server (kept in sync with @quantakrypto/core).
ServerInfointerfaceIdentifying info advertised to clients during initialize.
TextContentinterfaceA single piece of MCP content. We only emit text content in this server.
ToolDefinitioninterfaceA registered tool: descriptor plus its async handler.
ToolDescriptorinterfaceThe public descriptor of a tool, as returned by tools/list.
ToolResultinterfaceThe result envelope returned by a tools/call.
createQuantakryptoServerfunctionCreate a fully-wired quantakrypto {@link McpServer} with all tools registered.
errorResultfunctionConvenience: wrap a string as an error text tool result.
quantakryptoToolsconstAll quantakrypto MCP tools, in a stable order.
textResultfunctionConvenience: wrap one or more strings as a non-error text tool result.

@quantakrypto/sieve

Public entry: packages/sieve/src/index.ts - 49 exported symbols.

SymbolKindSummary
BugClasstypeA bug-class tag linking a category/check to quantakrypto's antiform taxonomy.
CATEGORIESconstThe full catalog, in execution order.
CategoryCountsinterfacePer-category counts.
CategoryResultinterfaceThe aggregate outcome of running one category.
CheckinterfaceOne atomic assertion within a category.
DEFAULT_ENV_ALLOWLISTconstMinimal environment variables a child process generally needs to locate its
DsaSizesinterfaceByte sizes for an ML-DSA parameter set (FIPS 204, Table 2).
FamilytypeAlgorithm families Sieve knows how to drive.
HARNESS_CATEGORYconstThe category emitted when the SUT could not be started or spoken to at all.
KemSizesinterfaceByte sizes for an ML-KEM parameter set (FIPS 203, Table 3).
PARAM_SETSconstAll known parameter-set identifiers, in canonical order.
PROTOCOL_VERSIONconstProtocol version. Bumped on any breaking wire change.
ParamSettypeCanonical parameter-set identifiers accepted on the CLI / API.
ProtocolErrorclassRaised when a line from the SUT cannot be parsed into a valid Response.
RequesttypeAny request Sieve may send.
ResponsetypeAny response the SUT may emit.
RunSieveOptionsinterfaceOptions for {@link runSieve}.
RunnerclassA long-lived handle to a spawned SUT. Construct once per test run, issue many
RunnerOptionsinterfaceOptions for constructing a {@link Runner}.
SieveReportinterfaceThe full report.
SignatureFamilytypeFamilies that support the signature operations (sign / verify).
SignatureSizestypeA signature-family size record (ML-DSA or SLH-DSA).
SizestypeUnion of the size shapes.
SlhDsaSizesinterfaceByte sizes for an SLH-DSA parameter set (FIPS 205, Table 2).
StatustypeStatus of a single check or a whole category.
SutCrashErrorclassThrown when the SUT process dies before/while a request is in flight.
TimeoutErrorclassThrown when a request exceeds its timeout.
VectortypeAny normalized vector.
VectorSetinterfaceResult of scanning a vectors directory.
VerdicttypePASS / FAIL are verdicts on the implementation; ERROR means it never ran.
asDsaSizesfunctionNarrowing helper: DSA size record or undefined.
asKemSizesfunctionNarrowing helper: KEM size record or undefined.
asSignatureSizesfunctionNarrowing helper: any signature-family size record (ML-DSA or SLH-DSA) or
asSlhDsaSizesfunctionNarrowing helper: SLH-DSA size record or undefined.
buildReportfunctionAssemble a {@link SieveReport} from category results and run metadata.
buildSutEnvfunctionBuild the environment handed to the spawned SUT.
categoriesForfunctionCategories applicable to a family (plus family-agnostic ones).
decodeResponsefunctionParse one NDJSON line from the SUT into a validated {@link Response}.
describeSutErrorfunctionDescribe a SUT failure in terms the operator can act on.
encodeRequestfunctionSerialize a request to a single NDJSON line (including the trailing "\n").
formatHumanfunctionHuman-readable terminal rendering (no color codes; CI-friendly).
formatJsonfunctionPretty JSON rendering.
fromB64functionDecode a base64 string to bytes.
isParamSetfunctionType guard: is s a recognized parameter-set identifier?
loadVectorsfunction
overallVerdictfunctionCompute the overall verdict: ERROR if the SUT could not be run, else FAIL if
runSievefunctionSpawn the SUT, run the applicable categories, and return an aggregated
sizesForfunctionLook up the size record for a parameter set.
toB64functionEncode raw bytes to a base64 string.

@quantakrypto/agent

Public entry: packages/agent/src/index.ts - 18 exported symbols.

SymbolKindSummary
AGENT_PACKAGEconst@quantakrypto/agent — BYOK LLM client for qScan triage and remediation.
FIX_PROMPT_VERSIONconstBump when the fix rubric/schema changes.
JsonSchematypeA tiny JSON-Schema validator covering exactly the subset the agent emits
LlmClientinterfaceA provider adapter: turns an {@link LlmRequest} into schema-valid JSON.
LlmConfiginterfaceBYOK provider configuration. apiKey is resolved from env by the caller.
LlmRequestinterfaceA single structured completion request.
ProposeFixOptionsinterface
TRIAGE_PROMPT_VERSIONconstBump when the rubric/schema changes so the response cache invalidates.
TriageOptionsinterface
anthropicClientfunction
cacheKeyfunctionCompose the cache key for one finding's request.
loadResponseCachefunctionLoad the response cache, or an empty map on any problem.
openAiCompatibleClientfunction
proposeFixfunctionAsk the model for a fix. Returns a {@link FixProposal} (full new file content)
resolveClientfunctionPick the adapter for config.provider. fetchImpl is injectable for tests.
saveResponseCachefunctionWrite the response cache atomically. Errors are swallowed.
triageFindingsfunctionProduce an exposure verdict per above-floor finding.
validateAgainstSchemafunctionValidate value against the JSON-Schema subset we emit.

@quantakrypto/qprobe

Public entry: packages/qprobe/src/index.ts - 42 exported symbols.

SymbolKindSummary
AttestationErrorclass
AttestationInputinterface
EndpointReportinterface
GROUP_SECP256R1const
GROUP_X25519const
GROUP_X25519MLKEM768const
HybridSupportinterface
IMAP_DIALOGconstIMAP (RFC 3501): * OK greeting → a1 STARTTLSa1 OK.
KexInitinterface
POP3_DIALOGconstPOP3 (RFC 2595): +OK greeting → STLS+OK.
PQ_SSH_KEXconstPQC / hybrid SSH key-exchange algorithm names (OpenSSH + drafts).
ProbeModetype
RunOptionsinterface
RunResultinterface
ServerHelloInfointerfaceThe result of reading a ServerHello / HelloRetryRequest.
SshProbeResultinterface
TargetinterfaceA single validated endpoint.
TargetErrorclass
TlsNegotiatedinterface
TlsRecordinterfaceA parsed TLS record.
authorizeTargetsfunctionAuthorize a set of targets or throw {@link AttestationError}. Returns silently
buildClientHellofunctionBuild a raw ClientHello TLS record advertising the hybrid group. keyShareGroup
certSignatureAlgorithmfunctionExtract the signatureAlgorithm OID (and mapped family) from a DER certificate.
classifySshfunctionFindings for an SSH endpoint from its KEXINIT.
classifyTlsfunctionFindings for a TLS endpoint from the negotiated params + the hybrid probe.
decodeOidfunctionDecode a DER OID value (the bytes inside the OID TLV) to dotted-decimal.
oidToSignatureFamilyfunctionMap a signature-algorithm OID to a classical family (or undefined).
parseOwnedHostsfunctionParse an ownership manifest file's text into a host allow-list.
parseRecordsfunctionSplit a buffer into TLS records. Stops at the first truncated record.
parseServerHelloBodyfunctionParse a ServerHello handshake message body (the bytes AFTER the 4-byte handshake
parseTargetfunctionParse and validate a single target. Throws {@link TargetError} for anything
readServerHellofunctionRead the first ServerHello/HRR out of a raw response buffer, if any.
resolveModefunctionChoose a probe mode for "auto" from the well-known port: SSH on 22, SMTP
runProbefunctionAuthorize (throws {@link AttestationError} / {@link TargetError} on failure — no
smtpAdvertisesStartTlsfunctionTrue if an EHLO reply advertises the STARTTLS capability.
smtpReplyCompletefunctionTrue once buf contains a COMPLETE SMTP reply (last line is NNN␠…).
sslRequestFramefunctionThe 8-byte libpq SSLRequest message: length(0x00000008) + code(80877103).
toCbomReportfunction
toJsonReportfunction
toSarifReportfunction
toScanResultfunctionAdapt a {@link RunResult} to a {@link ScanResult}. filesScanned is the number
x25519RawPublicfunctionA raw 32-byte X25519 public key (from node:crypto — a real, valid key).