Repository: ansible/ansible-navigator (language: python)

Issue:
Show a warming messages when exit messages are generated from within an action
Sometime, exit messages can be generated once the TUI has initialized.

They are logged, but should we display them?  What is being shown on the screen may not be what the user is expecting.

We should also decide if we want to proceed with the action, I don't think we should, as we might run the wrong playbook or something which would be....... not good.

```
ansible-navigator
:collections --ee FFFFF
``` 

Related #1062 
Related #1061 


NOTE:   The KV store warning and check in the collections action can be removed as well when this is done



Discussion / hints:

Fix patch:
diff --git a/docs/changelog-fragments.d/1112.bugfix.md b/docs/changelog-fragments.d/1112.bugfix.md
new file mode 100644
index 000000000..66b75cdc5
--- /dev/null
+++ b/docs/changelog-fragments.d/1112.bugfix.md
@@ -0,0 +1,4 @@
+Fixed an issue which resulted in messages about invalid arguments not
+being shown to the user in the TUI.
+
+-- by {user}`cidrblock`
diff --git a/src/ansible_navigator/action_base.py b/src/ansible_navigator/action_base.py
index 9661d8b3e..125c67dd1 100644
--- a/src/ansible_navigator/action_base.py
+++ b/src/ansible_navigator/action_base.py
@@ -170,7 +170,7 @@ def _update_args(
         params: List,
         apply_previous_cli_entries: C = C.ALL,
         attach_cdc: bool = False,
-    ) -> None:
+    ) -> bool:
         """Update the current args.
 
         Pass the params through the configuration subsystem
@@ -181,6 +181,7 @@ def _update_args(
         :param params: a sys.argv like list of parameters
         :param apply_previous_cli_entries: Should previous params from the CLI be applied
         :param attach_cdc: Should the collection doc cache be attached to the args.internals
+        :returns: Indication if the args update succeeded or failed
         """
         messages: List[LogMessage]
         exit_messages: List[ExitMessage]
