docs: def run(args, shell=False, exit=True):
      """
      Run the command ``args``.
  
      Automatically hides the secret GitHub token from the output.
  
      If shell=False (recommended for most commands), args should be a list of
      strings. If shell=True, args should be a string of the command to run.
  
      If exit=True, it exits on nonzero returncode. Otherwise it returns the
      returncode.
      """
      if "GH_TOKEN" in os.environ:
          token = get_token()
      else:
          token = b''
  
      if not shell:
          command = ' '.join(map(shlex.quote, args))
      else:
          command = args
      command = command.replace(token.decode('utf-8'), '~'*len(token))
      print(blue(command))
      sys.stdout.flush()
  
      returncode = run_command_hiding_token(args, token, shell=shell)
  
      if exit and returncode != 0:
          sys.exit(red("%s failed: %s" % (command, returncode)))
      return returncode