From d08b9699189c37f9a17a41f62ebb02f165e4fa69 Mon Sep 17 00:00:00 2001 From: "jason.woltje" Date: Mon, 6 Apr 2026 00:33:54 +0000 Subject: [PATCH] fix(mosaic): mask password input in TUI login prompt (#449) --- packages/mosaic/src/cli.ts | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/packages/mosaic/src/cli.ts b/packages/mosaic/src/cli.ts index a40b47f..30efbdc 100644 --- a/packages/mosaic/src/cli.ts +++ b/packages/mosaic/src/cli.ts @@ -135,15 +135,11 @@ program // No valid session — prompt for credentials if (!session) { - const readline = await import('node:readline'); - const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); - const ask = (q: string): Promise => - new Promise((resolve) => rl.question(q, resolve)); + const { promptLine, promptSecret } = await import('./commands/gateway/login.js'); console.log(`Sign in to ${opts.gateway}`); - const email = await ask('Email: '); - const password = await ask('Password: '); - rl.close(); + const email = await promptLine('Email: '); + const password = await promptSecret('Password: '); try { const auth = await signIn(opts.gateway, email, password);