@@ -201,6 +202,14 @@ def _update_args(
             else:
                 self._logger.log(level=exit_msg.level, msg=exit_msg.message)
 
+        if exit_messages:
+            warn_msg = ["Errors were encountered while parsing the last command."]
+            warn_msg.extend([f"{message.plain_text()}" for message in exit_messages])
+            warning = warning_notification(warn_msg)
+            self._interaction.ui.show_form(warning)
+            return False
+        return True
+
     def write_artifact(self, filename: str) -> None:
         """Write an artifact file.
 
diff --git a/src/ansible_navigator/actions/collections.py b/src/ansible_navigator/actions/collections.py
index b6f3b728d..a12013cfd 100644
--- a/src/ansible_navigator/actions/collections.py
+++ b/src/ansible_navigator/actions/collections.py
@@ -122,7 +122,10 @@ def run(self, interaction: Interaction, app: AppPublic) -> Optional[Interaction]
             self._interaction.action.match.groupdict()["params"] or "",
         )
 
-        self._update_args(params=params, attach_cdc=True)
+        args_updated = self._update_args(params=params, attach_cdc=True)
+        if not args_updated:
+            self._prepare_to_exit(interaction)
+            return None
 
         self._collection_cache = self._args.internals.collection_doc_cache
         self._collection_cache_path = self._args.collection_doc_cache_path
diff --git a/src/ansible_navigator/actions/config.py b/src/ansible_navigator/actions/config.py
index a9408148e..ab47ee073 100644
--- a/src/ansible_navigator/actions/config.py
+++ b/src/ansible_navigator/actions/config.py
@@ -114,9 +114,12 @@ def run(self, interaction: Interaction, app: AppPublic) -> Optional[Interaction]
         )
         interaction.ui.show_form(notification)
 
-        self._update_args(
+        args_updated = self._update_args(
             [self._name] + shlex.split(self._interaction.action.match.groupdict()["params"] or ""),
         )
+        if not args_updated:
+            self._prepare_to_exit(interaction)
+            return None
 
         self._run_runner()
         if self._config is None:
diff --git a/src/ansible_navigator/actions/doc.py b/src/ansible_navigator/actions/doc.py
index d6a889ddd..628a79691 100644
--- a/src/ansible_navigator/actions/doc.py
+++ b/src/ansible_navigator/actions/doc.py
@@ -39,8 +39,8 @@ def __init__(self, args: ApplicationConfiguration):
         """
         super().__init__(args=args, logger_name=__name__, name="doc")
 
-        self._plugin_name: Optional[str]
-        self._plugin_type: Optional[str]
+        self._plugin_name: Optional[str] = None
+        self._plugin_type: Optional[str] = None
         self._runner: Union[Command, AnsibleDoc]
 
     def generate_content_heading(self, _obj: Dict, screen_w: int) -> CursesLines:
@@ -74,35 +74,27 @@ def run(self, interaction: Interaction, app: AppPublic) -> Optional[Interaction]
         self._logger.debug("doc requested in interactive")
         self._prepare_to_run(app, interaction)
 
-        self._update_args(
-            [self._name] + shlex.split(self._interaction.action.match.groupdict()["params"] or ""),
-        )
+        colon_prompt = self._interaction.action.match.groupdict()["params"]
 
-        plugin_name_source = self._args.entry("plugin_name").value.source
+        # Nothing provided at colon prompt and content is showing, get the task action
+        if interaction.content and not colon_prompt:
+            try:
+                self._plugin_name = interaction.content.showing["task_action"]
+                self._plugin_type = self._args.entry("plugin_type").value.default
+                source = "task action"
 
-        if plugin_name_source is C.USER_CLI:
-            self._plugin_name = self._args.plugin_name
-            self._plugin_type = self._args.plugin_type
-            source = plugin_name_source.value
-        elif plugin_name_source is C.NOT_SET:
-            if interaction.content:
-                try:
-                    self._plugin_name = interaction.content.showing["task_action"]
-                    self._plugin_type = self._args.entry("plugin_type").value.default
-                    source = "task action"
-                except (KeyError, AttributeError, TypeError):
-                    self._logger.info("No plugin name found in current content")
-                    return None
-            else:
+            except (KeyError, AttributeError, TypeError):
+                self._logger.info("No plugin name found in current content")
+
+        # Process the colon prompt and allow update args to identify missing entries
+        if self._plugin_name is None:
+            args_updated = self._update_args([self._name] + shlex.split(colon_prompt or ""))
+            if not args_updated:
+                self._prepare_to_exit(interaction)
                 return None
-        elif plugin_name_source is not C.NOT_SET:
+            source = self._args.entry("plugin_name").value.source.value
             self._plugin_name = self._args.plugin_name
             self._plugin_type = self._args.plugin_type
-            source = plugin_name_source.value
-        else:
-            self._logger.info("No plugin provided or found, not showing content")
-            self._prepare_to_exit(interaction)
-            return None
 
         self._logger.debug("Plugin name used from %s: %s", source, self._plugin_name)
         self._logger.debug("Plugin type used from %s: %s", source, self._plugin_type)
diff --git a/src/ansible_navigator/actions/images.py b/src/ansible_navigator/actions/images.py
index 37754f594..8c17f1d1d 100644
--- a/src/ansible_navigator/actions/images.py
+++ b/src/ansible_navigator/actions/images.py
@@ -162,9 +162,12 @@ def run(self, interaction: Interaction, app: AppPublic) -> Optional[Interaction]
         self._logger.debug("images requested")
         self._prepare_to_run(app, interaction)
 
-        self._update_args(
+        args_updated = self._update_args(
             [self._name] + shlex.split(self._interaction.action.match.groupdict()["params"] or ""),
         )
+        if not args_updated:
+            self._prepare_to_exit(interaction)
+            return None
 
         notification = nonblocking_notification(
             messages=["Collecting available images, this may take a minute..."],
diff --git a/src/ansible_navigator/actions/inventory.py b/src/ansible_navigator/actions/inventory.py
index b9aa8dcfd..d1d20042e 100644
--- a/src/ansible_navigator/actions/inventory.py
+++ b/src/ansible_navigator/actions/inventory.py
@@ -26,7 +26,6 @@
 from ..ui_framework import CursesLines
 from ..ui_framework import Decoration
 from ..ui_framework import Interaction
-from ..ui_framework import dict_to_form
 from ..ui_framework import warning_notification
 from . import _actions as actions
 from . import run_action
@@ -188,13 +187,18 @@ def run(self, interaction: Interaction, app: AppPublic) -> Optional[Interaction]
         """
         self._logger.debug("inventory requested in interactive mode")
         self._prepare_to_run(app, interaction)
-        self.stdout = self._calling_app.stdout
 
-        self._build_inventory_list()
-        if not self._inventories:
+        args_updated = self._update_args(
+            [self._name] + shlex.split(self._interaction.action.match.groupdict()["params"] or ""),
+        )
+        if not args_updated:
             self._prepare_to_exit(interaction)
             return None
 
+        self.stdout = self._calling_app.stdout
+        self._inventories = self._args.inventory
+        self._set_inventories_mtime()
+
         self._collect_inventory_details()
         if not self._inventory:
             self._prepare_to_exit(interaction)
@@ -224,9 +228,7 @@ def run(self, interaction: Interaction, app: AppPublic) -> Optional[Interaction]
             if current_mtime != self._inventories_mtime:
                 self._logger.debug("inventory changed")
 
-                self._build_inventory_list()
-                if not self._inventories:
-                    break
+                self._set_inventories_mtime()
 
                 self._collect_inventory_details()
                 if not self._inventory:
@@ -434,63 +436,6 @@ def _host_or_group_step(self) -> Step:
             return self._build_host_content()
         raise TypeError("unknown step type")
 
-    def _build_inventory_list(self) -> None:
-        """Build the list of inventory sources."""
-        self._update_args(
-            [self._name] + shlex.split(self._interaction.action.match.groupdict()["params"] or ""),
-        )
-
-        if isinstance(self._args.inventory, list):
-            inventories = self._args.inventory
-            inventories_valid = not self._inventory_error
-        else:
-            inventories = ["", "", ""]
-            inventories_valid = False
-
-        if not inventories_valid:
-            FType = Dict[str, Any]
-            form_dict: FType = {
-                "title": "One or more inventory sources could not be found",
-                "fields": [],
-            }
-            if inventories:
-                for idx, inv in enumerate(inventories):
-                    form_field = {
-                        "name": f"inv_{idx}",
-                        "pre_populate": inv,
-                        "prompt": f"{idx}. Inventory source",
-                        "type": "text_input",
-                        "validator": {"name": "none"},
-                    }
-                    form_dict["fields"].append(form_field)
-            else:
-                form_field = {
-                    "name": "inv_0",
-                    "prompt": "0. Inventory source",
-                    "type": "text_input",
-                    "validator": {"name": "none"},
-                }
-                form_dict["fields"].append(form_field)
-
-            form = dict_to_form(form_dict)
-            self._interaction.ui.show_form(form)
-
-            if form.cancelled:
-                return
-
-            inventories = [
-                field.value
-                for field in form.fields
-                if hasattr(field, "value") and field.value != ""
-            ]
-            # pylint: enable=not-an-iterable
-            if not inventories:
-                return
-
-        self._inventories = inventories
-        self._set_inventories_mtime()
-        return
-
     def _collect_inventory_details_interactive(
         self,
         kwargs: Dict[str, Any],
diff --git a/src/ansible_navigator/actions/run.py b/src/ansible_navigator/actions/run.py
index a83dab56a..01fdeb7d6 100644
--- a/src/ansible_navigator/actions/run.py
+++ b/src/ansible_navigator/actions/run.py
@@ -338,9 +338,11 @@ def _init_run(self) -> bool:
 
         # Ensure the playbook and inventory are valid
 
-        self._update_args(
+        args_updated = self._update_args(
             ["run"] + shlex.split(self._interaction.action.match.groupdict()["params_run"] or ""),
         )
+        if not args_updated:
+            return False
 
         if isinstance(self._args.playbook, str):
             playbook_valid = os.path.exists(self._args.playbook)
@@ -368,7 +370,9 @@ def _init_run(self) -> bool:
                 new_cmd.extend(shlex.split(populated_form["fields"]["cmdline"]["value"]))
 
             # Parse as if provided from the cmdline
-            self._update_args(new_cmd)
+            args_updated = self._update_args(new_cmd)
+            if not args_updated:
+                return False
 
         self._run_runner()
         self._logger.info("Run initialized and playbook started.")
@@ -383,10 +387,12 @@ def _init_replay(self) -> bool:
         self._logger.debug("Starting replay artifact request with mode %s", self.mode)
 
         if self.mode == "interactive":
-            self._update_args(
+            args_updated = self._update_args(
                 ["replay"]
                 + shlex.split(self._interaction.action.match.groupdict()["params_replay"] or ""),
             )
+            if not args_updated:
+                return False
 
         artifact_file = self._args.playbook_artifact_replay
 
diff --git a/src/ansible_navigator/utils/functions.py b/src/ansible_navigator/utils/functions.py
index c1c274970..2de3b15c0 100644
--- a/src/ansible_navigator/utils/functions.py
+++ b/src/ansible_navigator/utils/functions.py
@@ -84,9 +84,13 @@ def level(self):
             return logging.INFO
         raise ValueError("Missing logging level mapping")
 
+    def plain_text(self):
+        """Provide the error messages without ansi color."""
+        return f"{self.prefix}{self.message}"
+
     def __str__(self):
         if "NO_COLOR" in os.environ:
-            return f"{self.prefix}{self.message}"
+            return self.plain_text()
         return f"{self.color}{self.prefix}{self.message}{Colors.END.value}"
 
 


Test patch:
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/17.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/17.json
index 3cc274874..6be9587fb 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/17.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/17.json
@@ -4,18 +4,20 @@
     "comment": "Provide an invalid ee value",
     "additional_information": {
         "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
+            "Errors were encountered while parsing the last command"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "  NAME                      VERSION          SHADOWED    TYPE          PATH",
-        "0│ansible.builtin           2.11.6.post0        False    contained     /usr/local/lib/python3.8/site-packages/ansible",
-        "1│company_name.coll_1       1.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2       2.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_2",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "                                        WARNING",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                        Errors were encountered while parsing the last command.",
+        "                                        [ERROR]: Command provided: 'collections --ee FFFFF'",
+        "                                        [ERROR]: execution_environment could not be converted to a boolean value, value was 'FFFFF' (str)",
+        "                                        [ERROR]: execution-environment must be one of 'true' or 'false', but set as 'FFFFF' in Command line",
+        "                                         [HINT]: Try again with '--ee true' or '--ee false'",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                                                                                                                      Ok"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/18.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/18.json
index ad4c6c4f2..8467b845e 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/18.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/18.json
@@ -1,18 +1,21 @@
 {
-    "name": "test[18-:1-Browse company_name.coll_1 plugins window]",
+    "name": "test[18-Enter-ansible-navigator collections browse window]",
     "index": 18,
-    "comment": "Browse company_name.coll_1 plugins window",
+    "comment": "ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "  NAME                      VERSION          SHADOWED    TYPE          PATH",
+        "0│ansible.builtin           2.11.6.post0        False    contained     /usr/local/lib/python3.8/site-packages/ansible",
+        "1│company_name.coll_1       1.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2       2.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/19.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/19.json
index 395e6e8aa..c7d6560d6 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/19.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/19.json
@@ -1,58 +1,18 @@
 {
-    "name": "test[19-:0-lookup_1 plugin docs window]",
+    "name": "test[19-:1-Browse company_name.coll_1 plugins window]",
     "index": 19,
-    "comment": "lookup_1 plugin docs window",
+    "comment": "Browse company_name.coll_1 plugins window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
-        " 0│---",
-        " 1│additional_information: {}",
-        " 2│collection_info:",
-        " 3│  authors:",
-        " 4│  - Ansible team (ansible-navigator)",
-        " 5│  license_file: LICENSE",
-        " 6│  name: company_name.coll_1",
-        " 7│  namespace: company_name",
-        " 8│  path: FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
-        " 9│  readme: README.md",
-        "10│  shadowed_by: []",
-        "11│  version: 1.0.0",
-        "12│doc:",
-        "13│  author: test",
-        "14│  description:",
-        "15│  - This is test lookup plugin",
-        "16│  name: lookup_1",
-        "17│  notes:",
-        "18│  - This is a dummy lookup plugin",
-        "19│  options:",
-        "20│    bar:",
-        "21│      default: candidate",
-        "22│      description:",
-        "23│      - Dummy option I(bar)",
-        "24│      type: str",
-        "25│    foo:",
-        "26│      description:",
-        "27│      - Dummy option I(foo)",
-        "28│      required: true",
-        "29│      type: str",
-        "30│  plugin_type: lookup",
-        "31│  short_description: This is test lookup plugin",
-        "32│  version_added: 1.0.0",
-        "33│  version_added_collection: company_name.coll_1",
-        "34│examples: |-",
-        "35│  - name: Retrieve a value deep inside a using a path",
-        "36│        ansible.builtin.set_fact:",
-        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
-        "38│full_name: company_name.coll_1.lookup_1",
-        "39│metadata: null",
-        "40│returndocs:",
-        "41│  _raw:",
-        "42│    description:",
-        "43│    - One or more zero-based indices of the matching list items.",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/20.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/20.json
index b2595d737..8fc4cee68 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/20.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/20.json
@@ -1,18 +1,58 @@
 {
-    "name": "test[20-:back-Back to browse company_name.coll_1 plugins window]",
+    "name": "test[20-:0-lookup_1 plugin docs window]",
     "index": 20,
-    "comment": "Back to browse company_name.coll_1 plugins window",
+    "comment": "lookup_1 plugin docs window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
+        " 0│---",
+        " 1│additional_information: {}",
+        " 2│collection_info:",
+        " 3│  authors:",
+        " 4│  - Ansible team (ansible-navigator)",
+        " 5│  license_file: LICENSE",
+        " 6│  name: company_name.coll_1",
+        " 7│  namespace: company_name",
+        " 8│  path: FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
+        " 9│  readme: README.md",
+        "10│  shadowed_by: []",
+        "11│  version: 1.0.0",
+        "12│doc:",
+        "13│  author: test",
+        "14│  description:",
+        "15│  - This is test lookup plugin",
+        "16│  name: lookup_1",
+        "17│  notes:",
+        "18│  - This is a dummy lookup plugin",
+        "19│  options:",
+        "20│    bar:",
+        "21│      default: candidate",
+        "22│      description:",
+        "23│      - Dummy option I(bar)",
+        "24│      type: str",
+        "25│    foo:",
+        "26│      description:",
+        "27│      - Dummy option I(foo)",
+        "28│      required: true",
+        "29│      type: str",
+        "30│  plugin_type: lookup",
+        "31│  short_description: This is test lookup plugin",
+        "32│  version_added: 1.0.0",
+        "33│  version_added_collection: company_name.coll_1",
+        "34│examples: |-",
+        "35│  - name: Retrieve a value deep inside a using a path",
+        "36│        ansible.builtin.set_fact:",
+        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
+        "38│full_name: company_name.coll_1.lookup_1",
+        "39│metadata: null",
+        "40│returndocs:",
+        "41│  _raw:",
+        "42│    description:",
+        "43│    - One or more zero-based indices of the matching list items.",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/21.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/21.json
index 514af611d..ce2544178 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/21.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/21.json
@@ -1,21 +1,18 @@
 {
-    "name": "test[21-:back-Back to ansible-navigator collections browse window]",
+    "name": "test[21-:back-Back to browse company_name.coll_1 plugins window]",
     "index": 21,
-    "comment": "Back to ansible-navigator collections browse window",
+    "comment": "Back to browse company_name.coll_1 plugins window",
     "additional_information": {
-        "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
-        ],
+        "present": [],
         "absent": [],
-        "compared_fixture": false
+        "compared_fixture": true
     },
     "output": [
-        "  NAME                      VERSION          SHADOWED    TYPE          PATH",
-        "0│ansible.builtin           2.11.6.post0        False    contained     /usr/local/lib/python3.8/site-packages/ansible",
-        "1│company_name.coll_1       1.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2       2.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_2",
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/22.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/22.json
index 12c0e6809..510771dc9 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/22.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/22.json
@@ -1,140 +1,21 @@
 {
-    "name": "test[22-:0-Browse ansible.builtin plugins window]",
+    "name": "test[22-:back-Back to ansible-navigator collections browse window]",
     "index": 22,
-    "comment": "Browse ansible.builtin plugins window",
+    "comment": "Back to ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
-        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
-        "  2│apt                          module        0.0.2         False         Manages apt-packages",
-        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
-        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
-        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
-        "  6│assert                       module        1.5           False         Asserts given expressions are true",
-        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
-        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
-        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
-        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
-        " 11│command                      module        historical    False         Execute commands on targets",
-        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
-        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
-        " 14│copy                         module        historical    False         Copy files to remote locations",
-        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
-        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
-        " 17│debconf                      module        1.6           False         Configure a .deb package",
-        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
-        " 19│debug                        module        0.8           False         Print statements during execution",
-        " 20│default                      callback      historical    False         default Ansible screen output",
-        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
-        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
-        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
-        " 24│env                          lookup        0.9           False         Read the value of environment variables",
-        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
-        " 26│fail                         module        0.8           False         Fail with custom message",
-        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
-        " 28│file                         lookup        0.9           False         read file contents",
-        " 29│file                         module        historical    False         Manage files and file properties",
-        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
-        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
-        " 32│first_found                  lookup        historical    False         return first file found from list",
-        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
-        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
-        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
-        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
-        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
-        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
-        " 39│group                        module        0.0.2         False         Add or remove groups",
-        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
-        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
-        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
-        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
-        " 44│hostname                     module        1.4           False         Manage hostname",
-        " 45│import_playbook              module        2.4           False         Import a playbook",
-        " 46│import_role                  module        2.4           False         Import a role into a play",
-        " 47│import_tasks                 module        2.4           False         Import a task list",
-        " 48│include                      module        0.6           False         Include a play or task list",
-        " 49│include_role                 module        2.2           False         Load and execute a role",
-        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
-        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
-        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
-        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
-        " 54│ini                          lookup        2.0           False         read data from a ini file",
-        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
-        " 56│iptables                     module        2.0           False         Modify iptables rules",
-        " 57│items                        lookup        historical    False         list of items",
-        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
-        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
-        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
-        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
-        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
-        " 63│lines                        lookup        0.9           False         read lines from command",
-        " 64│list                         lookup        2.0           False         simply returns what it is given.",
-        " 65│local                        connection    historical    False         execute on controller",
-        " 66│memory                       cache         historical    False         RAM backed, non persistent",
-        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
-        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
-        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
-        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
-        " 71│package                      module          2.0         False         Generic OS package manager",
-        " 72│package_facts                module        2.5           False         Package information as facts",
-        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
-        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
-        " 75│pause                        module        0.8           False         Pause playbook execution",
-        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
-        " 77│pip                          module        0.7           False         Manages Python library dependencies",
-        " 78│pipe                         lookup        0.9           False         read output from a command",
-        " 79│powershell                   shell         historical    False         Windows PowerShell",
-        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
-        " 81│random_choice                lookup        1.1           False         return random element from list",
-        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
-        " 83│reboot                       module        2.7           False         Reboot a machine",
-        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
-        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
-        " 86│runas                        become        2.8           False         Run As user",
-        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
-        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
-        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
-        " 90│service                      module        0.1           False         Manage services",
-        " 91│service_facts                module        2.5           False         Return service state information as fact data",
-        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
-        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
-        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
-        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
-        " 96│shell                        module        0.2           False         Execute shell commands on targets",
-        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
-        " 98│ssh                          connection    historical    False         connect via ssh client binary",
-        " 99│stat                         module        1.3           False         Retrieve file or file system status",
-        "100│su                           become        2.8           False         Substitute User",
-        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
-        "102│subversion                   module        0.7           False         Deploys a subversion repository",
-        "103│sudo                         become        2.8           False         Substitute User DO",
-        "104│systemd                      module        2.2           False         Manage systemd units",
-        "105│sysvinit                     module        2.6           False         Manage SysV services.",
-        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
-        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
-        "108│template                     module        historical    False         Template a file out to a target host",
-        "109│together                     lookup        1.3           False         merges lists into synchronized list",
-        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
-        "111│tree                         callback      2.0           False         Save host events to files",
-        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
-        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
-        "114│uri                          module        1.1           False         Interacts with webservices",
-        "115│url                          lookup        1.9           False         return contents from URL",
-        "116│user                         module        0.2           False         Manage user accounts",
-        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
-        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
-        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
-        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
-        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
-        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
-        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
-        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
-        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "  NAME                      VERSION          SHADOWED    TYPE          PATH",
+        "0│ansible.builtin           2.11.6.post0        False    contained     /usr/local/lib/python3.8/site-packages/ansible",
+        "1│company_name.coll_1       1.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2       2.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_direct_interactive_ee.py/collections/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/23.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/23.json
index 1b033b128..d5de74e1b 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/23.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/23.json
@@ -1,112 +1,142 @@
 {
-    "name": "test[23-:0-Browse ansible.builtin.add_host module]",
+    "name": "test[23-:0-Browse ansible.builtin plugins window]",
     "index": 23,
-    "comment": "Browse ansible.builtin.add_host module",
+    "comment": "Browse ansible.builtin plugins window",
     "additional_information": {
         "present": [
-            "ANSIBLE.BUILTIN.ADD_HOST"
+            "yum_repository"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        " 0│---",
-        " 1│additional_information: {}",
-        " 2│collection_info:",
-        " 3│  name: ansible.builtin",
-        " 4│  path: /usr/local/lib/python3.8/site-packages/ansible",
-        " 5│  shadowed_by: []",
-        " 6│  version: 2.11.6.post0",
-        " 7│doc:",
-        " 8│  author:",
-        " 9│  - Ansible Core Team",
-        "10│  - Seth Vidal (@skvidal)",
-        "11│  description:",
-        "12│  - Use variables to create new hosts and groups in inventory for use in later plays",
-        "13│    of the same playbook.",
-        "14│  - Takes variables so you can define the new hosts more fully.",
-        "15│  - This module is also supported for Windows targets.",
-        "16│  module: add_host",
-        "17│  notes:",
-        "18│  - This module bypasses the play host loop and only runs once for all the hosts in",
-        "19│    the play, if you need it to iterate use a C(loop) construct. If you need to dynamically",
-        "20│    add all hosts targeted by a playbook for later use, the C(group_by) module is",
-        "21│    potentially a better choice.",
-        "22│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
-        "23│    newer.",
-        "24│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
-        "25│    of the 'global inventory source', because you can now have multiple sources.  An",
-        "26│    example was added that shows how to partially restore the previous behaviour.",
-        "27│  - Windows targets are supported by this module.",
-        "28│  - Though this module does not change the remote host, we do provide 'changed' status",
-        "29│    as it can be useful for those trying to track inventory changes.",
-        "30│  options:",
-        "31│    groups:",
-        "32│      aliases:",
-        "33│      - group",
-        "34│      - groupname",
-        "35│      description:",
-        "36│      - The groups to add the hostname to.",
-        "37│      type: list",
-        "38│    name:",
-        "39│      aliases:",
-        "40│      - host",
-        "41│      - hostname",
-        "42│      description:",
-        "43│      - The hostname/ip of the host to add to the inventory, can include a colon and",
-        "44│        a port number.",
-        "45│      required: true",
-        "46│      type: str",
-        "47│  seealso:",
-        "48│  - module: ansible.builtin.group_by",
-        "49│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
-        "50│    in-memory inventory",
-        "51│  version_added: '0.9'",
-        "52│  version_added_collection: ansible.builtin",
-        "53│examples: |-",
-        "54│  - name: Add host to group 'just_created' with variable foo=42",
-        "55│    add_host:",
-        "56│      name: '{{ ip_from_ec2 }}'",
-        "57│      groups: just_created",
-        "58│      foo: 42",
-        "59│",
-        "60│  - name: Add host to multiple groups",
-        "61│    add_host:",
-        "62│      hostname: '{{ new_ip }}'",
-        "63│      groups:",
-        "64│      - group1",
-        "65│      - group2",
-        "66│",
-        "67│  - name: Add a host with a non-standard port local to your machines",
-        "68│    add_host:",
-        "69│      name: '{{ new_ip }}:{{ new_port }}'",
-        "70│",
-        "71│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
-        "72│    add_host:",
-        "73│      hostname: '{{ new_ip }}'",
-        "74│      ansible_ssh_host: '{{ inventory_hostname }}'",
-        "75│      ansible_ssh_port: '{{ new_port }}'",
-        "76│",
-        "77│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
-        "78│    add_host:",
-        "79│      hostname: '{{ new_ip }}'",
-        "80│      ansible_host: '{{ inventory_hostname }}'",
-        "81│      ansible_port: '{{ new_port }}'",
-        "82│",
-        "83│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
-        "84│    add_host:",
-        "85│      hostname: charlie",
-        "86│      inventory_dir: '{{ inventory_dir }}'",
-        "87│",
-        "88│  - name: Add all hosts running this playbook to the done group",
-        "89│    add_host:",
-        "90│      name: '{{ item }}'",
-        "91│      groups: done",
-        "92│    loop: \"{{ ansible_play_hosts }}\"",
-        "93│full_name: ansible.builtin.add_host",
-        "94│metadata: null",
-        "95│returndocs: null",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
+        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
+        "  2│apt                          module        0.0.2         False         Manages apt-packages",
+        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
+        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
+        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
+        "  6│assert                       module        1.5           False         Asserts given expressions are true",
+        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
+        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
+        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
+        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
+        " 11│command                      module        historical    False         Execute commands on targets",
+        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
+        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
+        " 14│copy                         module        historical    False         Copy files to remote locations",
+        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
+        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
+        " 17│debconf                      module        1.6           False         Configure a .deb package",
+        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
+        " 19│debug                        module        0.8           False         Print statements during execution",
+        " 20│default                      callback      historical    False         default Ansible screen output",
+        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
+        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
+        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
+        " 24│env                          lookup        0.9           False         Read the value of environment variables",
+        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
+        " 26│fail                         module        0.8           False         Fail with custom message",
+        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
+        " 28│file                         lookup        0.9           False         read file contents",
+        " 29│file                         module        historical    False         Manage files and file properties",
+        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
+        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
+        " 32│first_found                  lookup        historical    False         return first file found from list",
+        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
+        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
+        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
+        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
+        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
+        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
+        " 39│group                        module        0.0.2         False         Add or remove groups",
+        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
+        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
+        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
+        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
+        " 44│hostname                     module        1.4           False         Manage hostname",
+        " 45│import_playbook              module        2.4           False         Import a playbook",
+        " 46│import_role                  module        2.4           False         Import a role into a play",
+        " 47│import_tasks                 module        2.4           False         Import a task list",
+        " 48│include                      module        0.6           False         Include a play or task list",
+        " 49│include_role                 module        2.2           False         Load and execute a role",
+        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
+        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
+        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
+        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
+        " 54│ini                          lookup        2.0           False         read data from a ini file",
+        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
+        " 56│iptables                     module        2.0           False         Modify iptables rules",
+        " 57│items                        lookup        historical    False         list of items",
+        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
+        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
+        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
+        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
+        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
+        " 63│lines                        lookup        0.9           False         read lines from command",
+        " 64│list                         lookup        2.0           False         simply returns what it is given.",
+        " 65│local                        connection    historical    False         execute on controller",
+        " 66│memory                       cache         historical    False         RAM backed, non persistent",
+        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
+        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
+        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
+        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
+        " 71│package                      module          2.0         False         Generic OS package manager",
+        " 72│package_facts                module        2.5           False         Package information as facts",
+        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
+        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
+        " 75│pause                        module        0.8           False         Pause playbook execution",
+        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
+        " 77│pip                          module        0.7           False         Manages Python library dependencies",
+        " 78│pipe                         lookup        0.9           False         read output from a command",
+        " 79│powershell                   shell         historical    False         Windows PowerShell",
+        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
+        " 81│random_choice                lookup        1.1           False         return random element from list",
+        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
+        " 83│reboot                       module        2.7           False         Reboot a machine",
+        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
+        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
+        " 86│runas                        become        2.8           False         Run As user",
+        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
+        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
+        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
+        " 90│service                      module        0.1           False         Manage services",
+        " 91│service_facts                module        2.5           False         Return service state information as fact data",
+        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
+        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
+        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
+        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
+        " 96│shell                        module        0.2           False         Execute shell commands on targets",
+        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
+        " 98│ssh                          connection    historical    False         connect via ssh client binary",
+        " 99│stat                         module        1.3           False         Retrieve file or file system status",
+        "100│su                           become        2.8           False         Substitute User",
+        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
+        "102│subversion                   module        0.7           False         Deploys a subversion repository",
+        "103│sudo                         become        2.8           False         Substitute User DO",
+        "104│systemd                      module        2.2           False         Manage systemd units",
+        "105│sysvinit                     module        2.6           False         Manage SysV services.",
+        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
+        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
+        "108│template                     module        historical    False         Template a file out to a target host",
+        "109│together                     lookup        1.3           False         merges lists into synchronized list",
+        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
+        "111│tree                         callback      2.0           False         Save host events to files",
+        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
+        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
+        "114│uri                          module        1.1           False         Interacts with webservices",
+        "115│url                          lookup        1.9           False         return contents from URL",
+        "116│user                         module        0.2           False         Manage user accounts",
+        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
+        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
+        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
+        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
+        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
+        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
+        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
+        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
+        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/24.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/24.json
new file mode 100644
index 000000000..0bd979a76
--- /dev/null
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee.py/test/24.json
@@ -0,0 +1,112 @@
+{
+    "name": "test[24-:0-Browse ansible.builtin.add_host module]",
+    "index": 24,
+    "comment": "Browse ansible.builtin.add_host module",
+    "additional_information": {
+        "present": [
+            "ANSIBLE.BUILTIN.ADD_HOST"
+        ],
+        "absent": [],
+        "compared_fixture": false
+    },
+    "output": [
+        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        " 0│---",
+        " 1│additional_information: {}",
+        " 2│collection_info:",
+        " 3│  name: ansible.builtin",
+        " 4│  path: /usr/local/lib/python3.8/site-packages/ansible",
+        " 5│  shadowed_by: []",
+        " 6│  version: 2.11.6.post0",
+        " 7│doc:",
+        " 8│  author:",
+        " 9│  - Ansible Core Team",
+        "10│  - Seth Vidal (@skvidal)",
+        "11│  description:",
+        "12│  - Use variables to create new hosts and groups in inventory for use in later plays",
+        "13│    of the same playbook.",
+        "14│  - Takes variables so you can define the new hosts more fully.",
+        "15│  - This module is also supported for Windows targets.",
+        "16│  module: add_host",
+        "17│  notes:",
+        "18│  - This module bypasses the play host loop and only runs once for all the hosts in",
+        "19│    the play, if you need it to iterate use a C(loop) construct. If you need to dynamically",
+        "20│    add all hosts targeted by a playbook for later use, the C(group_by) module is",
+        "21│    potentially a better choice.",
+        "22│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
+        "23│    newer.",
+        "24│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
+        "25│    of the 'global inventory source', because you can now have multiple sources.  An",
+        "26│    example was added that shows how to partially restore the previous behaviour.",
+        "27│  - Windows targets are supported by this module.",
+        "28│  - Though this module does not change the remote host, we do provide 'changed' status",
+        "29│    as it can be useful for those trying to track inventory changes.",
+        "30│  options:",
+        "31│    groups:",
+        "32│      aliases:",
+        "33│      - group",
+        "34│      - groupname",
+        "35│      description:",
+        "36│      - The groups to add the hostname to.",
+        "37│      type: list",
+        "38│    name:",
+        "39│      aliases:",
+        "40│      - host",
+        "41│      - hostname",
+        "42│      description:",
+        "43│      - The hostname/ip of the host to add to the inventory, can include a colon and",
+        "44│        a port number.",
+        "45│      required: true",
+        "46│      type: str",
+        "47│  seealso:",
+        "48│  - module: ansible.builtin.group_by",
+        "49│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
+        "50│    in-memory inventory",
+        "51│  version_added: '0.9'",
+        "52│  version_added_collection: ansible.builtin",
+        "53│examples: |-",
+        "54│  - name: Add host to group 'just_created' with variable foo=42",
+        "55│    add_host:",
+        "56│      name: '{{ ip_from_ec2 }}'",
+        "57│      groups: just_created",
+        "58│      foo: 42",
+        "59│",
+        "60│  - name: Add host to multiple groups",
+        "61│    add_host:",
+        "62│      hostname: '{{ new_ip }}'",
+        "63│      groups:",
+        "64│      - group1",
+        "65│      - group2",
+        "66│",
+        "67│  - name: Add a host with a non-standard port local to your machines",
+        "68│    add_host:",
+        "69│      name: '{{ new_ip }}:{{ new_port }}'",
+        "70│",
+        "71│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
+        "72│    add_host:",
+        "73│      hostname: '{{ new_ip }}'",
+        "74│      ansible_ssh_host: '{{ inventory_hostname }}'",
+        "75│      ansible_ssh_port: '{{ new_port }}'",
+        "76│",
+        "77│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
+        "78│    add_host:",
+        "79│      hostname: '{{ new_ip }}'",
+        "80│      ansible_host: '{{ inventory_hostname }}'",
+        "81│      ansible_port: '{{ new_port }}'",
+        "82│",
+        "83│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
+        "84│    add_host:",
+        "85│      hostname: charlie",
+        "86│      inventory_dir: '{{ inventory_dir }}'",
+        "87│",
+        "88│  - name: Add all hosts running this playbook to the done group",
+        "89│    add_host:",
+        "90│      name: '{{ item }}'",
+        "91│      groups: done",
+        "92│    loop: \"{{ ansible_play_hosts }}\"",
+        "93│full_name: ansible.builtin.add_host",
+        "94│metadata: null",
+        "95│returndocs: null",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+    ]
+}
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/17.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/17.json
index d73d71b4a..6be9587fb 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/17.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/17.json
@@ -4,18 +4,20 @@
     "comment": "Provide an invalid ee value",
     "additional_information": {
         "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
+            "Errors were encountered while parsing the last command"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "  NAME                            VERSION              SHADOWED       TYPE              PATH",
-        "0│ansible.builtin                 2.11.6.post0            False       contained         /usr/local/lib/python3.8/site-packages/ansible",
-        "1│company_name.coll_1             1.0.0                   False       bind_mount        /tmp/collections_to_volmount/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2             2.0.0                   False       bind_mount        /tmp/collections_to_volmount/ansible_collections/company_name/coll_2",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "                                        WARNING",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                        Errors were encountered while parsing the last command.",
+        "                                        [ERROR]: Command provided: 'collections --ee FFFFF'",
+        "                                        [ERROR]: execution_environment could not be converted to a boolean value, value was 'FFFFF' (str)",
+        "                                        [ERROR]: execution-environment must be one of 'true' or 'false', but set as 'FFFFF' in Command line",
+        "                                         [HINT]: Try again with '--ee true' or '--ee false'",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                                                                                                                      Ok"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/18.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/18.json
index ad4c6c4f2..be6cdf8a1 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/18.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/18.json
@@ -1,18 +1,21 @@
 {
-    "name": "test[18-:1-Browse company_name.coll_1 plugins window]",
+    "name": "test[18-Enter-ansible-navigator collections browse window]",
     "index": 18,
-    "comment": "Browse company_name.coll_1 plugins window",
+    "comment": "ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "  NAME                            VERSION              SHADOWED       TYPE              PATH",
+        "0│ansible.builtin                 2.11.6.post0            False       contained         /usr/local/lib/python3.8/site-packages/ansible",
+        "1│company_name.coll_1             1.0.0                   False       bind_mount        /tmp/collections_to_volmount/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2             2.0.0                   False       bind_mount        /tmp/collections_to_volmount/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/19.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/19.json
index 78f3cc469..c7d6560d6 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/19.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/19.json
@@ -1,58 +1,18 @@
 {
-    "name": "test[19-:0-lookup_1 plugin docs window]",
+    "name": "test[19-:1-Browse company_name.coll_1 plugins window]",
     "index": 19,
-    "comment": "lookup_1 plugin docs window",
+    "comment": "Browse company_name.coll_1 plugins window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
-        " 0│---",
-        " 1│additional_information: {}",
-        " 2│collection_info:",
-        " 3│  authors:",
-        " 4│  - Ansible team (ansible-navigator)",
-        " 5│  license_file: LICENSE",
-        " 6│  name: company_name.coll_1",
-        " 7│  namespace: company_name",
-        " 8│  path: /tmp/collections_to_volmount/ansible_collections/company_name/coll_1",
-        " 9│  readme: README.md",
-        "10│  shadowed_by: []",
-        "11│  version: 1.0.0",
-        "12│doc:",
-        "13│  author: test",
-        "14│  description:",
-        "15│  - This is test lookup plugin",
-        "16│  name: lookup_1",
-        "17│  notes:",
-        "18│  - This is a dummy lookup plugin",
-        "19│  options:",
-        "20│    bar:",
-        "21│      default: candidate",
-        "22│      description:",
-        "23│      - Dummy option I(bar)",
-        "24│      type: str",
-        "25│    foo:",
-        "26│      description:",
-        "27│      - Dummy option I(foo)",
-        "28│      required: true",
-        "29│      type: str",
-        "30│  plugin_type: lookup",
-        "31│  short_description: This is test lookup plugin",
-        "32│  version_added: 1.0.0",
-        "33│  version_added_collection: company_name.coll_1",
-        "34│examples: |-",
-        "35│  - name: Retrieve a value deep inside a using a path",
-        "36│        ansible.builtin.set_fact:",
-        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
-        "38│full_name: company_name.coll_1.lookup_1",
-        "39│metadata: null",
-        "40│returndocs:",
-        "41│  _raw:",
-        "42│    description:",
-        "43│    - One or more zero-based indices of the matching list items.",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/20.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/20.json
index b2595d737..feef84e9c 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/20.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/20.json
@@ -1,18 +1,58 @@
 {
-    "name": "test[20-:back-Back to browse company_name.coll_1 plugins window]",
+    "name": "test[20-:0-lookup_1 plugin docs window]",
     "index": 20,
-    "comment": "Back to browse company_name.coll_1 plugins window",
+    "comment": "lookup_1 plugin docs window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
+        " 0│---",
+        " 1│additional_information: {}",
+        " 2│collection_info:",
+        " 3│  authors:",
+        " 4│  - Ansible team (ansible-navigator)",
+        " 5│  license_file: LICENSE",
+        " 6│  name: company_name.coll_1",
+        " 7│  namespace: company_name",
+        " 8│  path: /tmp/collections_to_volmount/ansible_collections/company_name/coll_1",
+        " 9│  readme: README.md",
+        "10│  shadowed_by: []",
+        "11│  version: 1.0.0",
+        "12│doc:",
+        "13│  author: test",
+        "14│  description:",
+        "15│  - This is test lookup plugin",
+        "16│  name: lookup_1",
+        "17│  notes:",
+        "18│  - This is a dummy lookup plugin",
+        "19│  options:",
+        "20│    bar:",
+        "21│      default: candidate",
+        "22│      description:",
+        "23│      - Dummy option I(bar)",
+        "24│      type: str",
+        "25│    foo:",
+        "26│      description:",
+        "27│      - Dummy option I(foo)",
+        "28│      required: true",
+        "29│      type: str",
+        "30│  plugin_type: lookup",
+        "31│  short_description: This is test lookup plugin",
+        "32│  version_added: 1.0.0",
+        "33│  version_added_collection: company_name.coll_1",
+        "34│examples: |-",
+        "35│  - name: Retrieve a value deep inside a using a path",
+        "36│        ansible.builtin.set_fact:",
+        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
+        "38│full_name: company_name.coll_1.lookup_1",
+        "39│metadata: null",
+        "40│returndocs:",
+        "41│  _raw:",
+        "42│    description:",
+        "43│    - One or more zero-based indices of the matching list items.",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/21.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/21.json
index 4e8454693..ce2544178 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/21.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/21.json
@@ -1,21 +1,18 @@
 {
-    "name": "test[21-:back-Back to ansible-navigator collections browse window]",
+    "name": "test[21-:back-Back to browse company_name.coll_1 plugins window]",
     "index": 21,
-    "comment": "Back to ansible-navigator collections browse window",
+    "comment": "Back to browse company_name.coll_1 plugins window",
     "additional_information": {
-        "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
-        ],
+        "present": [],
         "absent": [],
-        "compared_fixture": false
+        "compared_fixture": true
     },
     "output": [
-        "  NAME                            VERSION              SHADOWED       TYPE              PATH",
-        "0│ansible.builtin                 2.11.6.post0            False       contained         /usr/local/lib/python3.8/site-packages/ansible",
-        "1│company_name.coll_1             1.0.0                   False       bind_mount        /tmp/collections_to_volmount/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2             2.0.0                   False       bind_mount        /tmp/collections_to_volmount/ansible_collections/company_name/coll_2",
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/22.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/22.json
index 12c0e6809..b893e71f3 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/22.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/22.json
@@ -1,140 +1,21 @@
 {
-    "name": "test[22-:0-Browse ansible.builtin plugins window]",
+    "name": "test[22-:back-Back to ansible-navigator collections browse window]",
     "index": 22,
-    "comment": "Browse ansible.builtin plugins window",
+    "comment": "Back to ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
-        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
-        "  2│apt                          module        0.0.2         False         Manages apt-packages",
-        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
-        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
-        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
-        "  6│assert                       module        1.5           False         Asserts given expressions are true",
-        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
-        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
-        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
-        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
-        " 11│command                      module        historical    False         Execute commands on targets",
-        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
-        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
-        " 14│copy                         module        historical    False         Copy files to remote locations",
-        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
-        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
-        " 17│debconf                      module        1.6           False         Configure a .deb package",
-        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
-        " 19│debug                        module        0.8           False         Print statements during execution",
-        " 20│default                      callback      historical    False         default Ansible screen output",
-        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
-        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
-        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
-        " 24│env                          lookup        0.9           False         Read the value of environment variables",
-        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
-        " 26│fail                         module        0.8           False         Fail with custom message",
-        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
-        " 28│file                         lookup        0.9           False         read file contents",
-        " 29│file                         module        historical    False         Manage files and file properties",
-        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
-        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
-        " 32│first_found                  lookup        historical    False         return first file found from list",
-        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
-        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
-        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
-        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
-        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
-        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
-        " 39│group                        module        0.0.2         False         Add or remove groups",
-        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
-        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
-        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
-        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
-        " 44│hostname                     module        1.4           False         Manage hostname",
-        " 45│import_playbook              module        2.4           False         Import a playbook",
-        " 46│import_role                  module        2.4           False         Import a role into a play",
-        " 47│import_tasks                 module        2.4           False         Import a task list",
-        " 48│include                      module        0.6           False         Include a play or task list",
-        " 49│include_role                 module        2.2           False         Load and execute a role",
-        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
-        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
-        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
-        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
-        " 54│ini                          lookup        2.0           False         read data from a ini file",
-        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
-        " 56│iptables                     module        2.0           False         Modify iptables rules",
-        " 57│items                        lookup        historical    False         list of items",
-        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
-        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
-        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
-        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
-        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
-        " 63│lines                        lookup        0.9           False         read lines from command",
-        " 64│list                         lookup        2.0           False         simply returns what it is given.",
-        " 65│local                        connection    historical    False         execute on controller",
-        " 66│memory                       cache         historical    False         RAM backed, non persistent",
-        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
-        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
-        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
-        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
-        " 71│package                      module          2.0         False         Generic OS package manager",
-        " 72│package_facts                module        2.5           False         Package information as facts",
-        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
-        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
-        " 75│pause                        module        0.8           False         Pause playbook execution",
-        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
-        " 77│pip                          module        0.7           False         Manages Python library dependencies",
-        " 78│pipe                         lookup        0.9           False         read output from a command",
-        " 79│powershell                   shell         historical    False         Windows PowerShell",
-        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
-        " 81│random_choice                lookup        1.1           False         return random element from list",
-        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
-        " 83│reboot                       module        2.7           False         Reboot a machine",
-        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
-        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
-        " 86│runas                        become        2.8           False         Run As user",
-        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
-        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
-        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
-        " 90│service                      module        0.1           False         Manage services",
-        " 91│service_facts                module        2.5           False         Return service state information as fact data",
-        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
-        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
-        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
-        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
-        " 96│shell                        module        0.2           False         Execute shell commands on targets",
-        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
-        " 98│ssh                          connection    historical    False         connect via ssh client binary",
-        " 99│stat                         module        1.3           False         Retrieve file or file system status",
-        "100│su                           become        2.8           False         Substitute User",
-        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
-        "102│subversion                   module        0.7           False         Deploys a subversion repository",
-        "103│sudo                         become        2.8           False         Substitute User DO",
-        "104│systemd                      module        2.2           False         Manage systemd units",
-        "105│sysvinit                     module        2.6           False         Manage SysV services.",
-        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
-        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
-        "108│template                     module        historical    False         Template a file out to a target host",
-        "109│together                     lookup        1.3           False         merges lists into synchronized list",
-        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
-        "111│tree                         callback      2.0           False         Save host events to files",
-        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
-        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
-        "114│uri                          module        1.1           False         Interacts with webservices",
-        "115│url                          lookup        1.9           False         return contents from URL",
-        "116│user                         module        0.2           False         Manage user accounts",
-        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
-        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
-        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
-        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
-        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
-        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
-        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
-        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
-        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "  NAME                            VERSION              SHADOWED       TYPE              PATH",
+        "0│ansible.builtin                 2.11.6.post0            False       contained         /usr/local/lib/python3.8/site-packages/ansible",
+        "1│company_name.coll_1             1.0.0                   False       bind_mount        /tmp/collections_to_volmount/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2             2.0.0                   False       bind_mount        /tmp/collections_to_volmount/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/23.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/23.json
index 1b033b128..d5de74e1b 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/23.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/23.json
@@ -1,112 +1,142 @@
 {
-    "name": "test[23-:0-Browse ansible.builtin.add_host module]",
+    "name": "test[23-:0-Browse ansible.builtin plugins window]",
     "index": 23,
-    "comment": "Browse ansible.builtin.add_host module",
+    "comment": "Browse ansible.builtin plugins window",
     "additional_information": {
         "present": [
-            "ANSIBLE.BUILTIN.ADD_HOST"
+            "yum_repository"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        " 0│---",
-        " 1│additional_information: {}",
-        " 2│collection_info:",
-        " 3│  name: ansible.builtin",
-        " 4│  path: /usr/local/lib/python3.8/site-packages/ansible",
-        " 5│  shadowed_by: []",
-        " 6│  version: 2.11.6.post0",
-        " 7│doc:",
-        " 8│  author:",
-        " 9│  - Ansible Core Team",
-        "10│  - Seth Vidal (@skvidal)",
-        "11│  description:",
-        "12│  - Use variables to create new hosts and groups in inventory for use in later plays",
-        "13│    of the same playbook.",
-        "14│  - Takes variables so you can define the new hosts more fully.",
-        "15│  - This module is also supported for Windows targets.",
-        "16│  module: add_host",
-        "17│  notes:",
-        "18│  - This module bypasses the play host loop and only runs once for all the hosts in",
-        "19│    the play, if you need it to iterate use a C(loop) construct. If you need to dynamically",
-        "20│    add all hosts targeted by a playbook for later use, the C(group_by) module is",
-        "21│    potentially a better choice.",
-        "22│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
-        "23│    newer.",
-        "24│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
-        "25│    of the 'global inventory source', because you can now have multiple sources.  An",
-        "26│    example was added that shows how to partially restore the previous behaviour.",
-        "27│  - Windows targets are supported by this module.",
-        "28│  - Though this module does not change the remote host, we do provide 'changed' status",
-        "29│    as it can be useful for those trying to track inventory changes.",
-        "30│  options:",
-        "31│    groups:",
-        "32│      aliases:",
-        "33│      - group",
-        "34│      - groupname",
-        "35│      description:",
-        "36│      - The groups to add the hostname to.",
-        "37│      type: list",
-        "38│    name:",
-        "39│      aliases:",
-        "40│      - host",
-        "41│      - hostname",
-        "42│      description:",
-        "43│      - The hostname/ip of the host to add to the inventory, can include a colon and",
-        "44│        a port number.",
-        "45│      required: true",
-        "46│      type: str",
-        "47│  seealso:",
-        "48│  - module: ansible.builtin.group_by",
-        "49│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
-        "50│    in-memory inventory",
-        "51│  version_added: '0.9'",
-        "52│  version_added_collection: ansible.builtin",
-        "53│examples: |-",
-        "54│  - name: Add host to group 'just_created' with variable foo=42",
-        "55│    add_host:",
-        "56│      name: '{{ ip_from_ec2 }}'",
-        "57│      groups: just_created",
-        "58│      foo: 42",
-        "59│",
-        "60│  - name: Add host to multiple groups",
-        "61│    add_host:",
-        "62│      hostname: '{{ new_ip }}'",
-        "63│      groups:",
-        "64│      - group1",
-        "65│      - group2",
-        "66│",
-        "67│  - name: Add a host with a non-standard port local to your machines",
-        "68│    add_host:",
-        "69│      name: '{{ new_ip }}:{{ new_port }}'",
-        "70│",
-        "71│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
-        "72│    add_host:",
-        "73│      hostname: '{{ new_ip }}'",
-        "74│      ansible_ssh_host: '{{ inventory_hostname }}'",
-        "75│      ansible_ssh_port: '{{ new_port }}'",
-        "76│",
-        "77│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
-        "78│    add_host:",
-        "79│      hostname: '{{ new_ip }}'",
-        "80│      ansible_host: '{{ inventory_hostname }}'",
-        "81│      ansible_port: '{{ new_port }}'",
-        "82│",
-        "83│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
-        "84│    add_host:",
-        "85│      hostname: charlie",
-        "86│      inventory_dir: '{{ inventory_dir }}'",
-        "87│",
-        "88│  - name: Add all hosts running this playbook to the done group",
-        "89│    add_host:",
-        "90│      name: '{{ item }}'",
-        "91│      groups: done",
-        "92│    loop: \"{{ ansible_play_hosts }}\"",
-        "93│full_name: ansible.builtin.add_host",
-        "94│metadata: null",
-        "95│returndocs: null",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
+        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
+        "  2│apt                          module        0.0.2         False         Manages apt-packages",
+        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
+        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
+        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
+        "  6│assert                       module        1.5           False         Asserts given expressions are true",
+        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
+        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
+        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
+        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
+        " 11│command                      module        historical    False         Execute commands on targets",
+        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
+        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
+        " 14│copy                         module        historical    False         Copy files to remote locations",
+        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
+        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
+        " 17│debconf                      module        1.6           False         Configure a .deb package",
+        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
+        " 19│debug                        module        0.8           False         Print statements during execution",
+        " 20│default                      callback      historical    False         default Ansible screen output",
+        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
+        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
+        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
+        " 24│env                          lookup        0.9           False         Read the value of environment variables",
+        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
+        " 26│fail                         module        0.8           False         Fail with custom message",
+        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
+        " 28│file                         lookup        0.9           False         read file contents",
+        " 29│file                         module        historical    False         Manage files and file properties",
+        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
+        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
+        " 32│first_found                  lookup        historical    False         return first file found from list",
+        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
+        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
+        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
+        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
+        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
+        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
+        " 39│group                        module        0.0.2         False         Add or remove groups",
+        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
+        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
+        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
+        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
+        " 44│hostname                     module        1.4           False         Manage hostname",
+        " 45│import_playbook              module        2.4           False         Import a playbook",
+        " 46│import_role                  module        2.4           False         Import a role into a play",
+        " 47│import_tasks                 module        2.4           False         Import a task list",
+        " 48│include                      module        0.6           False         Include a play or task list",
+        " 49│include_role                 module        2.2           False         Load and execute a role",
+        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
+        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
+        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
+        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
+        " 54│ini                          lookup        2.0           False         read data from a ini file",
+        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
+        " 56│iptables                     module        2.0           False         Modify iptables rules",
+        " 57│items                        lookup        historical    False         list of items",
+        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
+        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
+        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
+        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
+        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
+        " 63│lines                        lookup        0.9           False         read lines from command",
+        " 64│list                         lookup        2.0           False         simply returns what it is given.",
+        " 65│local                        connection    historical    False         execute on controller",
+        " 66│memory                       cache         historical    False         RAM backed, non persistent",
+        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
+        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
+        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
+        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
+        " 71│package                      module          2.0         False         Generic OS package manager",
+        " 72│package_facts                module        2.5           False         Package information as facts",
+        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
+        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
+        " 75│pause                        module        0.8           False         Pause playbook execution",
+        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
+        " 77│pip                          module        0.7           False         Manages Python library dependencies",
+        " 78│pipe                         lookup        0.9           False         read output from a command",
+        " 79│powershell                   shell         historical    False         Windows PowerShell",
+        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
+        " 81│random_choice                lookup        1.1           False         return random element from list",
+        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
+        " 83│reboot                       module        2.7           False         Reboot a machine",
+        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
+        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
+        " 86│runas                        become        2.8           False         Run As user",
+        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
+        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
+        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
+        " 90│service                      module        0.1           False         Manage services",
+        " 91│service_facts                module        2.5           False         Return service state information as fact data",
+        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
+        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
+        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
+        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
+        " 96│shell                        module        0.2           False         Execute shell commands on targets",
+        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
+        " 98│ssh                          connection    historical    False         connect via ssh client binary",
+        " 99│stat                         module        1.3           False         Retrieve file or file system status",
+        "100│su                           become        2.8           False         Substitute User",
+        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
+        "102│subversion                   module        0.7           False         Deploys a subversion repository",
+        "103│sudo                         become        2.8           False         Substitute User DO",
+        "104│systemd                      module        2.2           False         Manage systemd units",
+        "105│sysvinit                     module        2.6           False         Manage SysV services.",
+        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
+        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
+        "108│template                     module        historical    False         Template a file out to a target host",
+        "109│together                     lookup        1.3           False         merges lists into synchronized list",
+        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
+        "111│tree                         callback      2.0           False         Save host events to files",
+        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
+        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
+        "114│uri                          module        1.1           False         Interacts with webservices",
+        "115│url                          lookup        1.9           False         return contents from URL",
+        "116│user                         module        0.2           False         Manage user accounts",
+        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
+        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
+        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
+        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
+        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
+        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
+        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
+        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
+        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/24.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/24.json
new file mode 100644
index 000000000..0bd979a76
--- /dev/null
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_ee_with_volmount.py/test/24.json
@@ -0,0 +1,112 @@
+{
+    "name": "test[24-:0-Browse ansible.builtin.add_host module]",
+    "index": 24,
+    "comment": "Browse ansible.builtin.add_host module",
+    "additional_information": {
+        "present": [
+            "ANSIBLE.BUILTIN.ADD_HOST"
+        ],
+        "absent": [],
+        "compared_fixture": false
+    },
+    "output": [
+        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        " 0│---",
+        " 1│additional_information: {}",
+        " 2│collection_info:",
+        " 3│  name: ansible.builtin",
+        " 4│  path: /usr/local/lib/python3.8/site-packages/ansible",
+        " 5│  shadowed_by: []",
+        " 6│  version: 2.11.6.post0",
+        " 7│doc:",
+        " 8│  author:",
+        " 9│  - Ansible Core Team",
+        "10│  - Seth Vidal (@skvidal)",
+        "11│  description:",
+        "12│  - Use variables to create new hosts and groups in inventory for use in later plays",
+        "13│    of the same playbook.",
+        "14│  - Takes variables so you can define the new hosts more fully.",
+        "15│  - This module is also supported for Windows targets.",
+        "16│  module: add_host",
+        "17│  notes:",
+        "18│  - This module bypasses the play host loop and only runs once for all the hosts in",
+        "19│    the play, if you need it to iterate use a C(loop) construct. If you need to dynamically",
+        "20│    add all hosts targeted by a playbook for later use, the C(group_by) module is",
+        "21│    potentially a better choice.",
+        "22│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
+        "23│    newer.",
+        "24│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
+        "25│    of the 'global inventory source', because you can now have multiple sources.  An",
+        "26│    example was added that shows how to partially restore the previous behaviour.",
+        "27│  - Windows targets are supported by this module.",
+        "28│  - Though this module does not change the remote host, we do provide 'changed' status",
+        "29│    as it can be useful for those trying to track inventory changes.",
+        "30│  options:",
+        "31│    groups:",
+        "32│      aliases:",
+        "33│      - group",
+        "34│      - groupname",
+        "35│      description:",
+        "36│      - The groups to add the hostname to.",
+        "37│      type: list",
+        "38│    name:",
+        "39│      aliases:",
+        "40│      - host",
+        "41│      - hostname",
+        "42│      description:",
+        "43│      - The hostname/ip of the host to add to the inventory, can include a colon and",
+        "44│        a port number.",
+        "45│      required: true",
+        "46│      type: str",
+        "47│  seealso:",
+        "48│  - module: ansible.builtin.group_by",
+        "49│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
+        "50│    in-memory inventory",
+        "51│  version_added: '0.9'",
+        "52│  version_added_collection: ansible.builtin",
+        "53│examples: |-",
+        "54│  - name: Add host to group 'just_created' with variable foo=42",
+        "55│    add_host:",
+        "56│      name: '{{ ip_from_ec2 }}'",
+        "57│      groups: just_created",
+        "58│      foo: 42",
+        "59│",
+        "60│  - name: Add host to multiple groups",
+        "61│    add_host:",
+        "62│      hostname: '{{ new_ip }}'",
+        "63│      groups:",
+        "64│      - group1",
+        "65│      - group2",
+        "66│",
+        "67│  - name: Add a host with a non-standard port local to your machines",
+        "68│    add_host:",
+        "69│      name: '{{ new_ip }}:{{ new_port }}'",
+        "70│",
+        "71│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
+        "72│    add_host:",
+        "73│      hostname: '{{ new_ip }}'",
+        "74│      ansible_ssh_host: '{{ inventory_hostname }}'",
+        "75│      ansible_ssh_port: '{{ new_port }}'",
+        "76│",
+        "77│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
+        "78│    add_host:",
+        "79│      hostname: '{{ new_ip }}'",
+        "80│      ansible_host: '{{ inventory_hostname }}'",
+        "81│      ansible_port: '{{ new_port }}'",
+        "82│",
+        "83│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
+        "84│    add_host:",
+        "85│      hostname: charlie",
+        "86│      inventory_dir: '{{ inventory_dir }}'",
+        "87│",
+        "88│  - name: Add all hosts running this playbook to the done group",
+        "89│    add_host:",
+        "90│      name: '{{ item }}'",
+        "91│      groups: done",
+        "92│    loop: \"{{ ansible_play_hosts }}\"",
+        "93│full_name: ansible.builtin.add_host",
+        "94│metadata: null",
+        "95│returndocs: null",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+    ]
+}
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/17.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/17.json
index 6ce28c207..6be9587fb 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/17.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/17.json
@@ -4,18 +4,20 @@
     "comment": "Provide an invalid ee value",
     "additional_information": {
         "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
+            "Errors were encountered while parsing the last command"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "  NAME                         VERSION    SHADOWED     PATH",
-        "0│ansible.builtin              2.12.3        False     /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
-        "1│company_name.coll_1          1.0.0         False     FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2          2.0.0         False     FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_2",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "                                        WARNING",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                        Errors were encountered while parsing the last command.",
+        "                                        [ERROR]: Command provided: 'collections --ee FFFFF'",
+        "                                        [ERROR]: execution_environment could not be converted to a boolean value, value was 'FFFFF' (str)",
+        "                                        [ERROR]: execution-environment must be one of 'true' or 'false', but set as 'FFFFF' in Command line",
+        "                                         [HINT]: Try again with '--ee true' or '--ee false'",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                                                                                                                      Ok"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/18.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/18.json
index ad4c6c4f2..0007c2e8d 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/18.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/18.json
@@ -1,18 +1,21 @@
 {
-    "name": "test[18-:1-Browse company_name.coll_1 plugins window]",
+    "name": "test[18-Enter-ansible-navigator collections browse window]",
     "index": 18,
-    "comment": "Browse company_name.coll_1 plugins window",
+    "comment": "ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "  NAME                         VERSION    SHADOWED     PATH",
+        "0│ansible.builtin              2.12.3        False     /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
+        "1│company_name.coll_1          1.0.0         False     FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2          2.0.0         False     FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/19.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/19.json
index 139ac5805..c7d6560d6 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/19.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/19.json
@@ -1,58 +1,18 @@
 {
-    "name": "test[19-:0-lookup_1 plugin docs window]",
+    "name": "test[19-:1-Browse company_name.coll_1 plugins window]",
     "index": 19,
-    "comment": "lookup_1 plugin docs window",
+    "comment": "Browse company_name.coll_1 plugins window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
-        " 0│---",
-        " 1│additional_information: {}",
-        " 2│collection_info:",
-        " 3│  authors:",
-        " 4│  - Ansible team (ansible-navigator)",
-        " 5│  license_file: LICENSE",
-        " 6│  name: company_name.coll_1",
-        " 7│  namespace: company_name",
-        " 8│  path: FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
-        " 9│  readme: README.md",
-        "10│  shadowed_by: []",
-        "11│  version: 1.0.0",
-        "12│doc:",
-        "13│  author: test",
-        "14│  description:",
-        "15│  - This is test lookup plugin",
-        "16│  name: lookup_1",
-        "17│  notes:",
-        "18│  - This is a dummy lookup plugin",
-        "19│  options:",
-        "20│    bar:",
-        "21│      default: candidate",
-        "22│      description:",
-        "23│      - Dummy option I(bar)",
-        "24│      type: str",
-        "25│    foo:",
-        "26│      description:",
-        "27│      - Dummy option I(foo)",
-        "28│      required: true",
-        "29│      type: str",
-        "30│  plugin_type: lookup",
-        "31│  short_description: This is test lookup plugin",
-        "32│  version_added: 1.0.0",
-        "33│  version_added_collection: company_name.coll_1",
-        "34│examples: |-",
-        "35│  - name: Retrieve a value deep inside a using a path",
-        "36│        ansible.builtin.set_fact:",
-        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
-        "38│full_name: company_name.coll_1.lookup_1",
-        "39│metadata: null",
-        "40│returndocs:",
-        "41│  _raw:",
-        "42│    description:",
-        "43│    - One or more zero-based indices of the matching list items.",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/20.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/20.json
index b2595d737..be5e9f353 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/20.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/20.json
@@ -1,18 +1,58 @@
 {
-    "name": "test[20-:back-Back to browse company_name.coll_1 plugins window]",
+    "name": "test[20-:0-lookup_1 plugin docs window]",
     "index": 20,
-    "comment": "Back to browse company_name.coll_1 plugins window",
+    "comment": "lookup_1 plugin docs window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
+        " 0│---",
+        " 1│additional_information: {}",
+        " 2│collection_info:",
+        " 3│  authors:",
+        " 4│  - Ansible team (ansible-navigator)",
+        " 5│  license_file: LICENSE",
+        " 6│  name: company_name.coll_1",
+        " 7│  namespace: company_name",
+        " 8│  path: FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
+        " 9│  readme: README.md",
+        "10│  shadowed_by: []",
+        "11│  version: 1.0.0",
+        "12│doc:",
+        "13│  author: test",
+        "14│  description:",
+        "15│  - This is test lookup plugin",
+        "16│  name: lookup_1",
+        "17│  notes:",
+        "18│  - This is a dummy lookup plugin",
+        "19│  options:",
+        "20│    bar:",
+        "21│      default: candidate",
+        "22│      description:",
+        "23│      - Dummy option I(bar)",
+        "24│      type: str",
+        "25│    foo:",
+        "26│      description:",
+        "27│      - Dummy option I(foo)",
+        "28│      required: true",
+        "29│      type: str",
+        "30│  plugin_type: lookup",
+        "31│  short_description: This is test lookup plugin",
+        "32│  version_added: 1.0.0",
+        "33│  version_added_collection: company_name.coll_1",
+        "34│examples: |-",
+        "35│  - name: Retrieve a value deep inside a using a path",
+        "36│        ansible.builtin.set_fact:",
+        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
+        "38│full_name: company_name.coll_1.lookup_1",
+        "39│metadata: null",
+        "40│returndocs:",
+        "41│  _raw:",
+        "42│    description:",
+        "43│    - One or more zero-based indices of the matching list items.",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/21.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/21.json
index d4de0cd0f..ce2544178 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/21.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/21.json
@@ -1,21 +1,18 @@
 {
-    "name": "test[21-:back-Back to ansible-navigator collections browse window]",
+    "name": "test[21-:back-Back to browse company_name.coll_1 plugins window]",
     "index": 21,
-    "comment": "Back to ansible-navigator collections browse window",
+    "comment": "Back to browse company_name.coll_1 plugins window",
     "additional_information": {
-        "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
-        ],
+        "present": [],
         "absent": [],
-        "compared_fixture": false
+        "compared_fixture": true
     },
     "output": [
-        "  NAME                         VERSION    SHADOWED     PATH",
-        "0│ansible.builtin              2.12.3        False     /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
-        "1│company_name.coll_1          1.0.0         False     FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2          2.0.0         False     FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_2",
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/22.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/22.json
index 38a298f1b..833904d2c 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/22.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/22.json
@@ -1,140 +1,21 @@
 {
-    "name": "test[22-:0-Browse ansible.builtin plugins window]",
+    "name": "test[22-:back-Back to ansible-navigator collections browse window]",
     "index": 22,
-    "comment": "Browse ansible.builtin plugins window",
+    "comment": "Back to ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
-        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
-        "  2│apt                          module        0.0.2         False         Manages apt-packages",
-        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
-        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
-        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
-        "  6│assert                       module        1.5           False         Asserts given expressions are true",
-        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
-        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
-        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
-        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
-        " 11│command                      module        historical    False         Execute commands on targets",
-        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
-        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
-        " 14│copy                         module        historical    False         Copy files to remote locations",
-        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
-        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
-        " 17│debconf                      module        1.6           False         Configure a .deb package",
-        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
-        " 19│debug                        module        0.8           False         Print statements during execution",
-        " 20│default                      callback      historical    False         default Ansible screen output",
-        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
-        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
-        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
-        " 24│env                          lookup        0.9           False         Read the value of environment variables",
-        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
-        " 26│fail                         module        0.8           False         Fail with custom message",
-        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
-        " 28│file                         lookup        0.9           False         read file contents",
-        " 29│file                         module        historical    False         Manage files and file properties",
-        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
-        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
-        " 32│first_found                  lookup        historical    False         return first file found from list",
-        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
-        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
-        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
-        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
-        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
-        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
-        " 39│group                        module        0.0.2         False         Add or remove groups",
-        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
-        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
-        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
-        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
-        " 44│hostname                     module        1.4           False         Manage hostname",
-        " 45│import_playbook              module        2.4           False         Import a playbook",
-        " 46│import_role                  module        2.4           False         Import a role into a play",
-        " 47│import_tasks                 module        2.4           False         Import a task list",
-        " 48│include                      module        0.6           False         Include a play or task list",
-        " 49│include_role                 module        2.2           False         Load and execute a role",
-        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
-        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
-        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
-        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
-        " 54│ini                          lookup        2.0           False         read data from a ini file",
-        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
-        " 56│iptables                     module        2.0           False         Modify iptables rules",
-        " 57│items                        lookup        historical    False         list of items",
-        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
-        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
-        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
-        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
-        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
-        " 63│lines                        lookup        0.9           False         read lines from command",
-        " 64│list                         lookup        2.0           False         simply returns what it is given.",
-        " 65│local                        connection    historical    False         execute on controller",
-        " 66│memory                       cache         historical    False         RAM backed, non persistent",
-        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
-        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
-        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
-        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
-        " 71│package                      module          2.0         False         Generic OS package manager",
-        " 72│package_facts                module        2.5           False         Package information as facts",
-        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
-        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
-        " 75│pause                        module        0.8           False         Pause playbook execution",
-        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
-        " 77│pip                          module        0.7           False         Manages Python library dependencies",
-        " 78│pipe                         lookup        0.9           False         read output from a command",
-        " 79│powershell                   shell         historical    False         Windows PowerShell",
-        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
-        " 81│random_choice                lookup        1.1           False         return random element from list",
-        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
-        " 83│reboot                       module        2.7           False         Reboot a machine",
-        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
-        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
-        " 86│runas                        become        2.8           False         Run As user",
-        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
-        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
-        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
-        " 90│service                      module        0.1           False         Manage services",
-        " 91│service_facts                module        2.5           False         Return service state information as fact data",
-        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
-        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
-        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
-        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
-        " 96│shell                        module        0.2           False         Execute shell commands on targets",
-        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
-        " 98│ssh                          connection    historical    False         connect via SSH client binary",
-        " 99│stat                         module        1.3           False         Retrieve file or file system status",
-        "100│su                           become        2.8           False         Substitute User",
-        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
-        "102│subversion                   module        0.7           False         Deploys a subversion repository",
-        "103│sudo                         become        2.8           False         Substitute User DO",
-        "104│systemd                      module        2.2           False         Manage systemd units",
-        "105│sysvinit                     module        2.6           False         Manage SysV services.",
-        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
-        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
-        "108│template                     module        historical    False         Template a file out to a target host",
-        "109│together                     lookup        1.3           False         merges lists into synchronized list",
-        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
-        "111│tree                         callback      2.0           False         Save host events to files",
-        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
-        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
-        "114│uri                          module        1.1           False         Interacts with webservices",
-        "115│url                          lookup        1.9           False         return contents from URL",
-        "116│user                         module        0.2           False         Manage user accounts",
-        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
-        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
-        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
-        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
-        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
-        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
-        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
-        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
-        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "  NAME                         VERSION    SHADOWED     PATH",
+        "0│ansible.builtin              2.12.3        False     /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
+        "1│company_name.coll_1          1.0.0         False     FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2          2.0.0         False     FIXTURES_COLLECTION_DIR/test_direct_interactive_noee.py/collections/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/23.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/23.json
index 10f68b5ed..2eb31e505 100644
--- a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/23.json
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/23.json
@@ -1,170 +1,142 @@
 {
-    "name": "test[23-:0-Browse ansible.builtin.add_host module]",
+    "name": "test[23-:0-Browse ansible.builtin plugins window]",
     "index": 23,
-    "comment": "Browse ansible.builtin.add_host module",
+    "comment": "Browse ansible.builtin plugins window",
     "additional_information": {
         "present": [
-            "ANSIBLE.BUILTIN.ADD_HOST"
+            "yum_repository"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        "  0│---",
-        "  1│additional_information: {}",
-        "  2│collection_info:",
-        "  3│  name: ansible.builtin",
-        "  4│  path: /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
-        "  5│  shadowed_by: []",
-        "  6│  version: 2.12.3",
-        "  7│doc:",
-        "  8│  attributes:",
-        "  9│    action:",
-        " 10│      description: Indicates this has a corresponding action plugin so some parts",
-        " 11│        of the options can be executed on the controller",
-        " 12│      support: full",
-        " 13│    async:",
-        " 14│      description: Supports being used with the C(async) keyword",
-        " 15│      support: none",
-        " 16│    become:",
-        " 17│      description: Is usable alongside become keywords",
-        " 18│      support: none",
-        " 19│    bypass_host_loop:",
-        " 20│      description:",
-        " 21│      - Forces a 'global' task that does not execute per host, this bypasses per host",
-        " 22│        templating and serial, throttle and other loop considerations",
-        " 23│      - Conditionals will work as if C(run_once) is being used, variables used will",
-        " 24│        be from the first available host",
-        " 25│      - This action will not work normally outside of lockstep strategies",
-        " 26│      support: full",
-        " 27│    bypass_task_loop:",
-        " 28│      description: These tasks ignore the C(loop) and C(with_) keywords",
-        " 29│      support: none",
-        " 30│    check_mode:",
-        " 31│      description: Can run in check_mode and return changed status prediction withought",
-        " 32│        modifying target",
-        " 33│      details: While this makes no changes to target systems the 'in memory' inventory",
-        " 34│        will still be altered",
-        " 35│      support: partial",
-        " 36│    connection:",
-        " 37│      description: Uses the target's configured connection information to execute",
-        " 38│        code on it",
-        " 39│      support: none",
-        " 40│    core:",
-        " 41│      description: This is a 'core engine' feature and is not implemented like most",
-        " 42│        task actions, so it is not overridable in any way via the plugin system.",
-        " 43│      details: While parts of this action are implemented in core, other parts are",
-        " 44│        still available as normal plugins and can be partially overridden",
-        " 45│      support: partial",
-        " 46│    delegation:",
-        " 47│      description: Can be used in conjunction with delegate_to and related keywords",
-        " 48│      support: none",
-        " 49│    diff_mode:",
-        " 50│      description: Will return details on what has changed (or possibly needs changing",
-        " 51│        in check_mode), when in diff mode",
-        " 52│      support: none",
-        " 53│    ignore_conditional:",
-        " 54│      description: The action is not subject to conditional execution so it will ignore",
-        " 55│        the C(when:) keyword",
-        " 56│      support: none",
-        " 57│    platform:",
-        " 58│      description: Target OS/families that can be operated against",
-        " 59│      platforms: all",
-        " 60│      support: N/A",
-        " 61│    tags:",
-        " 62│      description: Allows for the 'tags' keyword to control the selection of this",
-        " 63│        action for execution",
-        " 64│      support: full",
-        " 65│    until:",
-        " 66│      description: Denotes if this action objeys until/retry/poll keywords",
-        " 67│      support: full",
-        " 68│  author:",
-        " 69│  - Ansible Core Team",
-        " 70│  - Seth Vidal (@skvidal)",
-        " 71│  description:",
-        " 72│  - Use variables to create new hosts and groups in inventory for use in later plays",
-        " 73│    of the same playbook.",
-        " 74│  - Takes variables so you can define the new hosts more fully.",
-        " 75│  - This module is also supported for Windows targets.",
-        " 76│  module: add_host",
-        " 77│  notes:",
-        " 78│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
-        " 79│    newer.",
-        " 80│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
-        " 81│    of the 'global inventory source', because you can now have multiple sources.  An",
-        " 82│    example was added that shows how to partially restore the previous behaviour.",
-        " 83│  - Though this module does not change the remote host, we do provide 'changed' status",
-        " 84│    as it can be useful for those trying to track inventory changes.",
-        " 85│  - The hosts added will not bypass the C(--limit) from the command line, so both",
-        " 86│    of those need to be in agreement to make them available as play targets. They",
-        " 87│    are still available from hostvars and for delegation as a normal part of the inventory.",
-        " 88│  options:",
-        " 89│    groups:",
-        " 90│      aliases:",
-        " 91│      - group",
-        " 92│      - groupname",
-        " 93│      description:",
-        " 94│      - The groups to add the hostname to.",
-        " 95│      type: list",
-        " 96│    name:",
-        " 97│      aliases:",
-        " 98│      - host",
-        " 99│      - hostname",
-        "100│      description:",
-        "101│      - The hostname/ip of the host to add to the inventory, can include a colon and",
-        "102│        a port number.",
-        "103│      required: true",
-        "104│      type: str",
-        "105│  seealso:",
-        "106│  - module: ansible.builtin.group_by",
-        "107│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
-        "108│    in-memory inventory",
-        "109│  version_added: '0.9'",
-        "110│  version_added_collection: ansible.builtin",
-        "111│examples: |-",
-        "112│  - name: Add host to group 'just_created' with variable foo=42",
-        "113│    add_host:",
-        "114│      name: '{{ ip_from_ec2 }}'",
-        "115│      groups: just_created",
-        "116│      foo: 42",
-        "117│",
-        "118│  - name: Add host to multiple groups",
-        "119│    add_host:",
-        "120│      hostname: '{{ new_ip }}'",
-        "121│      groups:",
-        "122│      - group1",
-        "123│      - group2",
-        "124│",
-        "125│  - name: Add a host with a non-standard port local to your machines",
-        "126│    add_host:",
-        "127│      name: '{{ new_ip }}:{{ new_port }}'",
-        "128│",
-        "129│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
-        "130│    add_host:",
-        "131│      hostname: '{{ new_ip }}'",
-        "132│      ansible_ssh_host: '{{ inventory_hostname }}'",
-        "133│      ansible_ssh_port: '{{ new_port }}'",
-        "134│",
-        "135│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
-        "136│    add_host:",
-        "137│      hostname: '{{ new_ip }}'",
-        "138│      ansible_host: '{{ inventory_hostname }}'",
-        "139│      ansible_port: '{{ new_port }}'",
-        "140│",
-        "141│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
-        "142│    add_host:",
-        "143│      hostname: charlie",
-        "144│      inventory_dir: '{{ inventory_dir }}'",
-        "145│",
-        "146│  - name: Add all hosts running this playbook to the done group",
-        "147│    add_host:",
-        "148│      name: '{{ item }}'",
-        "149│      groups: done",
-        "150│    loop: \"{{ ansible_play_hosts }}\"",
-        "151│full_name: ansible.builtin.add_host",
-        "152│metadata: null",
-        "153│returndocs: null",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
+        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
+        "  2│apt                          module        0.0.2         False         Manages apt-packages",
+        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
+        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
+        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
+        "  6│assert                       module        1.5           False         Asserts given expressions are true",
+        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
+        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
+        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
+        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
+        " 11│command                      module        historical    False         Execute commands on targets",
+        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
+        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
+        " 14│copy                         module        historical    False         Copy files to remote locations",
+        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
+        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
+        " 17│debconf                      module        1.6           False         Configure a .deb package",
+        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
+        " 19│debug                        module        0.8           False         Print statements during execution",
+        " 20│default                      callback      historical    False         default Ansible screen output",
+        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
+        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
+        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
+        " 24│env                          lookup        0.9           False         Read the value of environment variables",
+        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
+        " 26│fail                         module        0.8           False         Fail with custom message",
+        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
+        " 28│file                         lookup        0.9           False         read file contents",
+        " 29│file                         module        historical    False         Manage files and file properties",
+        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
+        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
+        " 32│first_found                  lookup        historical    False         return first file found from list",
+        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
+        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
+        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
+        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
+        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
+        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
+        " 39│group                        module        0.0.2         False         Add or remove groups",
+        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
+        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
+        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
+        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
+        " 44│hostname                     module        1.4           False         Manage hostname",
+        " 45│import_playbook              module        2.4           False         Import a playbook",
+        " 46│import_role                  module        2.4           False         Import a role into a play",
+        " 47│import_tasks                 module        2.4           False         Import a task list",
+        " 48│include                      module        0.6           False         Include a play or task list",
+        " 49│include_role                 module        2.2           False         Load and execute a role",
+        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
+        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
+        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
+        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
+        " 54│ini                          lookup        2.0           False         read data from a ini file",
+        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
+        " 56│iptables                     module        2.0           False         Modify iptables rules",
+        " 57│items                        lookup        historical    False         list of items",
+        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
+        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
+        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
+        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
+        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
+        " 63│lines                        lookup        0.9           False         read lines from command",
+        " 64│list                         lookup        2.0           False         simply returns what it is given.",
+        " 65│local                        connection    historical    False         execute on controller",
+        " 66│memory                       cache         historical    False         RAM backed, non persistent",
+        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
+        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
+        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
+        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
+        " 71│package                      module          2.0         False         Generic OS package manager",
+        " 72│package_facts                module        2.5           False         Package information as facts",
+        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
+        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
+        " 75│pause                        module        0.8           False         Pause playbook execution",
+        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
+        " 77│pip                          module        0.7           False         Manages Python library dependencies",
+        " 78│pipe                         lookup        0.9           False         read output from a command",
+        " 79│powershell                   shell         historical    False         Windows PowerShell",
+        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
+        " 81│random_choice                lookup        1.1           False         return random element from list",
+        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
+        " 83│reboot                       module        2.7           False         Reboot a machine",
+        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
+        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
+        " 86│runas                        become        2.8           False         Run As user",
+        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
+        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
+        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
+        " 90│service                      module        0.1           False         Manage services",
+        " 91│service_facts                module        2.5           False         Return service state information as fact data",
+        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
+        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
+        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
+        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
+        " 96│shell                        module        0.2           False         Execute shell commands on targets",
+        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
+        " 98│ssh                          connection    historical    False         connect via SSH client binary",
+        " 99│stat                         module        1.3           False         Retrieve file or file system status",
+        "100│su                           become        2.8           False         Substitute User",
+        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
+        "102│subversion                   module        0.7           False         Deploys a subversion repository",
+        "103│sudo                         become        2.8           False         Substitute User DO",
+        "104│systemd                      module        2.2           False         Manage systemd units",
+        "105│sysvinit                     module        2.6           False         Manage SysV services.",
+        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
+        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
+        "108│template                     module        historical    False         Template a file out to a target host",
+        "109│together                     lookup        1.3           False         merges lists into synchronized list",
+        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
+        "111│tree                         callback      2.0           False         Save host events to files",
+        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
+        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
+        "114│uri                          module        1.1           False         Interacts with webservices",
+        "115│url                          lookup        1.9           False         return contents from URL",
+        "116│user                         module        0.2           False         Manage user accounts",
+        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
+        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
+        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
+        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
+        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
+        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
+        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
+        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
+        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/24.json b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/24.json
new file mode 100644
index 000000000..3f7901961
--- /dev/null
+++ b/tests/fixtures/integration/actions/collections/test_direct_interactive_noee.py/test/24.json
@@ -0,0 +1,170 @@
+{
+    "name": "test[24-:0-Browse ansible.builtin.add_host module]",
+    "index": 24,
+    "comment": "Browse ansible.builtin.add_host module",
+    "additional_information": {
+        "present": [
+            "ANSIBLE.BUILTIN.ADD_HOST"
+        ],
+        "absent": [],
+        "compared_fixture": false
+    },
+    "output": [
+        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        "  0│---",
+        "  1│additional_information: {}",
+        "  2│collection_info:",
+        "  3│  name: ansible.builtin",
+        "  4│  path: /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
+        "  5│  shadowed_by: []",
+        "  6│  version: 2.12.3",
+        "  7│doc:",
+        "  8│  attributes:",
+        "  9│    action:",
+        " 10│      description: Indicates this has a corresponding action plugin so some parts",
+        " 11│        of the options can be executed on the controller",
+        " 12│      support: full",
+        " 13│    async:",
+        " 14│      description: Supports being used with the C(async) keyword",
+        " 15│      support: none",
+        " 16│    become:",
+        " 17│      description: Is usable alongside become keywords",
+        " 18│      support: none",
+        " 19│    bypass_host_loop:",
+        " 20│      description:",
+        " 21│      - Forces a 'global' task that does not execute per host, this bypasses per host",
+        " 22│        templating and serial, throttle and other loop considerations",
+        " 23│      - Conditionals will work as if C(run_once) is being used, variables used will",
+        " 24│        be from the first available host",
+        " 25│      - This action will not work normally outside of lockstep strategies",
+        " 26│      support: full",
+        " 27│    bypass_task_loop:",
+        " 28│      description: These tasks ignore the C(loop) and C(with_) keywords",
+        " 29│      support: none",
+        " 30│    check_mode:",
+        " 31│      description: Can run in check_mode and return changed status prediction withought",
+        " 32│        modifying target",
+        " 33│      details: While this makes no changes to target systems the 'in memory' inventory",
+        " 34│        will still be altered",
+        " 35│      support: partial",
+        " 36│    connection:",
+        " 37│      description: Uses the target's configured connection information to execute",
+        " 38│        code on it",
+        " 39│      support: none",
+        " 40│    core:",
+        " 41│      description: This is a 'core engine' feature and is not implemented like most",
+        " 42│        task actions, so it is not overridable in any way via the plugin system.",
+        " 43│      details: While parts of this action are implemented in core, other parts are",
+        " 44│        still available as normal plugins and can be partially overridden",
+        " 45│      support: partial",
+        " 46│    delegation:",
+        " 47│      description: Can be used in conjunction with delegate_to and related keywords",
+        " 48│      support: none",
+        " 49│    diff_mode:",
+        " 50│      description: Will return details on what has changed (or possibly needs changing",
+        " 51│        in check_mode), when in diff mode",
+        " 52│      support: none",
+        " 53│    ignore_conditional:",
+        " 54│      description: The action is not subject to conditional execution so it will ignore",
+        " 55│        the C(when:) keyword",
+        " 56│      support: none",
+        " 57│    platform:",
+        " 58│      description: Target OS/families that can be operated against",
+        " 59│      platforms: all",
+        " 60│      support: N/A",
+        " 61│    tags:",
+        " 62│      description: Allows for the 'tags' keyword to control the selection of this",
+        " 63│        action for execution",
+        " 64│      support: full",
+        " 65│    until:",
+        " 66│      description: Denotes if this action objeys until/retry/poll keywords",
+        " 67│      support: full",
+        " 68│  author:",
+        " 69│  - Ansible Core Team",
+        " 70│  - Seth Vidal (@skvidal)",
+        " 71│  description:",
+        " 72│  - Use variables to create new hosts and groups in inventory for use in later plays",
+        " 73│    of the same playbook.",
+        " 74│  - Takes variables so you can define the new hosts more fully.",
+        " 75│  - This module is also supported for Windows targets.",
+        " 76│  module: add_host",
+        " 77│  notes:",
+        " 78│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
+        " 79│    newer.",
+        " 80│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
+        " 81│    of the 'global inventory source', because you can now have multiple sources.  An",
+        " 82│    example was added that shows how to partially restore the previous behaviour.",
+        " 83│  - Though this module does not change the remote host, we do provide 'changed' status",
+        " 84│    as it can be useful for those trying to track inventory changes.",
+        " 85│  - The hosts added will not bypass the C(--limit) from the command line, so both",
+        " 86│    of those need to be in agreement to make them available as play targets. They",
+        " 87│    are still available from hostvars and for delegation as a normal part of the inventory.",
+        " 88│  options:",
+        " 89│    groups:",
+        " 90│      aliases:",
+        " 91│      - group",
+        " 92│      - groupname",
+        " 93│      description:",
+        " 94│      - The groups to add the hostname to.",
+        " 95│      type: list",
+        " 96│    name:",
+        " 97│      aliases:",
+        " 98│      - host",
+        " 99│      - hostname",
+        "100│      description:",
+        "101│      - The hostname/ip of the host to add to the inventory, can include a colon and",
+        "102│        a port number.",
+        "103│      required: true",
+        "104│      type: str",
+        "105│  seealso:",
+        "106│  - module: ansible.builtin.group_by",
+        "107│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
+        "108│    in-memory inventory",
+        "109│  version_added: '0.9'",
+        "110│  version_added_collection: ansible.builtin",
+        "111│examples: |-",
+        "112│  - name: Add host to group 'just_created' with variable foo=42",
+        "113│    add_host:",
+        "114│      name: '{{ ip_from_ec2 }}'",
+        "115│      groups: just_created",
+        "116│      foo: 42",
+        "117│",
+        "118│  - name: Add host to multiple groups",
+        "119│    add_host:",
+        "120│      hostname: '{{ new_ip }}'",
+        "121│      groups:",
+        "122│      - group1",
+        "123│      - group2",
+        "124│",
+        "125│  - name: Add a host with a non-standard port local to your machines",
+        "126│    add_host:",
+        "127│      name: '{{ new_ip }}:{{ new_port }}'",
+        "128│",
+        "129│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
+        "130│    add_host:",
+        "131│      hostname: '{{ new_ip }}'",
+        "132│      ansible_ssh_host: '{{ inventory_hostname }}'",
+        "133│      ansible_ssh_port: '{{ new_port }}'",
+        "134│",
+        "135│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
+        "136│    add_host:",
+        "137│      hostname: '{{ new_ip }}'",
+        "138│      ansible_host: '{{ inventory_hostname }}'",
+        "139│      ansible_port: '{{ new_port }}'",
+        "140│",
+        "141│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
+        "142│    add_host:",
+        "143│      hostname: charlie",
+        "144│      inventory_dir: '{{ inventory_dir }}'",
+        "145│",
+        "146│  - name: Add all hosts running this playbook to the done group",
+        "147│    add_host:",
+        "148│      name: '{{ item }}'",
+        "149│      groups: done",
+        "150│    loop: \"{{ ansible_play_hosts }}\"",
+        "151│full_name: ansible.builtin.add_host",
+        "152│metadata: null",
+        "153│returndocs: null",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+    ]
+}
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/18.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/18.json
index b1f1a192d..f39832507 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/18.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/18.json
@@ -4,18 +4,20 @@
     "comment": "Provide an invalid ee value",
     "additional_information": {
         "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
+            "Errors were encountered while parsing the last command"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "  NAME                      VERSION          SHADOWED    TYPE          PATH",
-        "0│ansible.builtin           2.11.6.post0        False    contained     /usr/local/lib/python3.8/site-packages/ansible",
-        "1│company_name.coll_1       1.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2       2.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_2",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "                                        WARNING",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                        Errors were encountered while parsing the last command.",
+        "                                        [ERROR]: Command provided: 'collections --ee FFFFF'",
+        "                                        [ERROR]: execution_environment could not be converted to a boolean value, value was 'FFFFF' (str)",
+        "                                        [ERROR]: execution-environment must be one of 'true' or 'false', but set as 'FFFFF' in Command line",
+        "                                         [HINT]: Try again with '--ee true' or '--ee false'",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                                                                                                                      Ok"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/19.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/19.json
index c7d6560d6..a4a6397d3 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/19.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/19.json
@@ -1,18 +1,21 @@
 {
-    "name": "test[19-:1-Browse company_name.coll_1 plugins window]",
+    "name": "test[19-Enter-ansible-navigator collections browse window]",
     "index": 19,
-    "comment": "Browse company_name.coll_1 plugins window",
+    "comment": "ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "  NAME                      VERSION          SHADOWED    TYPE          PATH",
+        "0│ansible.builtin           2.11.6.post0        False    contained     /usr/local/lib/python3.8/site-packages/ansible",
+        "1│company_name.coll_1       1.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2       2.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/20.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/20.json
index 988759aba..03cd9aca5 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/20.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/20.json
@@ -1,58 +1,18 @@
 {
-    "name": "test[20-:0-lookup_1 plugin docs window]",
+    "name": "test[20-:1-Browse company_name.coll_1 plugins window]",
     "index": 20,
-    "comment": "lookup_1 plugin docs window",
+    "comment": "Browse company_name.coll_1 plugins window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
-        " 0│---",
-        " 1│additional_information: {}",
-        " 2│collection_info:",
-        " 3│  authors:",
-        " 4│  - Ansible team (ansible-navigator)",
-        " 5│  license_file: LICENSE",
-        " 6│  name: company_name.coll_1",
-        " 7│  namespace: company_name",
-        " 8│  path: FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
-        " 9│  readme: README.md",
-        "10│  shadowed_by: []",
-        "11│  version: 1.0.0",
-        "12│doc:",
-        "13│  author: test",
-        "14│  description:",
-        "15│  - This is test lookup plugin",
-        "16│  name: lookup_1",
-        "17│  notes:",
-        "18│  - This is a dummy lookup plugin",
-        "19│  options:",
-        "20│    bar:",
-        "21│      default: candidate",
-        "22│      description:",
-        "23│      - Dummy option I(bar)",
-        "24│      type: str",
-        "25│    foo:",
-        "26│      description:",
-        "27│      - Dummy option I(foo)",
-        "28│      required: true",
-        "29│      type: str",
-        "30│  plugin_type: lookup",
-        "31│  short_description: This is test lookup plugin",
-        "32│  version_added: 1.0.0",
-        "33│  version_added_collection: company_name.coll_1",
-        "34│examples: |-",
-        "35│  - name: Retrieve a value deep inside a using a path",
-        "36│        ansible.builtin.set_fact:",
-        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
-        "38│full_name: company_name.coll_1.lookup_1",
-        "39│metadata: null",
-        "40│returndocs:",
-        "41│  _raw:",
-        "42│    description:",
-        "43│    - One or more zero-based indices of the matching list items.",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/21.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/21.json
index ce2544178..120f93329 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/21.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/21.json
@@ -1,18 +1,58 @@
 {
-    "name": "test[21-:back-Back to browse company_name.coll_1 plugins window]",
+    "name": "test[21-:0-lookup_1 plugin docs window]",
     "index": 21,
-    "comment": "Back to browse company_name.coll_1 plugins window",
+    "comment": "lookup_1 plugin docs window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
+        " 0│---",
+        " 1│additional_information: {}",
+        " 2│collection_info:",
+        " 3│  authors:",
+        " 4│  - Ansible team (ansible-navigator)",
+        " 5│  license_file: LICENSE",
+        " 6│  name: company_name.coll_1",
+        " 7│  namespace: company_name",
+        " 8│  path: FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
+        " 9│  readme: README.md",
+        "10│  shadowed_by: []",
+        "11│  version: 1.0.0",
+        "12│doc:",
+        "13│  author: test",
+        "14│  description:",
+        "15│  - This is test lookup plugin",
+        "16│  name: lookup_1",
+        "17│  notes:",
+        "18│  - This is a dummy lookup plugin",
+        "19│  options:",
+        "20│    bar:",
+        "21│      default: candidate",
+        "22│      description:",
+        "23│      - Dummy option I(bar)",
+        "24│      type: str",
+        "25│    foo:",
+        "26│      description:",
+        "27│      - Dummy option I(foo)",
+        "28│      required: true",
+        "29│      type: str",
+        "30│  plugin_type: lookup",
+        "31│  short_description: This is test lookup plugin",
+        "32│  version_added: 1.0.0",
+        "33│  version_added_collection: company_name.coll_1",
+        "34│examples: |-",
+        "35│  - name: Retrieve a value deep inside a using a path",
+        "36│        ansible.builtin.set_fact:",
+        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
+        "38│full_name: company_name.coll_1.lookup_1",
+        "39│metadata: null",
+        "40│returndocs:",
+        "41│  _raw:",
+        "42│    description:",
+        "43│    - One or more zero-based indices of the matching list items.",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/22.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/22.json
index 39c57f765..ca44f34d1 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/22.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/22.json
@@ -1,21 +1,18 @@
 {
-    "name": "test[22-:back-Back to ansible-navigator collections browse window]",
+    "name": "test[22-:back-Back to browse company_name.coll_1 plugins window]",
     "index": 22,
-    "comment": "Back to ansible-navigator collections browse window",
+    "comment": "Back to browse company_name.coll_1 plugins window",
     "additional_information": {
-        "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
-        ],
+        "present": [],
         "absent": [],
-        "compared_fixture": false
+        "compared_fixture": true
     },
     "output": [
-        "  NAME                      VERSION          SHADOWED    TYPE          PATH",
-        "0│ansible.builtin           2.11.6.post0        False    contained     /usr/local/lib/python3.8/site-packages/ansible",
-        "1│company_name.coll_1       1.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2       2.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_2",
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/23.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/23.json
index 4f3899834..025f7ef78 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/23.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/23.json
@@ -1,140 +1,21 @@
 {
-    "name": "test[23-:0-Browse ansible.builtin plugins window]",
+    "name": "test[23-:back-Back to ansible-navigator collections browse window]",
     "index": 23,
-    "comment": "Browse ansible.builtin plugins window",
+    "comment": "Back to ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
-        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
-        "  2│apt                          module        0.0.2         False         Manages apt-packages",
-        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
-        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
-        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
-        "  6│assert                       module        1.5           False         Asserts given expressions are true",
-        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
-        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
-        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
-        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
-        " 11│command                      module        historical    False         Execute commands on targets",
-        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
-        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
-        " 14│copy                         module        historical    False         Copy files to remote locations",
-        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
-        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
-        " 17│debconf                      module        1.6           False         Configure a .deb package",
-        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
-        " 19│debug                        module        0.8           False         Print statements during execution",
-        " 20│default                      callback      historical    False         default Ansible screen output",
-        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
-        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
-        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
-        " 24│env                          lookup        0.9           False         Read the value of environment variables",
-        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
-        " 26│fail                         module        0.8           False         Fail with custom message",
-        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
-        " 28│file                         lookup        0.9           False         read file contents",
-        " 29│file                         module        historical    False         Manage files and file properties",
-        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
-        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
-        " 32│first_found                  lookup        historical    False         return first file found from list",
-        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
-        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
-        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
-        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
-        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
-        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
-        " 39│group                        module        0.0.2         False         Add or remove groups",
-        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
-        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
-        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
-        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
-        " 44│hostname                     module        1.4           False         Manage hostname",
-        " 45│import_playbook              module        2.4           False         Import a playbook",
-        " 46│import_role                  module        2.4           False         Import a role into a play",
-        " 47│import_tasks                 module        2.4           False         Import a task list",
-        " 48│include                      module        0.6           False         Include a play or task list",
-        " 49│include_role                 module        2.2           False         Load and execute a role",
-        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
-        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
-        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
-        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
-        " 54│ini                          lookup        2.0           False         read data from a ini file",
-        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
-        " 56│iptables                     module        2.0           False         Modify iptables rules",
-        " 57│items                        lookup        historical    False         list of items",
-        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
-        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
-        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
-        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
-        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
-        " 63│lines                        lookup        0.9           False         read lines from command",
-        " 64│list                         lookup        2.0           False         simply returns what it is given.",
-        " 65│local                        connection    historical    False         execute on controller",
-        " 66│memory                       cache         historical    False         RAM backed, non persistent",
-        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
-        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
-        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
-        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
-        " 71│package                      module          2.0         False         Generic OS package manager",
-        " 72│package_facts                module        2.5           False         Package information as facts",
-        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
-        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
-        " 75│pause                        module        0.8           False         Pause playbook execution",
-        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
-        " 77│pip                          module        0.7           False         Manages Python library dependencies",
-        " 78│pipe                         lookup        0.9           False         read output from a command",
-        " 79│powershell                   shell         historical    False         Windows PowerShell",
-        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
-        " 81│random_choice                lookup        1.1           False         return random element from list",
-        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
-        " 83│reboot                       module        2.7           False         Reboot a machine",
-        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
-        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
-        " 86│runas                        become        2.8           False         Run As user",
-        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
-        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
-        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
-        " 90│service                      module        0.1           False         Manage services",
-        " 91│service_facts                module        2.5           False         Return service state information as fact data",
-        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
-        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
-        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
-        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
-        " 96│shell                        module        0.2           False         Execute shell commands on targets",
-        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
-        " 98│ssh                          connection    historical    False         connect via ssh client binary",
-        " 99│stat                         module        1.3           False         Retrieve file or file system status",
-        "100│su                           become        2.8           False         Substitute User",
-        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
-        "102│subversion                   module        0.7           False         Deploys a subversion repository",
-        "103│sudo                         become        2.8           False         Substitute User DO",
-        "104│systemd                      module        2.2           False         Manage systemd units",
-        "105│sysvinit                     module        2.6           False         Manage SysV services.",
-        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
-        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
-        "108│template                     module        historical    False         Template a file out to a target host",
-        "109│together                     lookup        1.3           False         merges lists into synchronized list",
-        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
-        "111│tree                         callback      2.0           False         Save host events to files",
-        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
-        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
-        "114│uri                          module        1.1           False         Interacts with webservices",
-        "115│url                          lookup        1.9           False         return contents from URL",
-        "116│user                         module        0.2           False         Manage user accounts",
-        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
-        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
-        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
-        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
-        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
-        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
-        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
-        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
-        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "  NAME                      VERSION          SHADOWED    TYPE          PATH",
+        "0│ansible.builtin           2.11.6.post0        False    contained     /usr/local/lib/python3.8/site-packages/ansible",
+        "1│company_name.coll_1       1.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2       2.0.0               False    bind_mount    FIXTURES_COLLECTION_DIR/test_welcome_interactive_ee.py/collections/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/24.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/24.json
index 0bd979a76..5fee2eecc 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/24.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/24.json
@@ -1,112 +1,142 @@
 {
-    "name": "test[24-:0-Browse ansible.builtin.add_host module]",
+    "name": "test[24-:0-Browse ansible.builtin plugins window]",
     "index": 24,
-    "comment": "Browse ansible.builtin.add_host module",
+    "comment": "Browse ansible.builtin plugins window",
     "additional_information": {
         "present": [
-            "ANSIBLE.BUILTIN.ADD_HOST"
+            "yum_repository"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        " 0│---",
-        " 1│additional_information: {}",
-        " 2│collection_info:",
-        " 3│  name: ansible.builtin",
-        " 4│  path: /usr/local/lib/python3.8/site-packages/ansible",
-        " 5│  shadowed_by: []",
-        " 6│  version: 2.11.6.post0",
-        " 7│doc:",
-        " 8│  author:",
-        " 9│  - Ansible Core Team",
-        "10│  - Seth Vidal (@skvidal)",
-        "11│  description:",
-        "12│  - Use variables to create new hosts and groups in inventory for use in later plays",
-        "13│    of the same playbook.",
-        "14│  - Takes variables so you can define the new hosts more fully.",
-        "15│  - This module is also supported for Windows targets.",
-        "16│  module: add_host",
-        "17│  notes:",
-        "18│  - This module bypasses the play host loop and only runs once for all the hosts in",
-        "19│    the play, if you need it to iterate use a C(loop) construct. If you need to dynamically",
-        "20│    add all hosts targeted by a playbook for later use, the C(group_by) module is",
-        "21│    potentially a better choice.",
-        "22│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
-        "23│    newer.",
-        "24│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
-        "25│    of the 'global inventory source', because you can now have multiple sources.  An",
-        "26│    example was added that shows how to partially restore the previous behaviour.",
-        "27│  - Windows targets are supported by this module.",
-        "28│  - Though this module does not change the remote host, we do provide 'changed' status",
-        "29│    as it can be useful for those trying to track inventory changes.",
-        "30│  options:",
-        "31│    groups:",
-        "32│      aliases:",
-        "33│      - group",
-        "34│      - groupname",
-        "35│      description:",
-        "36│      - The groups to add the hostname to.",
-        "37│      type: list",
-        "38│    name:",
-        "39│      aliases:",
-        "40│      - host",
-        "41│      - hostname",
-        "42│      description:",
-        "43│      - The hostname/ip of the host to add to the inventory, can include a colon and",
-        "44│        a port number.",
-        "45│      required: true",
-        "46│      type: str",
-        "47│  seealso:",
-        "48│  - module: ansible.builtin.group_by",
-        "49│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
-        "50│    in-memory inventory",
-        "51│  version_added: '0.9'",
-        "52│  version_added_collection: ansible.builtin",
-        "53│examples: |-",
-        "54│  - name: Add host to group 'just_created' with variable foo=42",
-        "55│    add_host:",
-        "56│      name: '{{ ip_from_ec2 }}'",
-        "57│      groups: just_created",
-        "58│      foo: 42",
-        "59│",
-        "60│  - name: Add host to multiple groups",
-        "61│    add_host:",
-        "62│      hostname: '{{ new_ip }}'",
-        "63│      groups:",
-        "64│      - group1",
-        "65│      - group2",
-        "66│",
-        "67│  - name: Add a host with a non-standard port local to your machines",
-        "68│    add_host:",
-        "69│      name: '{{ new_ip }}:{{ new_port }}'",
-        "70│",
-        "71│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
-        "72│    add_host:",
-        "73│      hostname: '{{ new_ip }}'",
-        "74│      ansible_ssh_host: '{{ inventory_hostname }}'",
-        "75│      ansible_ssh_port: '{{ new_port }}'",
-        "76│",
-        "77│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
-        "78│    add_host:",
-        "79│      hostname: '{{ new_ip }}'",
-        "80│      ansible_host: '{{ inventory_hostname }}'",
-        "81│      ansible_port: '{{ new_port }}'",
-        "82│",
-        "83│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
-        "84│    add_host:",
-        "85│      hostname: charlie",
-        "86│      inventory_dir: '{{ inventory_dir }}'",
-        "87│",
-        "88│  - name: Add all hosts running this playbook to the done group",
-        "89│    add_host:",
-        "90│      name: '{{ item }}'",
-        "91│      groups: done",
-        "92│    loop: \"{{ ansible_play_hosts }}\"",
-        "93│full_name: ansible.builtin.add_host",
-        "94│metadata: null",
-        "95│returndocs: null",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
+        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
+        "  2│apt                          module        0.0.2         False         Manages apt-packages",
+        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
+        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
+        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
+        "  6│assert                       module        1.5           False         Asserts given expressions are true",
+        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
+        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
+        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
+        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
+        " 11│command                      module        historical    False         Execute commands on targets",
+        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
+        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
+        " 14│copy                         module        historical    False         Copy files to remote locations",
+        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
+        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
+        " 17│debconf                      module        1.6           False         Configure a .deb package",
+        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
+        " 19│debug                        module        0.8           False         Print statements during execution",
+        " 20│default                      callback      historical    False         default Ansible screen output",
+        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
+        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
+        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
+        " 24│env                          lookup        0.9           False         Read the value of environment variables",
+        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
+        " 26│fail                         module        0.8           False         Fail with custom message",
+        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
+        " 28│file                         lookup        0.9           False         read file contents",
+        " 29│file                         module        historical    False         Manage files and file properties",
+        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
+        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
+        " 32│first_found                  lookup        historical    False         return first file found from list",
+        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
+        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
+        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
+        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
+        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
+        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
+        " 39│group                        module        0.0.2         False         Add or remove groups",
+        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
+        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
+        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
+        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
+        " 44│hostname                     module        1.4           False         Manage hostname",
+        " 45│import_playbook              module        2.4           False         Import a playbook",
+        " 46│import_role                  module        2.4           False         Import a role into a play",
+        " 47│import_tasks                 module        2.4           False         Import a task list",
+        " 48│include                      module        0.6           False         Include a play or task list",
+        " 49│include_role                 module        2.2           False         Load and execute a role",
+        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
+        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
+        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
+        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
+        " 54│ini                          lookup        2.0           False         read data from a ini file",
+        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
+        " 56│iptables                     module        2.0           False         Modify iptables rules",
+        " 57│items                        lookup        historical    False         list of items",
+        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
+        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
+        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
+        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
+        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
+        " 63│lines                        lookup        0.9           False         read lines from command",
+        " 64│list                         lookup        2.0           False         simply returns what it is given.",
+        " 65│local                        connection    historical    False         execute on controller",
+        " 66│memory                       cache         historical    False         RAM backed, non persistent",
+        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
+        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
+        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
+        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
+        " 71│package                      module          2.0         False         Generic OS package manager",
+        " 72│package_facts                module        2.5           False         Package information as facts",
+        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
+        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
+        " 75│pause                        module        0.8           False         Pause playbook execution",
+        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
+        " 77│pip                          module        0.7           False         Manages Python library dependencies",
+        " 78│pipe                         lookup        0.9           False         read output from a command",
+        " 79│powershell                   shell         historical    False         Windows PowerShell",
+        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
+        " 81│random_choice                lookup        1.1           False         return random element from list",
+        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
+        " 83│reboot                       module        2.7           False         Reboot a machine",
+        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
+        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
+        " 86│runas                        become        2.8           False         Run As user",
+        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
+        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
+        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
+        " 90│service                      module        0.1           False         Manage services",
+        " 91│service_facts                module        2.5           False         Return service state information as fact data",
+        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
+        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
+        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
+        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
+        " 96│shell                        module        0.2           False         Execute shell commands on targets",
+        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
+        " 98│ssh                          connection    historical    False         connect via ssh client binary",
+        " 99│stat                         module        1.3           False         Retrieve file or file system status",
+        "100│su                           become        2.8           False         Substitute User",
+        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
+        "102│subversion                   module        0.7           False         Deploys a subversion repository",
+        "103│sudo                         become        2.8           False         Substitute User DO",
+        "104│systemd                      module        2.2           False         Manage systemd units",
+        "105│sysvinit                     module        2.6           False         Manage SysV services.",
+        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
+        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
+        "108│template                     module        historical    False         Template a file out to a target host",
+        "109│together                     lookup        1.3           False         merges lists into synchronized list",
+        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
+        "111│tree                         callback      2.0           False         Save host events to files",
+        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
+        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
+        "114│uri                          module        1.1           False         Interacts with webservices",
+        "115│url                          lookup        1.9           False         return contents from URL",
+        "116│user                         module        0.2           False         Manage user accounts",
+        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
+        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
+        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
+        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
+        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
+        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
+        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
+        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
+        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/25.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/25.json
new file mode 100644
index 000000000..4bc0d5306
--- /dev/null
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_ee.py/test/25.json
@@ -0,0 +1,112 @@
+{
+    "name": "test[25-:0-Browse ansible.builtin.add_host module]",
+    "index": 25,
+    "comment": "Browse ansible.builtin.add_host module",
+    "additional_information": {
+        "present": [
+            "ANSIBLE.BUILTIN.ADD_HOST"
+        ],
+        "absent": [],
+        "compared_fixture": false
+    },
+    "output": [
+        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        " 0│---",
+        " 1│additional_information: {}",
+        " 2│collection_info:",
+        " 3│  name: ansible.builtin",
+        " 4│  path: /usr/local/lib/python3.8/site-packages/ansible",
+        " 5│  shadowed_by: []",
+        " 6│  version: 2.11.6.post0",
+        " 7│doc:",
+        " 8│  author:",
+        " 9│  - Ansible Core Team",
+        "10│  - Seth Vidal (@skvidal)",
+        "11│  description:",
+        "12│  - Use variables to create new hosts and groups in inventory for use in later plays",
+        "13│    of the same playbook.",
+        "14│  - Takes variables so you can define the new hosts more fully.",
+        "15│  - This module is also supported for Windows targets.",
+        "16│  module: add_host",
+        "17│  notes:",
+        "18│  - This module bypasses the play host loop and only runs once for all the hosts in",
+        "19│    the play, if you need it to iterate use a C(loop) construct. If you need to dynamically",
+        "20│    add all hosts targeted by a playbook for later use, the C(group_by) module is",
+        "21│    potentially a better choice.",
+        "22│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
+        "23│    newer.",
+        "24│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
+        "25│    of the 'global inventory source', because you can now have multiple sources.  An",
+        "26│    example was added that shows how to partially restore the previous behaviour.",
+        "27│  - Windows targets are supported by this module.",
+        "28│  - Though this module does not change the remote host, we do provide 'changed' status",
+        "29│    as it can be useful for those trying to track inventory changes.",
+        "30│  options:",
+        "31│    groups:",
+        "32│      aliases:",
+        "33│      - group",
+        "34│      - groupname",
+        "35│      description:",
+        "36│      - The groups to add the hostname to.",
+        "37│      type: list",
+        "38│    name:",
+        "39│      aliases:",
+        "40│      - host",
+        "41│      - hostname",
+        "42│      description:",
+        "43│      - The hostname/ip of the host to add to the inventory, can include a colon and",
+        "44│        a port number.",
+        "45│      required: true",
+        "46│      type: str",
+        "47│  seealso:",
+        "48│  - module: ansible.builtin.group_by",
+        "49│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
+        "50│    in-memory inventory",
+        "51│  version_added: '0.9'",
+        "52│  version_added_collection: ansible.builtin",
+        "53│examples: |-",
+        "54│  - name: Add host to group 'just_created' with variable foo=42",
+        "55│    add_host:",
+        "56│      name: '{{ ip_from_ec2 }}'",
+        "57│      groups: just_created",
+        "58│      foo: 42",
+        "59│",
+        "60│  - name: Add host to multiple groups",
+        "61│    add_host:",
+        "62│      hostname: '{{ new_ip }}'",
+        "63│      groups:",
+        "64│      - group1",
+        "65│      - group2",
+        "66│",
+        "67│  - name: Add a host with a non-standard port local to your machines",
+        "68│    add_host:",
+        "69│      name: '{{ new_ip }}:{{ new_port }}'",
+        "70│",
+        "71│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
+        "72│    add_host:",
+        "73│      hostname: '{{ new_ip }}'",
+        "74│      ansible_ssh_host: '{{ inventory_hostname }}'",
+        "75│      ansible_ssh_port: '{{ new_port }}'",
+        "76│",
+        "77│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
+        "78│    add_host:",
+        "79│      hostname: '{{ new_ip }}'",
+        "80│      ansible_host: '{{ inventory_hostname }}'",
+        "81│      ansible_port: '{{ new_port }}'",
+        "82│",
+        "83│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
+        "84│    add_host:",
+        "85│      hostname: charlie",
+        "86│      inventory_dir: '{{ inventory_dir }}'",
+        "87│",
+        "88│  - name: Add all hosts running this playbook to the done group",
+        "89│    add_host:",
+        "90│      name: '{{ item }}'",
+        "91│      groups: done",
+        "92│    loop: \"{{ ansible_play_hosts }}\"",
+        "93│full_name: ansible.builtin.add_host",
+        "94│metadata: null",
+        "95│returndocs: null",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+    ]
+}
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/18.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/18.json
index 442d6eb93..f39832507 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/18.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/18.json
@@ -4,18 +4,20 @@
     "comment": "Provide an invalid ee value",
     "additional_information": {
         "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
+            "Errors were encountered while parsing the last command"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "  NAME                         VERSION    SHADOWED     PATH",
-        "0│ansible.builtin              2.12.3        False     /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
-        "1│company_name.coll_1          1.0.0         False     FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2          2.0.0         False     FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_2",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "                                        WARNING",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                        Errors were encountered while parsing the last command.",
+        "                                        [ERROR]: Command provided: 'collections --ee FFFFF'",
+        "                                        [ERROR]: execution_environment could not be converted to a boolean value, value was 'FFFFF' (str)",
+        "                                        [ERROR]: execution-environment must be one of 'true' or 'false', but set as 'FFFFF' in Command line",
+        "                                         [HINT]: Try again with '--ee true' or '--ee false'",
+        "                                        ───────────────────────────────────────────────────────────────────────────────────────────────────",
+        "                                                                                                                                      Ok"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/19.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/19.json
index c7d6560d6..e5f2c0281 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/19.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/19.json
@@ -1,18 +1,21 @@
 {
-    "name": "test[19-:1-Browse company_name.coll_1 plugins window]",
+    "name": "test[19-Enter-ansible-navigator collections browse window]",
     "index": 19,
-    "comment": "Browse company_name.coll_1 plugins window",
+    "comment": "ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "  NAME                         VERSION    SHADOWED     PATH",
+        "0│ansible.builtin              2.12.3        False     /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
+        "1│company_name.coll_1          1.0.0         False     FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2          2.0.0         False     FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/20.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/20.json
index b5823b0fb..03cd9aca5 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/20.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/20.json
@@ -1,58 +1,18 @@
 {
-    "name": "test[20-:0-lookup_1 plugin docs window]",
+    "name": "test[20-:1-Browse company_name.coll_1 plugins window]",
     "index": 20,
-    "comment": "lookup_1 plugin docs window",
+    "comment": "Browse company_name.coll_1 plugins window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
-        " 0│---",
-        " 1│additional_information: {}",
-        " 2│collection_info:",
-        " 3│  authors:",
-        " 4│  - Ansible team (ansible-navigator)",
-        " 5│  license_file: LICENSE",
-        " 6│  name: company_name.coll_1",
-        " 7│  namespace: company_name",
-        " 8│  path: FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
-        " 9│  readme: README.md",
-        "10│  shadowed_by: []",
-        "11│  version: 1.0.0",
-        "12│doc:",
-        "13│  author: test",
-        "14│  description:",
-        "15│  - This is test lookup plugin",
-        "16│  name: lookup_1",
-        "17│  notes:",
-        "18│  - This is a dummy lookup plugin",
-        "19│  options:",
-        "20│    bar:",
-        "21│      default: candidate",
-        "22│      description:",
-        "23│      - Dummy option I(bar)",
-        "24│      type: str",
-        "25│    foo:",
-        "26│      description:",
-        "27│      - Dummy option I(foo)",
-        "28│      required: true",
-        "29│      type: str",
-        "30│  plugin_type: lookup",
-        "31│  short_description: This is test lookup plugin",
-        "32│  version_added: 1.0.0",
-        "33│  version_added_collection: company_name.coll_1",
-        "34│examples: |-",
-        "35│  - name: Retrieve a value deep inside a using a path",
-        "36│        ansible.builtin.set_fact:",
-        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
-        "38│full_name: company_name.coll_1.lookup_1",
-        "39│metadata: null",
-        "40│returndocs:",
-        "41│  _raw:",
-        "42│    description:",
-        "43│    - One or more zero-based indices of the matching list items.",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/21.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/21.json
index ce2544178..18381542b 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/21.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/21.json
@@ -1,18 +1,58 @@
 {
-    "name": "test[21-:back-Back to browse company_name.coll_1 plugins window]",
+    "name": "test[21-:0-lookup_1 plugin docs window]",
     "index": 21,
-    "comment": "Back to browse company_name.coll_1 plugins window",
+    "comment": "lookup_1 plugin docs window",
     "additional_information": {
         "present": [],
         "absent": [],
         "compared_fixture": true
     },
     "output": [
-        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
-        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
-        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
-        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
-        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
-        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
+        "COMPANY_NAME.COLL_1.LOOKUP_1: This is test lookup plugin",
+        " 0│---",
+        " 1│additional_information: {}",
+        " 2│collection_info:",
+        " 3│  authors:",
+        " 4│  - Ansible team (ansible-navigator)",
+        " 5│  license_file: LICENSE",
+        " 6│  name: company_name.coll_1",
+        " 7│  namespace: company_name",
+        " 8│  path: FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
+        " 9│  readme: README.md",
+        "10│  shadowed_by: []",
+        "11│  version: 1.0.0",
+        "12│doc:",
+        "13│  author: test",
+        "14│  description:",
+        "15│  - This is test lookup plugin",
+        "16│  name: lookup_1",
+        "17│  notes:",
+        "18│  - This is a dummy lookup plugin",
+        "19│  options:",
+        "20│    bar:",
+        "21│      default: candidate",
+        "22│      description:",
+        "23│      - Dummy option I(bar)",
+        "24│      type: str",
+        "25│    foo:",
+        "26│      description:",
+        "27│      - Dummy option I(foo)",
+        "28│      required: true",
+        "29│      type: str",
+        "30│  plugin_type: lookup",
+        "31│  short_description: This is test lookup plugin",
+        "32│  version_added: 1.0.0",
+        "33│  version_added_collection: company_name.coll_1",
+        "34│examples: |-",
+        "35│  - name: Retrieve a value deep inside a using a path",
+        "36│        ansible.builtin.set_fact:",
+        "37│          value: \"{{ lookup('company_name.coll_1.lookup_1', var1, var2) }}\"",
+        "38│full_name: company_name.coll_1.lookup_1",
+        "39│metadata: null",
+        "40│returndocs:",
+        "41│  _raw:",
+        "42│    description:",
+        "43│    - One or more zero-based indices of the matching list items.",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/22.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/22.json
index 249f16956..ca44f34d1 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/22.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/22.json
@@ -1,21 +1,18 @@
 {
-    "name": "test[22-:back-Back to ansible-navigator collections browse window]",
+    "name": "test[22-:back-Back to browse company_name.coll_1 plugins window]",
     "index": 22,
-    "comment": "Back to ansible-navigator collections browse window",
+    "comment": "Back to browse company_name.coll_1 plugins window",
     "additional_information": {
-        "present": [
-            "ansible.builtin",
-            "company_name.coll_1",
-            "company_name.coll_2"
-        ],
+        "present": [],
         "absent": [],
-        "compared_fixture": false
+        "compared_fixture": true
     },
     "output": [
-        "  NAME                         VERSION    SHADOWED     PATH",
-        "0│ansible.builtin              2.12.3        False     /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
-        "1│company_name.coll_1          1.0.0         False     FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
-        "2│company_name.coll_2          2.0.0         False     FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_2",
+        "  COMPANY NAME.COLL 1                                   TYPE               ADDED                 DEPRECATED                    DESCRIPTION",
+        "0│lookup_1                                              lookup             1.0.0                 False                         This is test lookup plugin",
+        "1│mod_1                                                 module             1.0.0                 False                         This is a test module",
+        "2│role_full                                             role               Unknown               Unknown                       Complete sample role.",
+        "3│role_minimum                                          role               Unknown               Unknown                       Minimal sample role.",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/23.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/23.json
index b7c4d00b2..7fb6324c2 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/23.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/23.json
@@ -1,140 +1,21 @@
 {
-    "name": "test[23-:0-Browse ansible.builtin plugins window]",
+    "name": "test[23-:back-Back to ansible-navigator collections browse window]",
     "index": 23,
-    "comment": "Browse ansible.builtin plugins window",
+    "comment": "Back to ansible-navigator collections browse window",
     "additional_information": {
-        "present": [],
+        "present": [
+            "ansible.builtin",
+            "company_name.coll_1",
+            "company_name.coll_2"
+        ],
         "absent": [],
-        "compared_fixture": true
+        "compared_fixture": false
     },
     "output": [
-        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
-        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
-        "  2│apt                          module        0.0.2         False         Manages apt-packages",
-        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
-        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
-        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
-        "  6│assert                       module        1.5           False         Asserts given expressions are true",
-        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
-        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
-        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
-        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
-        " 11│command                      module        historical    False         Execute commands on targets",
-        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
-        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
-        " 14│copy                         module        historical    False         Copy files to remote locations",
-        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
-        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
-        " 17│debconf                      module        1.6           False         Configure a .deb package",
-        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
-        " 19│debug                        module        0.8           False         Print statements during execution",
-        " 20│default                      callback      historical    False         default Ansible screen output",
-        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
-        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
-        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
-        " 24│env                          lookup        0.9           False         Read the value of environment variables",
-        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
-        " 26│fail                         module        0.8           False         Fail with custom message",
-        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
-        " 28│file                         lookup        0.9           False         read file contents",
-        " 29│file                         module        historical    False         Manage files and file properties",
-        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
-        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
-        " 32│first_found                  lookup        historical    False         return first file found from list",
-        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
-        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
-        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
-        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
-        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
-        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
-        " 39│group                        module        0.0.2         False         Add or remove groups",
-        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
-        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
-        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
-        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
-        " 44│hostname                     module        1.4           False         Manage hostname",
-        " 45│import_playbook              module        2.4           False         Import a playbook",
-        " 46│import_role                  module        2.4           False         Import a role into a play",
-        " 47│import_tasks                 module        2.4           False         Import a task list",
-        " 48│include                      module        0.6           False         Include a play or task list",
-        " 49│include_role                 module        2.2           False         Load and execute a role",
-        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
-        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
-        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
-        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
-        " 54│ini                          lookup        2.0           False         read data from a ini file",
-        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
-        " 56│iptables                     module        2.0           False         Modify iptables rules",
-        " 57│items                        lookup        historical    False         list of items",
-        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
-        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
-        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
-        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
-        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
-        " 63│lines                        lookup        0.9           False         read lines from command",
-        " 64│list                         lookup        2.0           False         simply returns what it is given.",
-        " 65│local                        connection    historical    False         execute on controller",
-        " 66│memory                       cache         historical    False         RAM backed, non persistent",
-        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
-        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
-        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
-        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
-        " 71│package                      module          2.0         False         Generic OS package manager",
-        " 72│package_facts                module        2.5           False         Package information as facts",
-        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
-        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
-        " 75│pause                        module        0.8           False         Pause playbook execution",
-        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
-        " 77│pip                          module        0.7           False         Manages Python library dependencies",
-        " 78│pipe                         lookup        0.9           False         read output from a command",
-        " 79│powershell                   shell         historical    False         Windows PowerShell",
-        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
-        " 81│random_choice                lookup        1.1           False         return random element from list",
-        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
-        " 83│reboot                       module        2.7           False         Reboot a machine",
-        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
-        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
-        " 86│runas                        become        2.8           False         Run As user",
-        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
-        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
-        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
-        " 90│service                      module        0.1           False         Manage services",
-        " 91│service_facts                module        2.5           False         Return service state information as fact data",
-        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
-        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
-        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
-        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
-        " 96│shell                        module        0.2           False         Execute shell commands on targets",
-        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
-        " 98│ssh                          connection    historical    False         connect via SSH client binary",
-        " 99│stat                         module        1.3           False         Retrieve file or file system status",
-        "100│su                           become        2.8           False         Substitute User",
-        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
-        "102│subversion                   module        0.7           False         Deploys a subversion repository",
-        "103│sudo                         become        2.8           False         Substitute User DO",
-        "104│systemd                      module        2.2           False         Manage systemd units",
-        "105│sysvinit                     module        2.6           False         Manage SysV services.",
-        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
-        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
-        "108│template                     module        historical    False         Template a file out to a target host",
-        "109│together                     lookup        1.3           False         merges lists into synchronized list",
-        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
-        "111│tree                         callback      2.0           False         Save host events to files",
-        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
-        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
-        "114│uri                          module        1.1           False         Interacts with webservices",
-        "115│url                          lookup        1.9           False         return contents from URL",
-        "116│user                         module        0.2           False         Manage user accounts",
-        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
-        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
-        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
-        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
-        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
-        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
-        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
-        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
-        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "  NAME                         VERSION    SHADOWED     PATH",
+        "0│ansible.builtin              2.12.3        False     /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
+        "1│company_name.coll_1          1.0.0         False     FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_1",
+        "2│company_name.coll_2          2.0.0         False     FIXTURES_COLLECTION_DIR/test_welcome_interactive_noee.py/collections/ansible_collections/company_name/coll_2",
         "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/24.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/24.json
index 3f7901961..e15fc8710 100644
--- a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/24.json
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/24.json
@@ -1,170 +1,142 @@
 {
-    "name": "test[24-:0-Browse ansible.builtin.add_host module]",
+    "name": "test[24-:0-Browse ansible.builtin plugins window]",
     "index": 24,
-    "comment": "Browse ansible.builtin.add_host module",
+    "comment": "Browse ansible.builtin plugins window",
     "additional_information": {
         "present": [
-            "ANSIBLE.BUILTIN.ADD_HOST"
+            "yum_repository"
         ],
         "absent": [],
         "compared_fixture": false
     },
     "output": [
-        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
-        "  0│---",
-        "  1│additional_information: {}",
-        "  2│collection_info:",
-        "  3│  name: ansible.builtin",
-        "  4│  path: /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
-        "  5│  shadowed_by: []",
-        "  6│  version: 2.12.3",
-        "  7│doc:",
-        "  8│  attributes:",
-        "  9│    action:",
-        " 10│      description: Indicates this has a corresponding action plugin so some parts",
-        " 11│        of the options can be executed on the controller",
-        " 12│      support: full",
-        " 13│    async:",
-        " 14│      description: Supports being used with the C(async) keyword",
-        " 15│      support: none",
-        " 16│    become:",
-        " 17│      description: Is usable alongside become keywords",
-        " 18│      support: none",
-        " 19│    bypass_host_loop:",
-        " 20│      description:",
-        " 21│      - Forces a 'global' task that does not execute per host, this bypasses per host",
-        " 22│        templating and serial, throttle and other loop considerations",
-        " 23│      - Conditionals will work as if C(run_once) is being used, variables used will",
-        " 24│        be from the first available host",
-        " 25│      - This action will not work normally outside of lockstep strategies",
-        " 26│      support: full",
-        " 27│    bypass_task_loop:",
-        " 28│      description: These tasks ignore the C(loop) and C(with_) keywords",
-        " 29│      support: none",
-        " 30│    check_mode:",
-        " 31│      description: Can run in check_mode and return changed status prediction withought",
-        " 32│        modifying target",
-        " 33│      details: While this makes no changes to target systems the 'in memory' inventory",
-        " 34│        will still be altered",
-        " 35│      support: partial",
-        " 36│    connection:",
-        " 37│      description: Uses the target's configured connection information to execute",
-        " 38│        code on it",
-        " 39│      support: none",
-        " 40│    core:",
-        " 41│      description: This is a 'core engine' feature and is not implemented like most",
-        " 42│        task actions, so it is not overridable in any way via the plugin system.",
-        " 43│      details: While parts of this action are implemented in core, other parts are",
-        " 44│        still available as normal plugins and can be partially overridden",
-        " 45│      support: partial",
-        " 46│    delegation:",
-        " 47│      description: Can be used in conjunction with delegate_to and related keywords",
-        " 48│      support: none",
-        " 49│    diff_mode:",
-        " 50│      description: Will return details on what has changed (or possibly needs changing",
-        " 51│        in check_mode), when in diff mode",
-        " 52│      support: none",
-        " 53│    ignore_conditional:",
-        " 54│      description: The action is not subject to conditional execution so it will ignore",
-        " 55│        the C(when:) keyword",
-        " 56│      support: none",
-        " 57│    platform:",
-        " 58│      description: Target OS/families that can be operated against",
-        " 59│      platforms: all",
-        " 60│      support: N/A",
-        " 61│    tags:",
-        " 62│      description: Allows for the 'tags' keyword to control the selection of this",
-        " 63│        action for execution",
-        " 64│      support: full",
-        " 65│    until:",
-        " 66│      description: Denotes if this action objeys until/retry/poll keywords",
-        " 67│      support: full",
-        " 68│  author:",
-        " 69│  - Ansible Core Team",
-        " 70│  - Seth Vidal (@skvidal)",
-        " 71│  description:",
-        " 72│  - Use variables to create new hosts and groups in inventory for use in later plays",
-        " 73│    of the same playbook.",
-        " 74│  - Takes variables so you can define the new hosts more fully.",
-        " 75│  - This module is also supported for Windows targets.",
-        " 76│  module: add_host",
-        " 77│  notes:",
-        " 78│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
-        " 79│    newer.",
-        " 80│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
-        " 81│    of the 'global inventory source', because you can now have multiple sources.  An",
-        " 82│    example was added that shows how to partially restore the previous behaviour.",
-        " 83│  - Though this module does not change the remote host, we do provide 'changed' status",
-        " 84│    as it can be useful for those trying to track inventory changes.",
-        " 85│  - The hosts added will not bypass the C(--limit) from the command line, so both",
-        " 86│    of those need to be in agreement to make them available as play targets. They",
-        " 87│    are still available from hostvars and for delegation as a normal part of the inventory.",
-        " 88│  options:",
-        " 89│    groups:",
-        " 90│      aliases:",
-        " 91│      - group",
-        " 92│      - groupname",
-        " 93│      description:",
-        " 94│      - The groups to add the hostname to.",
-        " 95│      type: list",
-        " 96│    name:",
-        " 97│      aliases:",
-        " 98│      - host",
-        " 99│      - hostname",
-        "100│      description:",
-        "101│      - The hostname/ip of the host to add to the inventory, can include a colon and",
-        "102│        a port number.",
-        "103│      required: true",
-        "104│      type: str",
-        "105│  seealso:",
-        "106│  - module: ansible.builtin.group_by",
-        "107│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
-        "108│    in-memory inventory",
-        "109│  version_added: '0.9'",
-        "110│  version_added_collection: ansible.builtin",
-        "111│examples: |-",
-        "112│  - name: Add host to group 'just_created' with variable foo=42",
-        "113│    add_host:",
-        "114│      name: '{{ ip_from_ec2 }}'",
-        "115│      groups: just_created",
-        "116│      foo: 42",
-        "117│",
-        "118│  - name: Add host to multiple groups",
-        "119│    add_host:",
-        "120│      hostname: '{{ new_ip }}'",
-        "121│      groups:",
-        "122│      - group1",
-        "123│      - group2",
-        "124│",
-        "125│  - name: Add a host with a non-standard port local to your machines",
-        "126│    add_host:",
-        "127│      name: '{{ new_ip }}:{{ new_port }}'",
-        "128│",
-        "129│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
-        "130│    add_host:",
-        "131│      hostname: '{{ new_ip }}'",
-        "132│      ansible_ssh_host: '{{ inventory_hostname }}'",
-        "133│      ansible_ssh_port: '{{ new_port }}'",
-        "134│",
-        "135│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
-        "136│    add_host:",
-        "137│      hostname: '{{ new_ip }}'",
-        "138│      ansible_host: '{{ inventory_hostname }}'",
-        "139│      ansible_port: '{{ new_port }}'",
-        "140│",
-        "141│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
-        "142│    add_host:",
-        "143│      hostname: charlie",
-        "144│      inventory_dir: '{{ inventory_dir }}'",
-        "145│",
-        "146│  - name: Add all hosts running this playbook to the done group",
-        "147│    add_host:",
-        "148│      name: '{{ item }}'",
-        "149│      groups: done",
-        "150│    loop: \"{{ ansible_play_hosts }}\"",
-        "151│full_name: ansible.builtin.add_host",
-        "152│metadata: null",
-        "153│returndocs: null",
-        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+        "    ANSIBLE.BUILTIN              TYPE          ADDED         DEPRECATED    DESCRIPTION",
+        "  0│add_host                     module        0.9           False         Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        "  1│advanced_host_list           inventory     2.4           False         Parses a 'host list' with ranges",
+        "  2│apt                          module        0.0.2         False         Manages apt-packages",
+        "  3│apt_key                      module        1.0           False         Add or remove an apt key",
+        "  4│apt_repository               module        0.7           False         Add and remove APT repositories",
+        "  5│assemble                     module        0.5           False         Assemble configuration files from fragments",
+        "  6│assert                       module        1.5           False         Asserts given expressions are true",
+        "  7│async_status                 module        0.5           False         Obtain status of asynchronous task",
+        "  8│auto                         inventory     2.5           False         Loads and executes an inventory plugin specified in a YAML config",
+        "  9│blockinfile                  module        2.0           False         Insert/update/remove a text block surrounded by marker lines",
+        " 10│cmd                          shell         2.8           False         Windows Command Prompt",
+        " 11│command                      module        historical    False         Execute commands on targets",
+        " 12│config                       lookup        2.5           False         Lookup current Ansible configuration values",
+        " 13│constructed                  inventory     2.4           False         Uses Jinja2 to construct vars and groups based on existing inventory.",
+        " 14│copy                         module        historical    False         Copy files to remote locations",
+        " 15│cron                         module        0.9           False         Manage cron.d and crontab entries",
+        " 16│csvfile                      lookup        1.5           False         read data from a TSV or CSV file",
+        " 17│debconf                      module        1.6           False         Configure a .deb package",
+        " 18│debug                        strategy      2.1           False         Executes tasks in interactive debug session.",
+        " 19│debug                        module        0.8           False         Print statements during execution",
+        " 20│default                      callback      historical    False         default Ansible screen output",
+        " 21│dict                         lookup        1.5           False         returns key/value pair items from dictionaries",
+        " 22│dnf                          module          1.9         False         Manages packages with the I(dnf) package manager",
+        " 23│dpkg_selections              module        2.0           False         Dpkg package selection selections",
+        " 24│env                          lookup        0.9           False         Read the value of environment variables",
+        " 25│expect                       module        2.0           False         Executes a command and responds to prompts",
+        " 26│fail                         module        0.8           False         Fail with custom message",
+        " 27│fetch                        module        0.2           False         Fetch files from remote nodes",
+        " 28│file                         lookup        0.9           False         read file contents",
+        " 29│file                         module        historical    False         Manage files and file properties",
+        " 30│fileglob                     lookup        1.4           False         list files matching a pattern",
+        " 31│find                         module        2.0           False         Return a list of files based on specific criteria",
+        " 32│first_found                  lookup        historical    False         return first file found from list",
+        " 33│free                         strategy      2.0           False         Executes tasks without waiting for all hosts",
+        " 34│gather_facts                 module          2.8         False         Gathers facts about remote hosts",
+        " 35│generator                    inventory     2.6           False         Uses Jinja2 to construct hosts and groups from patterns",
+        " 36│get_url                      module        0.6           False         Downloads files from HTTP, HTTPS, or FTP to node",
+        " 37│getent                       module        1.8           False         A wrapper to the unix getent utility",
+        " 38│git                          module        0.0.1         False         Deploy software (or files) from git checkouts",
+        " 39│group                        module        0.0.2         False         Add or remove groups",
+        " 40│group_by                     module        0.9           False         Create Ansible groups based on facts",
+        " 41│host_group_vars              vars          2.4           False         In charge of loading group_vars and host_vars",
+        " 42│host_list                    inventory     2.4           False         Parses a 'host list' string",
+        " 43│host_pinned                  strategy      2.7           False         Executes tasks on each host without interruption",
+        " 44│hostname                     module        1.4           False         Manage hostname",
+        " 45│import_playbook              module        2.4           False         Import a playbook",
+        " 46│import_role                  module        2.4           False         Import a role into a play",
+        " 47│import_tasks                 module        2.4           False         Import a task list",
+        " 48│include                      module        0.6           False         Include a play or task list",
+        " 49│include_role                 module        2.2           False         Load and execute a role",
+        " 50│include_tasks                module        2.4           False         Dynamically include a task list",
+        " 51│include_vars                 module        1.4           False         Load variables from files, dynamically within a task",
+        " 52│indexed_items                lookup        1.3           False         rewrites lists to return 'indexed items'",
+        " 53│ini                          inventory     2.4           False         Uses an Ansible INI file as inventory source.",
+        " 54│ini                          lookup        2.0           False         read data from a ini file",
+        " 55│inventory_hostnames          lookup        1.3           False         list of inventory hosts matching a host pattern",
+        " 56│iptables                     module        2.0           False         Modify iptables rules",
+        " 57│items                        lookup        historical    False         list of items",
+        " 58│jsonfile                     cache         1.9           False         JSON formatted files.",
+        " 59│junit                        callback      historical    False         write playbook output to a JUnit file.",
+        " 60│known_hosts                  module        1.9           False         Add or remove a host from the C(known_hosts) file",
+        " 61│linear                       strategy      2.0           False         Executes tasks in a linear fashion",
+        " 62│lineinfile                   module        0.7           False         Manage lines in text files",
+        " 63│lines                        lookup        0.9           False         read lines from command",
+        " 64│list                         lookup        2.0           False         simply returns what it is given.",
+        " 65│local                        connection    historical    False         execute on controller",
+        " 66│memory                       cache         historical    False         RAM backed, non persistent",
+        " 67│meta                         module        1.2           False         Execute Ansible 'actions'",
+        " 68│minimal                      callback      historical    False         minimal Ansible screen output",
+        " 69│nested                       lookup        1.1           False         composes a list with nested elements of other lists",
+        " 70│oneline                      callback      historical    False         oneline Ansible screen output",
+        " 71│package                      module          2.0         False         Generic OS package manager",
+        " 72│package_facts                module        2.5           False         Package information as facts",
+        " 73│paramiko                     connection    0.1           False         Run tasks via python ssh (paramiko)",
+        " 74│password                     lookup        1.1           False         retrieve or generate a random password, stored in a file",
+        " 75│pause                        module        0.8           False         Pause playbook execution",
+        " 76│ping                         module        historical    False         Try to connect to host, verify a usable python and return C(pong) on success",
+        " 77│pip                          module        0.7           False         Manages Python library dependencies",
+        " 78│pipe                         lookup        0.9           False         read output from a command",
+        " 79│powershell                   shell         historical    False         Windows PowerShell",
+        " 80│psrp                         connection    2.7           False         Run tasks over Microsoft PowerShell Remoting Protocol",
+        " 81│random_choice                lookup        1.1           False         return random element from list",
+        " 82│raw                          module        historical    False         Executes a low-down and dirty command",
+        " 83│reboot                       module        2.7           False         Reboot a machine",
+        " 84│replace                      module        1.6           False         Replace all instances of a particular string in a file using a back-referenced regular expression",
+        " 85│rpm_key                      module        1.3           False         Adds or removes a gpg key from the rpm db",
+        " 86│runas                        become        2.8           False         Run As user",
+        " 87│script                       inventory     2.4           False         Executes an inventory script that returns JSON",
+        " 88│script                       module        0.9           False         Runs a local script on a remote node after transferring it",
+        " 89│sequence                     lookup        1.0           False         generate a list based on a number sequence",
+        " 90│service                      module        0.1           False         Manage services",
+        " 91│service_facts                module        2.5           False         Return service state information as fact data",
+        " 92│set_fact                     module        1.2           False         Set host variable(s) and fact(s).",
+        " 93│set_stats                    module        2.3           False         Define and display stats for the current ansible run",
+        " 94│setup                        module        historical    False         Gathers facts about remote hosts",
+        " 95│sh                           shell         historical    False         POSIX shell (/bin/sh)",
+        " 96│shell                        module        0.2           False         Execute shell commands on targets",
+        " 97│slurp                        module        historical    False         Slurps a file from remote nodes",
+        " 98│ssh                          connection    historical    False         connect via SSH client binary",
+        " 99│stat                         module        1.3           False         Retrieve file or file system status",
+        "100│su                           become        2.8           False         Substitute User",
+        "101│subelements                  lookup        1.4           False         traverse nested key from a list of dictionaries",
+        "102│subversion                   module        0.7           False         Deploys a subversion repository",
+        "103│sudo                         become        2.8           False         Substitute User DO",
+        "104│systemd                      module        2.2           False         Manage systemd units",
+        "105│sysvinit                     module        2.6           False         Manage SysV services.",
+        "106│tempfile                     module        2.3           False         Creates temporary files and directories",
+        "107│template                     lookup        0.9           False         retrieve contents of file after templating with Jinja2",
+        "108│template                     module        historical    False         Template a file out to a target host",
+        "109│together                     lookup        1.3           False         merges lists into synchronized list",
+        "110│toml                         inventory     2.8           False         Uses a specific TOML file as an inventory source.",
+        "111│tree                         callback      2.0           False         Save host events to files",
+        "112│unarchive                    module        1.4           False         Unpacks an archive after (optionally) copying it from the local machine",
+        "113│unvault                      lookup        2.10          False         read vaulted file(s) contents",
+        "114│uri                          module        1.1           False         Interacts with webservices",
+        "115│url                          lookup        1.9           False         return contents from URL",
+        "116│user                         module        0.2           False         Manage user accounts",
+        "117│validate_argument_spec       module        2.11          False         Validate role argument specs.",
+        "118│varnames                     lookup        2.8           False         Lookup matching variable names",
+        "119│vars                         lookup        2.5           False         Lookup templated value of variables",
+        "120│wait_for                     module        0.7           False         Waits for a condition before continuing",
+        "121│wait_for_connection          module        2.3           False         Waits until remote system is reachable/usable",
+        "122│winrm                        connection    2.0           False         Run tasks over Microsoft's WinRM",
+        "123│yaml                         inventory     2.4           False         Uses a specific YAML file as an inventory source.",
+        "124│yum                          module        historical    False         Manages packages with the I(yum) package manager",
+        "125│yum_repository               module        2.1           False         Add or remove YUM repositories",
+        "^f/PgUp page up                     ^b/PgDn page down                     ↑↓ scroll                     esc back                     [0-9] goto                     :help help"
     ]
 }
diff --git a/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/25.json b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/25.json
new file mode 100644
index 000000000..24fc6ec5d
--- /dev/null
+++ b/tests/fixtures/integration/actions/collections/test_welcome_interactive_noee.py/test/25.json
@@ -0,0 +1,170 @@
+{
+    "name": "test[25-:0-Browse ansible.builtin.add_host module]",
+    "index": 25,
+    "comment": "Browse ansible.builtin.add_host module",
+    "additional_information": {
+        "present": [
+            "ANSIBLE.BUILTIN.ADD_HOST"
+        ],
+        "absent": [],
+        "compared_fixture": false
+    },
+    "output": [
+        "ANSIBLE.BUILTIN.ADD_HOST: Add a host (and alternatively a group) to the ansible-playbook in-memory inventory",
+        "  0│---",
+        "  1│additional_information: {}",
+        "  2│collection_info:",
+        "  3│  name: ansible.builtin",
+        "  4│  path: /home/user/github/ansible-navigator/venv/lib64/python3.10/site-packages/ansible",
+        "  5│  shadowed_by: []",
+        "  6│  version: 2.12.3",
+        "  7│doc:",
+        "  8│  attributes:",
+        "  9│    action:",
+        " 10│      description: Indicates this has a corresponding action plugin so some parts",
+        " 11│        of the options can be executed on the controller",
+        " 12│      support: full",
+        " 13│    async:",
+        " 14│      description: Supports being used with the C(async) keyword",
+        " 15│      support: none",
+        " 16│    become:",
+        " 17│      description: Is usable alongside become keywords",
+        " 18│      support: none",
+        " 19│    bypass_host_loop:",
+        " 20│      description:",
+        " 21│      - Forces a 'global' task that does not execute per host, this bypasses per host",
+        " 22│        templating and serial, throttle and other loop considerations",
+        " 23│      - Conditionals will work as if C(run_once) is being used, variables used will",
+        " 24│        be from the first available host",
+        " 25│      - This action will not work normally outside of lockstep strategies",
+        " 26│      support: full",
+        " 27│    bypass_task_loop:",
+        " 28│      description: These tasks ignore the C(loop) and C(with_) keywords",
+        " 29│      support: none",
+        " 30│    check_mode:",
+        " 31│      description: Can run in check_mode and return changed status prediction withought",
+        " 32│        modifying target",
+        " 33│      details: While this makes no changes to target systems the 'in memory' inventory",
+        " 34│        will still be altered",
+        " 35│      support: partial",
+        " 36│    connection:",
+        " 37│      description: Uses the target's configured connection information to execute",
+        " 38│        code on it",
+        " 39│      support: none",
+        " 40│    core:",
+        " 41│      description: This is a 'core engine' feature and is not implemented like most",
+        " 42│        task actions, so it is not overridable in any way via the plugin system.",
+        " 43│      details: While parts of this action are implemented in core, other parts are",
+        " 44│        still available as normal plugins and can be partially overridden",
+        " 45│      support: partial",
+        " 46│    delegation:",
+        " 47│      description: Can be used in conjunction with delegate_to and related keywords",
+        " 48│      support: none",
+        " 49│    diff_mode:",
+        " 50│      description: Will return details on what has changed (or possibly needs changing",
+        " 51│        in check_mode), when in diff mode",
+        " 52│      support: none",
+        " 53│    ignore_conditional:",
+        " 54│      description: The action is not subject to conditional execution so it will ignore",
+        " 55│        the C(when:) keyword",
+        " 56│      support: none",
+        " 57│    platform:",
+        " 58│      description: Target OS/families that can be operated against",
+        " 59│      platforms: all",
+        " 60│      support: N/A",
+        " 61│    tags:",
+        " 62│      description: Allows for the 'tags' keyword to control the selection of this",
+        " 63│        action for execution",
+        " 64│      support: full",
+        " 65│    until:",
+        " 66│      description: Denotes if this action objeys until/retry/poll keywords",
+        " 67│      support: full",
+        " 68│  author:",
+        " 69│  - Ansible Core Team",
+        " 70│  - Seth Vidal (@skvidal)",
+        " 71│  description:",
+        " 72│  - Use variables to create new hosts and groups in inventory for use in later plays",
+        " 73│    of the same playbook.",
+        " 74│  - Takes variables so you can define the new hosts more fully.",
+        " 75│  - This module is also supported for Windows targets.",
+        " 76│  module: add_host",
+        " 77│  notes:",
+        " 78│  - The alias C(host) of the parameter C(name) is only available on Ansible 2.4 and",
+        " 79│    newer.",
+        " 80│  - Since Ansible 2.4, the C(inventory_dir) variable is now set to C(None) instead",
+        " 81│    of the 'global inventory source', because you can now have multiple sources.  An",
+        " 82│    example was added that shows how to partially restore the previous behaviour.",
+        " 83│  - Though this module does not change the remote host, we do provide 'changed' status",
+        " 84│    as it can be useful for those trying to track inventory changes.",
+        " 85│  - The hosts added will not bypass the C(--limit) from the command line, so both",
+        " 86│    of those need to be in agreement to make them available as play targets. They",
+        " 87│    are still available from hostvars and for delegation as a normal part of the inventory.",
+        " 88│  options:",
+        " 89│    groups:",
+        " 90│      aliases:",
+        " 91│      - group",
+        " 92│      - groupname",
+        " 93│      description:",
+        " 94│      - The groups to add the hostname to.",
+        " 95│      type: list",
+        " 96│    name:",
+        " 97│      aliases:",
+        " 98│      - host",
+        " 99│      - hostname",
+        "100│      description:",
+        "101│      - The hostname/ip of the host to add to the inventory, can include a colon and",
+        "102│        a port number.",
+        "103│      required: true",
+        "104│      type: str",
+        "105│  seealso:",
+        "106│  - module: ansible.builtin.group_by",
+        "107│  short_description: Add a host (and alternatively a group) to the ansible-playbook",
+        "108│    in-memory inventory",
+        "109│  version_added: '0.9'",
+        "110│  version_added_collection: ansible.builtin",
+        "111│examples: |-",
+        "112│  - name: Add host to group 'just_created' with variable foo=42",
+        "113│    add_host:",
+        "114│      name: '{{ ip_from_ec2 }}'",
+        "115│      groups: just_created",
+        "116│      foo: 42",
+        "117│",
+        "118│  - name: Add host to multiple groups",
+        "119│    add_host:",
+        "120│      hostname: '{{ new_ip }}'",
+        "121│      groups:",
+        "122│      - group1",
+        "123│      - group2",
+        "124│",
+        "125│  - name: Add a host with a non-standard port local to your machines",
+        "126│    add_host:",
+        "127│      name: '{{ new_ip }}:{{ new_port }}'",
+        "128│",
+        "129│  - name: Add a host alias that we reach through a tunnel (Ansible 1.9 and older)",
+        "130│    add_host:",
+        "131│      hostname: '{{ new_ip }}'",
+        "132│      ansible_ssh_host: '{{ inventory_hostname }}'",
+        "133│      ansible_ssh_port: '{{ new_port }}'",
+        "134│",
+        "135│  - name: Add a host alias that we reach through a tunnel (Ansible 2.0 and newer)",
+        "136│    add_host:",
+        "137│      hostname: '{{ new_ip }}'",
+        "138│      ansible_host: '{{ inventory_hostname }}'",
+        "139│      ansible_port: '{{ new_port }}'",
+        "140│",
+        "141│  - name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre Ansible 2.4 behaviour)",
+        "142│    add_host:",
+        "143│      hostname: charlie",
+        "144│      inventory_dir: '{{ inventory_dir }}'",
+        "145│",
+        "146│  - name: Add all hosts running this playbook to the done group",
+        "147│    add_host:",
+        "148│      name: '{{ item }}'",
+        "149│      groups: done",
+        "150│    loop: \"{{ ansible_play_hosts }}\"",
+        "151│full_name: ansible.builtin.add_host",
+        "152│metadata: null",
+        "153│returndocs: null",
+        "^f/PgUp page up              ^b/PgDn page down              ↑↓ scroll              esc back              - previous              + next              [0-9] goto              :help help"
+    ]
+}
diff --git a/tests/integration/_interactions.py b/tests/integration/_interactions.py
index c4e4f9005..ed626ee2e 100644
--- a/tests/integration/_interactions.py
+++ b/tests/integration/_interactions.py
@@ -14,6 +14,7 @@ class SearchFor(Enum):
 
     HELP = "search for help"
     PROMPT = "search for the shell prompt"
+    WARNING = "search for a blocking warning notification"
 
 
 class Command(NamedTuple):
diff --git a/tests/integration/actions/collections/base.py b/tests/integration/actions/collections/base.py
index 32efdbc86..fbb4b89c9 100644
--- a/tests/integration/actions/collections/base.py
+++ b/tests/integration/actions/collections/base.py
@@ -47,6 +47,13 @@
     UiTestStep(
         user_input=":collections --ee FFFFF",
         comment="Provide an invalid ee value",
+        present=["Errors were encountered while parsing the last command"],
+        search_within_response=SearchFor.WARNING,
+    ),
+    # Dismiss the warning
+    UiTestStep(
+        user_input="Enter",
+        comment="ansible-navigator collections browse window",
         present=EXPECTED_COLLECTIONS,
     ),
     # and repeat some basic browsing
@@ -131,6 +138,8 @@ def test(
             search_within_response = ":help help"
         elif step.search_within_response is SearchFor.PROMPT:
             search_within_response = tmux_session.cli_prompt
+        elif step.search_within_response is SearchFor.WARNING:
+            search_within_response = "WARNING"
         else:
             raise ValueError("test mode not set")
 
diff --git a/tests/integration/actions/config/base.py b/tests/integration/actions/config/base.py
index 8e8e7305c..0f461f39d 100644
--- a/tests/integration/actions/config/base.py
+++ b/tests/integration/actions/config/base.py
@@ -65,6 +65,8 @@ def test(self, request, tmux_session, step):
             search_within_response = ":help help"
         elif step.search_within_response is SearchFor.PROMPT:
             search_within_response = tmux_session.cli_prompt
+        elif step.search_within_response is SearchFor.WARNING:
+            search_within_response = "WARNING"
         else:
             raise ValueError("test mode not set")
 
diff --git a/tests/integration/actions/images/base.py b/tests/integration/actions/images/base.py
index 8f12ada97..1267d375e 100644
--- a/tests/integration/actions/images/base.py
+++ b/tests/integration/actions/images/base.py
@@ -61,6 +61,8 @@ def test(self, request, tmux_session, step):
             search_within_response = ":help help"
         elif step.search_within_response is SearchFor.PROMPT:
             search_within_response = tmux_session.cli_prompt
+        elif step.search_within_response is SearchFor.WARNING:
+            search_within_response = "WARNING"
         else:
             raise ValueError("test mode not set")
 
diff --git a/tests/integration/actions/inventory/base.py b/tests/integration/actions/inventory/base.py
index 7c3ef5cea..1fc8bc48b 100644
--- a/tests/integration/actions/inventory/base.py
+++ b/tests/integration/actions/inventory/base.py
@@ -82,6 +82,8 @@ def test(self, request, tmux_session, step):
             search_within_response = ":help help"
         elif step.search_within_response is SearchFor.PROMPT:
             search_within_response = tmux_session.cli_prompt
+        elif step.search_within_response is SearchFor.WARNING:
+            search_within_response = "WARNING"
         else:
             raise ValueError("test mode not set")
 
diff --git a/tests/integration/actions/run/base.py b/tests/integration/actions/run/base.py
index 231ad76a2..16cdc940a 100644
--- a/tests/integration/actions/run/base.py
+++ b/tests/integration/actions/run/base.py
@@ -67,6 +67,8 @@ def test(self, request, tmux_session, step):
             search_within_response = ":help help"
         elif step.search_within_response is SearchFor.PROMPT:
             search_within_response = tmux_session.cli_prompt
+        elif step.search_within_response is SearchFor.WARNING:
+            search_within_response = "WARNING"
         else:
             search_within_response = step.search_within_response
 
diff --git a/tests/integration/actions/run_unicode/base.py b/tests/integration/actions/run_unicode/base.py
index 7f9730fdc..12501895f 100644
--- a/tests/integration/actions/run_unicode/base.py
+++ b/tests/integration/actions/run_unicode/base.py
@@ -77,6 +77,8 @@ def test(
             search_within_response = ":help help"
         elif step.search_within_response is SearchFor.PROMPT:
             search_within_response = tmux_session.cli_prompt
+        elif step.search_within_response is SearchFor.WARNING:
+            search_within_response = "WARNING"
         else:
             search_within_response = step.search_within_response
 
diff --git a/tests/integration/actions/settings/base.py b/tests/integration/actions/settings/base.py
index 712df1617..234e6ab8f 100644
--- a/tests/integration/actions/settings/base.py
+++ b/tests/integration/actions/settings/base.py
@@ -76,6 +76,8 @@ def test(self, request, tmux_session, step):
             search_within_response = ":help help"
         elif step.search_within_response is SearchFor.PROMPT:
             search_within_response = tmux_session.cli_prompt
+        elif step.search_within_response is SearchFor.WARNING:
+            search_within_response = "WARNING"
         else:
             raise ValueError("test mode not set")
 
diff --git a/tests/integration/actions/templar/base.py b/tests/integration/actions/templar/base.py
index 801448028..4aa06b387 100644
--- a/tests/integration/actions/templar/base.py
+++ b/tests/integration/actions/templar/base.py
@@ -88,6 +88,8 @@ def test(self, request, tmux_session, step):
             search_within_response = ":help help"
         elif step.search_within_response is SearchFor.PROMPT:
             search_within_response = tmux_session.cli_prompt
+        elif step.search_within_response is SearchFor.WARNING:
+            search_within_response = "WARNING"
         else:
             search_within_response = step.search_within_response