class Inspec::Plugin::V2::PluginType::CliCommand

def self.register_with_thor

the the cli_command activator has been called
Register the command group with Thor. This must be called on the implementation class AFTER
def self.register_with_thor
  # Figure out my activator name (= subcommand group name)
  subcommand_name = Inspec::Plugin::V2::Registry.instance \
    .find_activators(plugin_type: :cli_command, implementation_class: self) \
    .first.activator_name.to_s
  # Register with Thor
  Inspec::InspecCLI.register(self, subcommand_name, @usage_msg, @desc_msg, {})
end

def self.subcommand_desc(usage_msg, desc_msg)

Provide a description for the command group.
def self.subcommand_desc(usage_msg, desc_msg)
  @usage_msg = usage_msg
  @desc_msg = desc_msg
end

def initialize(args, options, config)

initialize log options for plugins
def initialize(args, options, config)
  super(args, options, config)
  class_options = config.fetch(:class_options, nil)
  if class_options
    Inspec::Log.init(class_options["log_location"]) if class_options.key?("log_location")
    Inspec::Log.level = get_log_level(class_options["log_level"]) if class_options.key?("log_level")
  end
end