It turns out to be very simple:
var prompt = 'My fancy prompt >>> ';
rl.setPrompt(chalk.blue(prompt), prompt.length);
You need to specify the count of characters because readline
doesn't understand that escape sequences are really displayed as zero width.
(This is based on Felix's answer.)