Saca el código de una respuesta de la IA
Pega la respuesta entera, con la explicación incluida: aquí salen los archivos separados, con el nombre que ha dicho el modelo y la extensión correcta, uno a uno o todos en un .zip. Y los caracteres estropeados que impiden que el código arranque se encuentran y se corrigen. No sale nada de tu navegador.
También puedes arrastrar aquí un archivo de texto.
Por qué el código de la IA a veces no arranca
El modelo escribe comillas curvas en vez de las rectas, guiones largos en vez del doble menos de las opciones, y de vez en cuando cuela un espacio duro dentro de la sangría o un carácter de anchura cero en medio de una palabra. En un texto son detalles tipográficos; en el código el programa no arranca, y el error nunca dice «tienes una comilla curva en la línea 12»: dice algo incomprensible sobre un sitio equivocado. Aquí se cuentan por tipo y se corrigen, y está escrito cuántos y cuáles.
Dos interruptores, porque los dos casos no son iguales
Los invisibles (espacio duro, anchura cero, guion blando) en el código no son legítimos nunca: solo rompen, así que se corrigen de serie. Las comillas curvas y los guiones largos, en cambio, dentro de una cadena de texto pueden estar a propósito: si tu programa imprime una frase con comillas tipográficas, sustituirlas sería un destrozo. Por eso son un interruptor aparte, apagado, con la cuenta delante para que decidas tú.
El nombre del archivo, no «codigo1.txt»
El nombre el modelo casi siempre lo dice: en la línea anterior al bloque («src/app.js») o como comentario en la primera línea («// src/app.js»). De ahí se lee. Donde no lo hay, se mira el lenguaje escrito al lado de los acentos graves, y si tampoco está se deduce del contenido (un shebang, un <?php, un def, un JSON) para acertar al menos con la extensión. Y dos archivos no pueden acabar nunca con el mismo nombre dentro del .zip.
Cuando la respuesta está cortada, se dice
Si un bloque no se cierra nunca significa que el chat se ha parado a medias, y entregar medio archivo sin decir nada es la mejor manera de hacer perder una hora a quien lo use: el bloque se enseña igual, pero marcado. Y los bloques de comandos de terminal no son archivos que guardar, así que se llaman por lo que son, con una línea más si dentro hay un sudo, un rm -rf o una descarga que acaba directa en una shell: no es una alarma, es el dato, escrito antes de que lo pegues.
Lo que no hace
No ejecuta nada y no comprueba nada: recorta, pone nombre y corrige caracteres, y ya está. El texto de cada bloque es un trozo exacto de lo que has pegado mientras no enciendas una de las dos correcciones. Si de la respuesta lo que necesitas es el texto sin los asteriscos del markdown, está Quita markdown y caracteres invisibles; para ver qué te ha cambiado en un texto está Qué ha cambiado la IA.