code: func (s *Session) Shell() error {
  	if s.started {
  		return errors.New("ssh: session already started")
  	}
  
  	ok, err := s.ch.SendRequest("shell", true, nil)
  	if err == nil && !ok {
  		return fmt.Errorf("ssh: cound not start shell")
  	}
  	if err != nil {
  		return err
  	}
  	return s.start()
  }
docs: // Shell starts a login shell on the remote host. A Session only
  // accepts one call to Run, Start, Shell, Output, or CombinedOutput.