Skip to content

How to Generate Guidance

Generating guidance creates outputs from your baseline. By default it generates documentation (AsciiDoc, HTML, PDF). With additional flags, you can also generate compliance scripts, configuration profiles, and more.


  1. Run the command with your baseline

    Terminal window
    ./mscp.py guidance custom/baselines/BASELINE_NAME.yaml

    Example:

    Terminal window
    ./mscp.py guidance custom/baselines/800-53r5_moderate_macos_26.0.yaml
  2. Add flags for additional outputs

    Terminal window
    ./mscp.py guidance custom/baselines/800-53r5_moderate_macos_26.0.yaml -s -p

    This generates guidance docs plus compliance script (-s) and configuration profiles (-p).

    Generate all outputs at once with -A:

    Terminal window
    ./mscp.py guidance custom/baselines/800-53r5_moderate_macos_26.0.yaml -A
  3. Find your files

    All outputs are saved to build/BASELINE_NAME/:

    • Directorybuild/
      • Directory800-53r5_moderate_macos_26.0/
        • 800-53r5_moderate_macos_26.0.adoc AsciiDoc source
        • 800-53r5_moderate_macos_26.0.html Web documentation
        • 800-53r5_moderate_macos_26.0.pdf Printable documentation
        • 800-53r5_moderate_macos_26.0.md Markdown (if -m)
        • 800-53r5_moderate_macos_26.0_compliance.sh Compliance script (if -s)
        • 800-53r5_moderate_macos_26.0.xlsx Excel spreadsheet (if -x)
        • Directorymobileconfigs/ Configuration profiles (if -p)
        • Directoryactivations/ DDM components (if -d)
        • Directoryconfigurations/
        • Directoryassets/
        • Directorypreferences/

Flag Output
(none) Guidance documents (.adoc, .html, .pdf)
-A All outputs
-s Compliance script
-p Configuration profiles
--consolidated-profile Single consolidated configuration profile
--granular-profiles Granular profiles
-d DDM components
-x Excel spreadsheet (.xlsx)
-m Markdown documentation

Additional options:

Flag Description
-l LOGO Include custom logo in documentation
-L LANG Language for output
-H HASH Sign configuration profiles with certificate
--audit_name NAME Custom name for audit plist and log
--reference REF Use reference ID instead of rule ID
--dark Dark mode output

Generate all outputs:

Terminal window
./mscp.py guidance custom/baselines/800-53r5_moderate_macos_26.0.yaml -A

Generate documentation only:

Terminal window
./mscp.py guidance custom/baselines/800-53r5_moderate_macos_26.0.yaml

Generate everything for MDM deployment:

Terminal window
./mscp.py guidance custom/baselines/DISA-STIG_macos_26.0.yaml -s -p -d

Generate with signed profiles:

Terminal window
./mscp.py guidance custom/baselines/cis_lvl2_macos_26.0.yaml -p -H YOUR_CERT_HASH

Generate documentation with custom logo:

Terminal window
./mscp.py guidance custom/baselines/800-53r5_moderate_macos_26.0.yaml -l /path/to/logo.png

Generate Markdown output:

Terminal window
./mscp.py guidance custom/baselines/800-53r5_moderate_macos_26.0.yaml -m

Generate documentation in a specific language:

Terminal window
./mscp.py guidance custom/baselines/800-53r5_moderate_macos_26.0.yaml -L de

The default language is English (en). Available languages are determined by the locales present in config/locales/. See Generate Localization for how to create and compile translation files.


Type Location Use Case
Generated config/custom/baselines/ Baselines created by ./mscp.py baseline
Tailored config/custom/baselines/ Tailored baselines for your organization

Both produce the same outputs. Custom baselines reflect your organization’s specific settings and excluded rules.