This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Console

The Lula Console is a text-based terminal user interface that allows users to interact with the OSCAL documents in a more intuitive and visual way.

Currently, only the Component Definition and Assessment Results models are supported in the Console.

  • See the sub-pages for more information on interacting with each specific OSCAL model in the Console.

[!NOTE] The Console is currently in development and views are subject to change.

Usage

To open the Console with particular OSCAL models:

lula console -f /path/to/oscal-component.yaml,/path/to/oscal-component-2.yaml,/path/to/assessment-results.yaml

The -f (or --input-files) flag can be used to specify multiple OSCAL model file paths to be loaded into the Console.

Writing to Output

Component Definition

The Console supports writing updated remarks and description fields to the component-definition model.

To include an output file to save any changes made to the component definition, use the --component-output or -cflag:

lula console -f /path/to/oscal-component.yaml -c /path/to/output.yaml

If no output file is specified and a single component definition is passed, the provided component definition will be overwritten. If multiple component definitions are passed and no output file is specified, the Console will default to component.yaml in the current working directory.

Assessment Results

The Console supports writing assessment results that are generated from the Component Definition validate execution.

To specify an output file to write assessment results, include --assessment-output or -a. If you provide no -a, but include a single assessment results file as inputs (via --input-files/-f), that will be used as the output file. If no assessment results file is provided (or multiple are provided), the Console will default to assessment-results.yaml in the current working directory.

Example of running console including the optionality to write assessment results to the provided file:

lula console -f /path/to/oscal-component.yaml -a /path/to/output.yaml

Keys

The Console responds to the following keys for navigation and interaction (each sub-model has additional key response, see respective help views for more information):

KeyDescription
?Toggle help
ctrl+cQuit
tabTab right between models
shift+tabTab left between models

1 - Assessment Results

The Assessment Result view provides the Console user with an interactive experience of the OSCAL Assessment Results model. The view supports navigation between the different results contained in the Assessment Results model, as well as the ability to view Findings and Observations in tabular and filterable formats. Additional detail views are available to view the raw OSCAL model data for selected Findings/Observations.

Usage

The Assessment Results model supports the following views:

Keys

The Assessment Results model responds to the following keys for navigation and interaction (some widgets have additional key response, see respective help views for more information):

KeyDescription
?Toggle help
ctrl+cQuit
tabTab right between models
shift+tabTab left between models
/hNavigate left across widgets in model
/lNavigate right across widgets model
/kMove up in table OR scroll up in panel
/jMove down in table OR scroll up in panel
/Filter table
Select available item
dDetail available item (findings and observations)
escClose OR esc filtering

During console viewing, the top-right corner will display the help keys availble in the context of the selected widget. When an overlay is open, the help keys will be displayed in the overlay.

Views

Result View

assessment results console

Result Comparison View

assessment results console comparison

2 - Component Definition

The Component Definition view currently allows for a read and limited write experience of the OSCAL Component Definition model. The view is tailored to the usage of the Component Definition in the context of Lula, and is not intended to be a comprehensive view of the model.

Usage

The Component Definition model supports the following views:

Keys

The Component Definition model responds to the following keys for navigation and interaction (some widgets have additional key response, see respective help views for more information):

KeyDescription
?Toggle help
ctrl+cQuit
tabTab right between models
shift+tabTab left between models
/hNavigate left across widgets model
/lNavigate right across widgets model
/kMove up in list OR scroll up in panel
/jMove down in list OR scroll up in panel
/Filter list
Select item
eEdit available fields (remarks and description)
dDetail available fields (validations)
ctrl+sSave changes (Note: this may overwrite the original file if an output file unspecified)
escCancel

During console viewing, the top-right corner will display the help keys availble in the context of the selected widget. When an overlay is open, the help keys will be displayed in the overlay.

Views

Read-Only Navigation

The model can be sorted by Component, Framework, and Control. Additional data/features provided by the Component Definition OSCAL Model are not currently supported for viewing in the Console.

component definition console read

Editing Remarks and Description

Limited editing of the remarks and description is supported. Once changes are made, to be persisted back to the file, the data will need to be saved via the ctrl+s key.

component definition console edit

Validation Detail

The Validation Detail is a view that displays a somewhat curated version of the Lula Validation. It is intended to be a quick view of the validation, and is not a one-to-one representation.

component definition console validation detail

Validation Execution

A validation can be executed using the ctrl+v keycommand. This will run the validation ONLY for the currently active framework. This also will automatically run executable validations. Future work will be added to allow for more granular control over validation execution in the console.

component definition console validation detail