diff --git a/src/channels/plugins/onboarding/signal.ts b/src/channels/plugins/onboarding/signal.ts index d75577ad1..e702e29e8 100644 --- a/src/channels/plugins/onboarding/signal.ts +++ b/src/channels/plugins/onboarding/signal.ts @@ -235,12 +235,20 @@ export const signalOnboardingAdapter: ChannelOnboardingAdapter = { } if (!account) { - account = String( + const rawAccount = String( await prompter.text({ message: "Signal bot number (E.164)", - validate: (value) => (value?.trim() ? undefined : "Required"), + validate: (value) => { + const trimmed = value?.trim(); + if (!trimmed) return "Required"; + if (!normalizeE164(trimmed)) { + return "Invalid E.164 phone number (must start with + and country code, e.g. +15555550123)"; + } + return undefined; + }, }), ).trim(); + account = normalizeE164(rawAccount) ?? rawAccount; } if (account) {