OSCAL Deep Diff is a CLI and library tool that performs schema-agnostic, configurable deep comparisons of JSON-based OSCAL artifacts.
Open Security Controls Assessment Language (OSCAL) Deep Differencing Tool
This tool is designed for compliance auditors, risk assessors, and security automation professionals who need to compare different versions or instances of OSCAL JSON documents to identify changes, inconsistencies, or updates. It helps organizations automate and streamline governance, risk, and compliance (GRC) workflows by providing detailed, customizable differencing of complex nested JSON data.
Users should prepare a configuration YAML file specifying the paths to the JSON documents to compare and optionally customize comparator behavior to ignore or case-sensitize specific fields. The tool is optimized for OSCAL artifacts but can be used for other JSON documents with appropriate configuration. Matching behavior for nested arrays can be fine-tuned to ensure meaningful comparisons, especially for control objects in OSCAL Catalogs.
Install the CLI globally via npm: npm install -g @oscal/oscal-deep-diff
oscal-deep-diff --config config.yaml
Runs the deep diff tool using the specified YAML configuration file to compare two JSON documents and produce a diff output.