code: def ls(self, **kwargs):
      print_format = kwargs.get("format", "table")
      download = kwargs.get("download", None)
      download_path = kwargs.get("download_path", None)
      # Get all task meta information
      self.task_controller = TaskController()
      task_objs = self.task_controller.list(
          sort_key="created_at", sort_order="descending"
      )
      header_list = [
          "id",
          "command",
          "type",
          "status",
          "config",
          "results",
          "created at",
      ]
      item_dict_list = []
      run_obj_list = []
      for task_obj in task_objs:
          # Create a new Run Object from Task Object
          run_obj = Run(task_obj)
          task_results_printable = printable_object(run_obj.results)
          snapshot_config_printable = printable_object(run_obj.config)
          item_dict_list.append(
              {
                  "id": run_obj.id,
                  "command": run_obj.command,
                  "type": run_obj.type,
                  "status": run_obj.status,
                  "config": snapshot_config_printable,
                  "results": task_results_printable,
                  "created at": prettify_datetime(run_obj.created_at),
              }
          )
          run_obj_list.append(run_obj)
      if download:
          if not download_path:
              # download to current working directory with timestamp
              current_time = datetime.utcnow()
              epoch_time = datetime.utcfromtimestamp(0)
              current_time_unix_time_ms = (
                  current_time - epoch_time
              ).total_seconds() * 1000.0
              download_path = os.path.join(
                  os.getcwd(),
                  "run_ls_" + str(current_time_unix_time_ms),
              )
          self.cli_helper.print_items(
              header_list,
              item_dict_list,
              print_format=print_format,
              output_path=download_path,
          )
          return task_objs
      self.cli_helper.print_items(
          header_list, item_dict_list, print_format=print_format
      )
      return run_obj_list
  
imports: from __future__ import print_function
  import os
  import sys
  import shlex
  import platform
  from datetime import datetime
  from datmo.core.util.i18n import get
  from datmo.core.util.misc_functions import mutually_exclusive, printable_object
  from datmo.cli.command.project import ProjectCommand
  from datmo.core.controller.task import TaskController
  from datmo.core.controller.snapshot import SnapshotController
  from datmo.cli.driver.helper import Helper
  from datmo.core.entity.run import Run
  from datmo.core.util.exceptions import RequiredArgumentMissing
  from datmo.core.util.misc_functions import prettify_datetime
label_desc: Use image node_id 3 for calling the RunCommand obj's underlying member method code with example usage: obj.ls() and returns: run_obj_list, task_objs