plandex-ai/plandex · error
error prompting email: %v
Error message
error prompting email: %v
What it means
promptSignInNewAccount wraps a failure from term.GetRequiredUserStringInput for the email prompt as 'error prompting email: %v'. It occurs only on the 'Another host' path (local mode hardcodes local-admin@plandex.ai). This is a client-side input failure, not an API error.
Source
Thrown at app/cli/auth/account.go:173
if selected == SignInLocalOption {
host, err = term.GetRequiredUserStringInputWithDefault("Host:", "http://localhost:8099")
} else {
host, err = term.GetRequiredUserStringInput("Host:")
}
if err != nil {
return fmt.Errorf("error prompting host: %v", err)
}
if selected == SignInLocalOption {
email = "local-admin@plandex.ai"
} else {
email, err = term.GetRequiredUserStringInput("Your email:")
}
if err != nil {
return fmt.Errorf("error prompting email: %v", err)
}
res, err := verifyEmail(email, host)
if err != nil {
return fmt.Errorf("error verifying email: %v", err)
}
if res.hasAccount {
err := signIn(email, res.pin, host)
if err != nil {
return fmt.Errorf("error signing in: %v", err)
}
} else {
err := createAccount(email, res.pin, host, res.isLocalMode)
if err != nil {
return fmt.Errorf("error creating account: %v", err)
}View on GitHub (pinned to e2d772072e)
Solutions
- Type a valid email address at the 'Your email:' prompt instead of submitting empty input.
- Run the command in an interactive terminal.
- If you intended local mode, select 'Local mode host' — the email is then set automatically.
- Abort and re-run to restart the sign-in flow cleanly if the prompt state is stuck.
Example fix
// before Your email: (empty) // after Your email: user@example.com
Defensive patterns
Strategy: validation
Validate before calling
// validate email format before the flow so the required-input prompt is answered correctly
email := "user@example.com"
if !strings.Contains(email, "@") || strings.TrimSpace(email) == "" {
return fmt.Errorf("invalid email %q", email)
} Try / catch
email, err := term.GetRequiredUserStringInput("Your email:")
if err != nil {
return fmt.Errorf("email prompt failed (%v); choose 'Local mode host' to skip the email prompt", err)
} Prevention
- Have the email ready before starting sign-in.
- Choose 'Local mode host' when applicable — the email is set to local-admin@plandex.ai automatically.
- Run interactively; empty input on a required prompt is always an error.
- Re-run the flow if you abort the prompt rather than retrying mid-prompt.
When it happens
Trigger: term.GetRequiredUserStringInput("Your email:") returns an error: empty input on a required prompt, stdin not interactive, or the user cancels the prompt.
Common situations: Non-interactive shells/CI without a TTY; user presses Enter without typing an email; prompt aborted with Ctrl-C.
Related errors
- error prompting host: %v
- error selecting or signing in to account: %v
- error selecting sign in option: %v
- error prompting pin: %v
- error confirming update and rebuild: %v
AI-assisted analysis of plandex-ai/plandex@e2d772072e (2026-09-05).
Data as JSON: /api/errors/474897fde7e2abdf.
Report an issue: GitHub.