# File lib/travis/cli/login.rb, line 43
      def github
        @github ||= begin
          load_gh
          Tools::Github.new(session.config['github']) do |g|
            g.note          = "temporary token to identify with the travis command line client against #{api_endpoint}"
            g.manual_login  = no_manual.nil?
            g.explode       = explode?
            g.github_token  = github_token
            g.auto_token    = auto_token
            g.auto_password = auto_password
            g.github_login  = user_login
            g.check_token   = !skip_token_check?
            g.drop_token    = true
            g.ask_login     = proc { ask("Username: ") }
            g.ask_password  = proc { |user| ask("Password for #{user}: ") { |q| q.echo = "*" } }
            g.ask_otp       = proc { |user| ask("Two-factor authentication code for #{user}: ") }
            g.login_header  = proc { login_header }
            g.debug         = proc { |log| debug(log) }
            g.after_tokens  = proc { g.explode = true and error("no suitable github token found") }
          end
        end
      end