code: func Get(program ProgramFunc, serverURL string) (*credentials.Credentials, error) {
  	cmd := program("get")
  	cmd.Input(strings.NewReader(serverURL))
  
  	out, err := cmd.Output()
  	if err != nil {
  		t := strings.TrimSpace(string(out))
  
  		if credentials.IsErrCredentialsNotFoundMessage(t) {
  			return nil, credentials.NewErrCredentialsNotFound()
  		}
  
  		if isValidErr := isValidCredsMessage(t); isValidErr != nil {
  			err = isValidErr
  		}
  
  		return nil, fmt.Errorf("error getting credentials - err: %v, out: `%s`", err, t)
  	}
  
  	resp := &credentials.Credentials{
  		ServerURL: serverURL,
  	}
  
  	if err := json.NewDecoder(bytes.NewReader(out)).Decode(resp); err != nil {
  		return nil, err
  	}
  
  	return resp, nil
  }
docs: // Get executes an external program to get the credentials from a native store.