Frameworks and libraries
How to contribute a framework, mapping, threat catalogue, risk matrix, or reference-control library to the community repository
CISO Assistant's catalogue is extended through libraries — YAML files that bundle one or more catalogue objects. Anything you contribute under this path follows the same submission flow regardless of what's in the library.
What you can contribute
A single library may contain:
Frameworks — a hierarchy of requirements covering a standard, regulation, or internal control model.
Mappings — directed graphs linking the requirements of one framework to another (NIST OLIR convention).
Threat catalogues — reusable lists of threats referenced across frameworks and risk assessments.
Risk matrices — probability × impact grids used by risk assessments.
Reference controls — templates that applied controls can derive from.
Each of these can ship in its own library, or be bundled together where it makes sense (a framework with its companion reference-control catalogue, for example). See Designing your own libraries for the format and authoring tooling.
If you're comfortable with Git
Fork the community repository and make sure it's in sync with
main.Add your Excel source under the
toolsfolder.Optionally also commit the generated YAML under
backend/library/libraries/(only if you've tested that it loads cleanly).Open a pull request and accept the Contributor Licence Agreement when prompted.
We'll take it from there.
If you'd rather use the GitHub UI
The walkthrough below uses a framework as the example, but the same flow works for matrices, threat catalogues, mappings, and reference controls.
Author the Excel source. Start from one of the samples in
tools/(frameworks) ortools/excel/matrix/(risk matrices). The library type drives which sample to copy.Convert it to YAML using the
convert_library_v2.pytool to validate the structure end-to-end.

Test the YAML by loading it into a local CISO Assistant instance and checking it renders as expected.


Fork the repository on GitHub (and make sure your fork is up to date if you've contributed before).



Upload the Excel file to the
tools/folder via Add file → Upload files.


Commit with a clear message ("Submitting framework X" or "Submitting risk matrix Y").


(Optional) repeat the upload step for the YAML under
backend/library/libraries/.

Open the pull request and accept the CLA when prompted.


What we look for during review
The Excel source compiles cleanly with
convert_library_v2.py.URN prefixes don't collide with existing libraries.
For frameworks: hierarchy depth stays reasonable; assessable vs structural nodes are correctly marked.
For mappings: source and target framework URNs resolve; relationship types are valid (equal, subset, superset, intersect).
For risk matrices: the probability/impact/risk grid is internally consistent.
Licensing — only contribute content you're allowed to redistribute. Restrictively-licensed standards (CIS, CSA CCM) ship as converters, not bundled content.
Related
Last updated
Was this helpful?