Oii, boa tarde. Há um pequeno problema com seu código.
O código está comparando uma string (o retorno de prompt()) com um número inteiro (o número secreto gerado). O prompt() retorna uma string, e a comparação == pode não funcionar conforme o esperado quando comparando tipos diferentes.
Para corrigir isso, você pode converter o valor retornado pelo prompt() para um número inteiro usando parseInt(), da mesma forma que fez para o número secreto.
alert('Boas vindas ao jogo do número secreto');
let numeroSecreto = parseInt(Math.random() * 100 + 1);
console.log(numeroSecreto);
let chute;
let tentativas = 1;
// enquanto chute não for igual do n.s
while(chute != numeroSecreto) {
chute = parseInt(prompt('Escolha um número entre 1 e 100'));
// se o chute for igual ao número secreto
if (chute == numeroSecreto) {
break;
} else {
if (chute > numeroSecreto) {
alert(`O número secreto é menor que ${chute}`);
} else {
alert(`O número secreto é maior que ${chute}`);
}
tentativas++;
}
}
let palavraTentativa = tentativas > 1 ? 'tentativas' : 'tentativa'
alert(`Isso aí! Você descobriu o número secreto ${numeroSecreto} com ${tentativas} ${palavraTentativa}.`);
Vê se dá certo, qualquer coisa estou à disposição.