Xygeni
About Xygeni
Xygeni is a Software Supply Chain Security platform whose scanners produce JSON reports for code vulnerabilities (SAST), open-source dependency vulnerabilities (SCA), hard-coded secrets, IaC flaws, web-application vulnerabilities (DAST), CI/CD and SCM misconfigurations, and malicious or suspect components.
This parser handles three Xygeni scan kinds in phase 1: SAST, SCA, and
Secrets. All three share a common metadata envelope; the parser
dispatches on metadata.scanType.
Scan Types
| Scan type | metadata.scanType | Xygeni CLI command (typical) |
|---|---|---|
Xygeni SAST Scan | sast | xygeni scan --scan-type=sast --format=json |
Xygeni SCA Scan | deps | xygeni scan --scan-type=deps --format=json |
Xygeni Secrets Scan | secrets | xygeni scan --scan-type=secrets --format=json |
See the Xygeni documentation at https://docs.xygeni.io for installation and the full set of CLI options.
Acceptable JSON Format
All three scan types share the same envelope:
{
"metadata": {
"uuid": "...",
"timestamp": "2026-04-26T07:08:29Z",
"projectName": "...",
"scanType": "sast" | "deps" | "secrets",
"format": "<scanType>-xygeni",
"reportProperties": {
"tool.name": "Xygeni",
"tool.version": "..."
}
},
...
}The kind-specific payload then follows:
- SAST —
vulnerabilities[]— each entry carriesdetector(the rule id),severity,location.{filepath, beginLine, endLine, code},cwe/cwes[],tags[],explanation,uniqueHash,issueId, and an optionalcodeFlows[]block describing source / sink frames and the data path. - SCA —
dependencies[]— each dependency hasname,version,ecosystem, and a nestedvulnerabilities[]of CVE/GHSA advisories withcve,cwes,fixedVersion,aliases,overallCvssScore,references,description,uniqueHash,issueId. - Secrets —
secrets[]— each entry hastype(e.g.aws_access_key),detector,severity,location(same shape as SAST),description,tags,uniqueHash,issueId. Thesecretvalue andlocation.codeare already redacted by the Xygeni CLI before serialisation.
Sample Scan Data
Sample Xygeni JSON reports can be found here.
Deduplication
Every finding carries unique_id_from_tool (set from Xygeni’s vendor-stable
uniqueHash) and vuln_id_from_tool (set from issueId). The deduplication
algorithm is configured per scan type:
| Scan type | Algorithm | Hash-code fields (fallback) |
|---|---|---|
| Xygeni SAST Scan | unique_id_from_tool | n/a |
| Xygeni SCA Scan | unique_id_from_tool_or_hash_code | vulnerability_ids, component_name, component_version |
| Xygeni Secrets Scan | unique_id_from_tool | n/a |
For SCA the hash-code fallback enables cross-tool deduplication: the same CVE on the same package@version reported by Xygeni and another SCA scanner (Snyk, Trivy, etc.) collapse into a single Finding.