diff --git a/.gitignore b/.gitignore
index 600d2d3..4148add 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,3 @@
-.vscode
\ No newline at end of file
+.vscode
+history/
+to_history/
\ No newline at end of file
diff --git a/INDEX.md b/INDEX.md
new file mode 100644
index 0000000..b4fc490
--- /dev/null
+++ b/INDEX.md
@@ -0,0 +1,33 @@
+# Índice del proyecto: prompts
+
+## Propósito del proyecto
+Compilación de prompts, scripts y herramientas reutilizables para tareas recurrentes, organizados por tema. Cada directorio de tema contiene un archivo `CATALOG.md` con el inventario y la descripción de los prompts disponibles.
+
+## Convenciones
+
+### Formatos
+Los prompts pueden existir en múltiples formatos equivalentes dentro de sus subdirectorios (`txt/`, `xml/`, `json/`, `md/`). Para transformar entre formatos, usar `utils/transformar_txt_to_xml.txt`.
+
+### Estados
+Cada prompt incluye al inicio la línea `[ESTADO: LISTO | BORRADOR | DEPRECADO]`. Si no aparece, el estado por defecto es `BORRADOR`. Solo ejecutar prompts con estado `LISTO` salvo indicación explícita del usuario.
+
+---
+
+## Directorios de temas
+
+| Directorio | Descripción |
+|---|---|
+| `chats/` | Prompts para consumo en interfaces de chat LLM o como base para agentes |
+| `git/` | Prompts para tareas relacionadas con el sistema de control de versiones Git |
+| `project_manage_prompts/` | Prompts para la gestión interna del proyecto (ejecuciones no rastreadas en Git) |
+| `utils/` | Prompts de utilidad para transformaciones y operaciones dentro del proyecto |
+
+---
+
+## Directorios auxiliares
+
+| Directorio | Descripción |
+|---|---|
+| `guides/` | Recursos de referencia para el desarrollador (no contiene prompts ni `CATALOG.md`) |
+| `history/` | Historial de ejecuciones y reportes — excluido de Git, gestionado por `project__manage_prompts/` |
+| `to_history/` | Buffer de staging hacia `/history` — excluido de Git |
diff --git a/chats/CATALOG.md b/chats/CATALOG.md
new file mode 100644
index 0000000..76370a3
--- /dev/null
+++ b/chats/CATALOG.md
@@ -0,0 +1,14 @@
+# Catálogo: chats/
+
+## Propósito
+Prompts diseñados para consumo directo en interfaces de chat LLM o como instrucciones base para agentes.
+
+## Inventario
+
+| Nombre base | Estado | Descripción | Formatos disponibles |
+|---|---|---|---|
+| refinar_prompt | LISTO | Analiza, califica y mejora un prompt proporcionado por el usuario | txt, xml |
+
+## Notas de uso
+- Antes de ejecutar `refinar_prompt`, colocar el prompt a refinar entre los delimitadores `=== INICIO PROMPT SECUNDARIO ===` / `=== FIN PROMPT SECUNDARIO ===`.
+- Usar `../utils/transformar_txt_to_xml.txt` para generar versiones en otros formatos a partir del `txt/` canónico.
diff --git a/chats/refinar_prompt.txt b/chats/txt/refinar_prompt.txt
similarity index 99%
rename from chats/refinar_prompt.txt
rename to chats/txt/refinar_prompt.txt
index a44ed41..ebb8d6b 100644
--- a/chats/refinar_prompt.txt
+++ b/chats/txt/refinar_prompt.txt
@@ -1,3 +1,6 @@
+[ESTADOS: LISTO]
+
+
[ROLES]
# Tu rol
diff --git a/chats/xml/refinar_prompt.xml b/chats/xml/refinar_prompt.xml
new file mode 100644
index 0000000..514f9da
--- /dev/null
+++ b/chats/xml/refinar_prompt.xml
@@ -0,0 +1,90 @@
+
+
+ LISTO
+
+
+
+ Eres un profesional experto en la industria tecnológica, especializado en inteligencia artificial generativa, con amplia experiencia en proyectos de desarrollo de software.
+
+ Soy un desarrollador backend con experiencia práctica en Python, Linux, SQL, Git y Docker, con participación en proyectos desde su planeación hasta su despliegue, pero sin especialización profunda en ningún área o tecnología en particular.
+
+
+
+
+
+ Este prompt (denominado "prompt primario") contiene embebido un texto escrito por una persona al que llamaremos "prompt secundario". Tu tarea consiste en analizar el prompt secundario siguiendo estrictamente las instrucciones del prompt primario y producir como resultado un prompt mejorado denominado "prompt resultante", además de evaluar y calificar el prompt secundario.
+
+
+
+
+
+
+ === INICIO PROMPT SECUNDARIO ===
+ === FIN PROMPT SECUNDARIO ===
+
+
+
+
+
+ - Queda estrictamente prohibido alucinar: no inventes información, referencias, datos, ejemplos ni instrucciones que no estén fundamentadas.
+ - Prioriza el rigor y la precisión del análisis por encima de la cordialidad hacia el usuario.
+ - No agregues secciones, estructuras ni instrucciones nuevas al prompt resultante a menos que sean estrictamente necesarias para subsanar ambigüedades críticas detectadas durante el análisis.
+ - Conserva el idioma original del prompt secundario en el prompt resultante.
+
+
+
+
+ Ejecuta los siguientes pasos en orden y sin omitir ninguno:
+
+ Evalúa si el prompt secundario es suficientemente claro para ser procesado. Si detectas ambigüedades críticas o falta de información que impidan ejecutar correctamente el prompt primario, detente aquí y solicita al usuario la información faltante antes de continuar.
+
+ Identifica el idioma del prompt secundario. El prompt resultante debe estar escrito en ese mismo idioma.
+
+ Corrige todos los errores ortográficos presentes en el prompt secundario.
+
+ Mejora la redacción para que sea clara, precisa y sin ambigüedades, sin alterar la intención original del autor.
+
+ Identifica la intención del prompt secundario, su estructura, sus fortalezas y sus debilidades técnicas como instrucción para un LLM.
+
+
+ Asigna una calificación numérica del 1 al 10 al prompt secundario basándote en los siguientes criterios:
+ - Claridad de instrucciones
+ - Ausencia de ambigüedades
+ - Especificidad
+ - Viabilidad de ejecución por un LLM
+ - Calidad de redacción
+ Justifica brevemente la calificación.
+
+
+ Refina y haz explícitas las instrucciones del prompt secundario para que un LLM las interprete de forma inequívoca, realizando únicamente los cambios mínimos necesarios para preservar la estructura y la intención original del autor.
+
+ Produce el prompt resultante con los cambios aplicados en los pasos anteriores.
+
+
+
+
+
+ Responde con dos elementos diferenciados:
+
+
+ Escribe directamente en la conversación un resumen breve y conciso que incluya:
+ - Calificación asignada al prompt secundario (número y criterio base de la puntuación)
+ - Observaciones principales detectadas (máximo 5 puntos concretos)
+ - Lista resumida de los cambios aplicados al generar el prompt resultante
+
+
+
+ - Primera opción (preferida): Escribe el prompt resultante en un archivo de texto plano.
+ - Segunda opción (solo si no tienes capacidad de generar archivos): Escribe el prompt resultante al final de la respuesta como un bloque de texto sin formato, usando comillas simples al inicio y al final del bloque (sin ningún otro delimitador, símbolo Markdown ni etiqueta) para que la interfaz no interprete su contenido.
+
+
+
+
+
+ La ejecución del prompt primario se considera exitosa cuando:
+ - El resumen en la interfaz de usuario incluye la calificación del prompt secundario con su justificación y las observaciones y cambios realizados.
+ - El prompt resultante está disponible en un archivo de texto plano o, en caso de no ser posible, escrito como texto plano al final de la respuesta sin ningún tipo de formato interpretable.
+ - El prompt resultante es notablemente más claro y explícito que el prompt secundario para un LLM, manteniendo la estructura y la intención original del autor.
+
+
+
\ No newline at end of file
diff --git a/git/CATALOG.md b/git/CATALOG.md
new file mode 100644
index 0000000..05648cf
--- /dev/null
+++ b/git/CATALOG.md
@@ -0,0 +1,16 @@
+# Catálogo: git/
+
+## Propósito
+Prompts para tareas relacionadas con el sistema de control de versiones Git: configuración, flujos de trabajo y generación de archivos de soporte.
+
+## Inventario
+
+| Nombre base | Estado | Descripción | Formatos disponibles |
+|---|---|---|---|
+| prompt_git_base | BORRADOR | Estructura base para prompts de tareas Git genéricas | txt, md, xml, json |
+| prompt_gitconfig | BORRADOR | Prompt para asistir en la configuración de `.gitconfig` | md |
+| prompt_gitignore | BORRADOR | Prompt para generar un archivo `.gitignore` personalizado | md |
+
+## Notas de uso
+- Todos los prompts de este directorio están en estado `BORRADOR` y no son funcionales aún.
+- `prompt_git_base` puede usarse como plantilla estructural para crear nuevos prompts de Git.
diff --git a/git/json/prompt_git_base.json b/git/json/prompt_git_base.json
index 544b7b4..bd91ce3 100644
--- a/git/json/prompt_git_base.json
+++ b/git/json/prompt_git_base.json
@@ -1,3 +1,3 @@
{
-
+ "ESTADO": "BORRADOR"
}
\ No newline at end of file
diff --git a/git/md/prompt_git_base.md b/git/md/prompt_git_base.md
index af6f665..fa86390 100644
--- a/git/md/prompt_git_base.md
+++ b/git/md/prompt_git_base.md
@@ -1,3 +1,6 @@
+# Estado: BORRADOR
+
+
# Roles
## Tu rol
diff --git a/git/md/prompt_gitconfig.md b/git/md/prompt_gitconfig.md
index e69de29..96c21b3 100644
--- a/git/md/prompt_gitconfig.md
+++ b/git/md/prompt_gitconfig.md
@@ -0,0 +1 @@
+# Estado: BORRADOR
\ No newline at end of file
diff --git a/git/md/prompt_gitignore.md b/git/md/prompt_gitignore.md
index e69de29..96c21b3 100644
--- a/git/md/prompt_gitignore.md
+++ b/git/md/prompt_gitignore.md
@@ -0,0 +1 @@
+# Estado: BORRADOR
\ No newline at end of file
diff --git a/git/txt/prompt_git_base.txt b/git/txt/prompt_git_base.txt
index e69de29..6ae147d 100644
--- a/git/txt/prompt_git_base.txt
+++ b/git/txt/prompt_git_base.txt
@@ -0,0 +1 @@
+[ESTADOS: BORRADOR]
\ No newline at end of file
diff --git a/git/xml/prompt_git_base.xml b/git/xml/prompt_git_base.xml
index 104e707..8271cf6 100644
--- a/git/xml/prompt_git_base.xml
+++ b/git/xml/prompt_git_base.xml
@@ -1,2 +1,5 @@
+
+ BORRADOR
+
\ No newline at end of file
diff --git a/anatomia_prompt_eficiente.svg b/guides/anatomia_prompt_eficiente.svg
similarity index 100%
rename from anatomia_prompt_eficiente.svg
rename to guides/anatomia_prompt_eficiente.svg
diff --git a/project_manage_prompts/CATALOG.md b/project_manage_prompts/CATALOG.md
new file mode 100644
index 0000000..85f5eae
--- /dev/null
+++ b/project_manage_prompts/CATALOG.md
@@ -0,0 +1,14 @@
+# Catálogo: project__manage_prompts/
+
+## Propósito
+Prompts para la gestión interna del proyecto. Sus ejecuciones producen cambios locales no rastreados por Git, como mover archivos al historial.
+
+## Inventario
+
+| Nombre base | Estado | Descripción | Formatos disponibles |
+|---|---|---|---|
+| update_history | LISTO | Mueve archivos válidos de `/to_history` a `/history/{rama}_{fecha}`. Incluye análisis de seguridad de los archivos a mover. | txt |
+
+## Notas de uso
+- Ejecutar con un agente de código que tenga permisos para correr comandos de shell.
+- Los directorios `/to_history` y `/history` están excluidos de Git (ver `.gitignore`).
diff --git a/project_manage_prompts/txt/update_history.txt b/project_manage_prompts/txt/update_history.txt
new file mode 100644
index 0000000..e4f879e
--- /dev/null
+++ b/project_manage_prompts/txt/update_history.txt
@@ -0,0 +1,96 @@
+[ESTADO: LISTO]
+
+
+[ROLES]
+
+# Tu rol
+Eres un profesional experto en la industria tecnológica, especializado en inteligencia artificial generativa, con amplia experiencia en proyectos de desarrollo de software.
+
+# Mi rol
+Soy un desarrollador backend con experiencia práctica en Python, Linux, SQL, Git y Docker, con participación en proyectos desde su planeación hasta su despliegue, pero sin especialización profunda en ningún área o tecnología en particular.
+
+
+[CONTEXTO]
+
+# Propósito
+Este prompt (denominado "prompt primario") tiene como finalidad actualizar el directorio /history del proyecto principal. Dicho directorio no debe recibir seguimiento mediante Git, ya que su propósito es llevar un historial de reportes útiles para la retroalimentación de cada desarrollador, pero puede crecer de forma desmedida, así como variar dependiendo de si existe un fork. El prompt primario está pensado para ejecutarse a través de un asistente o agente de código, ya que debe ejecutar comandos.
+
+# Ruta base del proyecto
+Todos los directorios mencionados en este prompt (/to_history, /history) son relativos a la raíz del proyecto. Antes de ejecutar cualquier paso, establece como directorio de trabajo la raíz del proyecto. Si no puedes determinarlo con certeza, detén la ejecución y notifícalo al usuario.
+
+
+[DATOS DE ENTRADA]
+
+# Branch actual
+El nombre de la branch se obtendrá mediante comandos en el Paso 1 y se utilizará en los pasos posteriores.
+
+# Archivos válidos para mover desde /to_history
+Se procesarán únicamente los archivos del directorio /to_history que cumplan ambas condiciones:
+1. Su tamaño no supere 1 MB.
+2. Su extensión corresponda a alguna de las siguientes categorías:
+ - Texto plano: .txt, .dat, .csv, .tex, entre otras extensiones de texto plano.
+ - Hojas de cálculo: .xlsx
+ - Documentos de texto: .doc
+ - Imágenes: .png, .svg, .jpeg, entre otras extensiones de imagen comunes.
+
+Los archivos que no cumplan alguna de estas condiciones no deben ser movidos ni eliminados.
+
+
+[RESTRICCIONES]
+* Queda estrictamente prohibido alucinar: no inventes información, referencias, datos, ejemplos ni instrucciones que no estén fundamentadas en este prompt o en los resultados reales de los comandos ejecutados.
+* Prioriza la seguridad antes que el cumplimiento de la tarea: ante cualquier duda de seguridad, detén la ejecución y notifica al usuario.
+* No muevas, modifiques ni elimines archivos fuera de los directorios /to_history y /history.
+
+
+[PASOS A SEGUIR]
+
+Ejecuta los siguientes pasos en orden, sin omitir ninguno.
+
+Paso 1 — Obtener nombre de la branch (nombre_rama):
+ a. Ejecuta "git status" para verificar si el directorio base está inicializado como repositorio Git.
+ b. Si está inicializado, obtén el nombre de la branch actual ejecutando "git branch --show-current".
+ Como alternativa, si el comando anterior no devuelve resultado, usa "git rev-parse --abbrev-ref HEAD".
+ c. Si el directorio no está inicializado como repositorio Git, usa el valor "no_branch" como nombre_rama.
+ d. Valida que el nombre obtenido sea compatible con nombres de directorios en Linux/Unix y Windows:
+ - Reemplaza espacios en blanco, caracteres especiales no permitidos, emojis, letras con tilde y la letra "ñ" por el carácter "_".
+ - Si el nombre resultante comienza con un carácter no válido para nombres de directorio, agrega el prefijo "branch_".
+ e. El valor resultante de este paso se denominará nombre_rama.
+
+Paso 2 — Obtener la fecha actual (fecha):
+ Obtén la fecha del día actual en formato yyyy_mm_dd. Este valor se denominará fecha.
+
+Paso 3 — Análisis de seguridad de /to_history:
+ Analiza todos los archivos presentes en el directorio /to_history. Para cada archivo, considera sospechoso aquel que cumpla al menos uno de los siguientes criterios:
+ - Tiene una extensión ejecutable o de script (.exe, .sh, .bat, .py, .js, .php, .ps1, .bin, entre otras), independientemente de si también tiene una extensión válida como sufijo adicional.
+ - Su nombre está ofuscado (por ejemplo, con caracteres de control, caracteres Unicode inusuales o una extensión que no coincide con su tipo MIME real, si puedes determinarlo).
+ - Su tamaño es exactamente 0 bytes.
+ - Contiene en su nombre rutas de directorio relativas o absolutas (por ejemplo, "../", "/etc/").
+ Si detectas al menos un archivo sospechoso, detén la ejecución inmediatamente, lista los archivos sospechosos encontrados con el motivo de sospecha de cada uno, y no realices ninguna acción adicional sobre el sistema de archivos.
+
+Paso 4 — Crear la carpeta de destino en /history:
+ Construye el nombre de la carpeta de destino como: {nombre_rama}_{fecha}
+ Crea dicha carpeta dentro del directorio /history si no existe, utilizando el comando:
+ mkdir -p history/{nombre_rama}_{fecha}
+ o su equivalente en Windows si corresponde.
+
+Paso 5 — Mover los archivos válidos de /to_history a la carpeta de destino:
+ Mueve a la carpeta history/{nombre_rama}_{fecha} todos los archivos del directorio /to_history que cumplan las condiciones definidas en [DATOS DE ENTRADA] (tamaño menor o igual a 1 MB y extensión válida).
+ Los archivos que no cumplan dichas condiciones deben permanecer en /to_history sin ser modificados.
+ Si ocurre un error al mover algún archivo, regístralo e incluye el detalle en el resumen del Paso 6, pero continúa con los archivos restantes.
+
+Paso 6 — Mostrar resumen:
+ Presenta en la salida estándar un resumen breve y concreto que incluya:
+ - El valor de nombre_rama utilizado.
+ - El valor de fecha utilizado.
+ - La ruta de la carpeta de destino creada o utilizada.
+ - La lista de archivos movidos exitosamente.
+ - La lista de archivos omitidos (con el motivo: tamaño excedido, extensión no válida u otro).
+ - Cualquier error ocurrido durante la ejecución.
+
+
+[CRITERIO DE ÉXITO]
+
+La ejecución del prompt primario se considera exitosa cuando:
+* El análisis de seguridad del Paso 3 no haya detectado archivos sospechosos.
+* Los archivos válidos de /to_history se hayan movido a la carpeta history/{nombre_rama}_{fecha}.
+* Se muestre el resumen descrito en el Paso 6 en la interfaz de usuario.
\ No newline at end of file
diff --git a/start_prompt.txt b/start_prompt.txt
new file mode 100644
index 0000000..39c646a
--- /dev/null
+++ b/start_prompt.txt
@@ -0,0 +1,55 @@
+[ESTADO: BORRADOR]
+
+
+[ROLES]
+
+# Tu rol
+Eres un profesional experto en la industria tecnológica, especializado en inteligencia artificial generativa, con amplia experiencia en proyectos de desarrollo de software y en gestión de proyectos tecnológicos.
+
+# Mi rol
+Soy un desarrollador backend con experiencia práctica en Python, Linux, SQL, Git y Docker, con participación en proyectos desde su planeación hasta su despliegue, pero sin especialización profunda en ningún área o tecnología en particular.
+
+
+[CONTEXTO]
+Este proyecto es una compilación de prompts, scripts y diferentes herramientas con el propósito de reutilizar tareas. Los prompts se organizan por temas en subdirectorios del directorio base. Dentro de cada tema existe un archivo de catálogo (`CATALOG.md`) que sintetiza su contenido y propósito. También hay directorios con otros propósitos, como `/guides`.
+
+
+[ESTADOS]
+
+Cada prompt incluye al inicio la línea `[ESTADO: LISTO | BORRADOR | DEPRECADO]`.
+Si no aparece la línea de estado, el estado por defecto es `BORRADOR`.
+Los prompts con estado `DEPRECADO` no deben ejecutarse a menos que el usuario lo indique explícitamente.
+
+
+[RESTRICCIONES]
+* Queda estrictamente prohibido alucinar: no inventes información, referencias, datos, ejemplos ni instrucciones que no estén fundamentadas.
+* No debe ejecutarse ningún archivo que no se especifique en INDEX.md, que no esté en un directorio administrado por el agente o que no aporte información necesaria para el proyecto.
+* Los prompts con estado `BORRADOR` o `DEPRECADO` no deben ejecutarse salvo indicación explícita del usuario.
+
+
+[PASOS A SEGUIR]
+
+Ejecuta los siguientes pasos en orden y sin omitir ninguno:
+
+1. Análisis de viabilidad: Evalúa si el prompt es suficientemente claro para ser procesado. Si detectas ambigüedades críticas o falta de información que impidan ejecutar el prompt, detente aquí y solicita al usuario la información faltante antes de continuar.
+
+2. Lee y analiza el archivo INDEX.md. Ignora los directorios que no se mencionen en él, a menos que el agente los requiera o aporten información necesaria para el proyecto. Los directorios `.git`, `.claude`, `.codex` y similares siempre deben ignorarse.
+
+3. Lee el archivo `CATALOG.md` de cada directorio de tema especificado en INDEX.md y comprende el propósito y el contenido de cada uno.
+
+
+[FORMATO DE SALIDA]
+
+Una vez completados los pasos anteriores, confirma al usuario en un párrafo breve:
+* Que comprendiste la estructura general del proyecto.
+* Los directorios de tema identificados y sus propósitos.
+* Los prompts con estado `LISTO` encontrados en los catálogos.
+* Que estás listo para recibir tareas.
+
+
+[CRITERIO DE ÉXITO]
+
+La ejecución del prompt primario se considera exitosa cuando:
+* Se comprendió la estructura y finalidad del proyecto.
+* Se leyeron los catálogos de todos los directorios de tema especificados en INDEX.md.
+* Se confirmó al usuario la estructura comprendida, incluyendo los prompts disponibles con estado `LISTO`.
diff --git a/utils/CATALOG.md b/utils/CATALOG.md
new file mode 100644
index 0000000..73b8454
--- /dev/null
+++ b/utils/CATALOG.md
@@ -0,0 +1,14 @@
+# Catálogo: utils/
+
+## Propósito
+Prompts de utilidad para operaciones internas del proyecto. Generan salidas relevantes para el flujo de trabajo del agente, como transformaciones de formato entre prompts.
+
+## Inventario
+
+| Nombre base | Estado | Descripción | Formatos disponibles |
+|---|---|---|---|
+| transformar_txt_to_xml | LISTO | Transforma un prompt entre formatos estructurados. Actualmente soporta el tipo `txt_to_xml`. Genera un archivo de evaluación de la transformación. | txt |
+
+## Notas de uso
+- Proporcionar en los datos de entrada: el prompt secundario, el tipo de transformación (`txt_to_xml`) y las reglas de mapeo opcionales.
+- La salida de evaluación se guarda en `to_history/` para ser procesada con `project__manage_prompts/txt/update_history.txt`.
diff --git a/utils/transformar_txt_to_xml.txt b/utils/transformar_txt_to_xml.txt
index 842c4b9..7058ed8 100644
--- a/utils/transformar_txt_to_xml.txt
+++ b/utils/transformar_txt_to_xml.txt
@@ -1,3 +1,6 @@
+[ESTADO: LISTO]
+
+
[ROLES]
# Tu rol
@@ -62,7 +65,26 @@ Ejecuta los siguientes pasos en orden y sin omitir ninguno:
4.5. Solo debe agregarse información que contribuya a hacer más entendible el prompt XML. Por ejemplo: una lista de tres elementos con numeración simple (1.1, 1.1.1, 1.2) no amerita anidación de etiquetas; es preferible representarla con un atributo tipo_lista="ordenada_con_anidacion". Sin embargo, cuando el número de elementos sea grande o la jerarquía sea compleja, el LLM deberá determinar si es más conveniente usar listas anidadas mediante etiquetas XML.
- Si el valor de "tipo transformacion" es distinto de "txt_to_xml", omite los subpasos 4.1 al 4.5 y continúa con el paso 5.
+ 4.6. Si el valor de "Reglas mapeo" no está vacío, aplica las reglas de mapeo indicadas con precedencia sobre los subpasos anteriores: realiza la asignación directa entre secciones o subsecciones del prompt de texto plano y etiquetas XML según lo que dichas reglas indiquen.
+
+ Por ejemplo, si las reglas de mapeo son:
+ "Mapea al mismo nivel de [ROLES] la información de # Mi rol con la etiqueta rol_para_subagente y agrega el atributo skills con los valores student y developer"
+
+ y el prompt de texto plano contiene:
+
+ [ROLES]
+
+ Aquí se especifican los roles
+
+ # Mi rol
+ Soy un estudiante
+
+ el resultado esperado es:
+
+ Aquí se especifican los roles
+ Soy un estudiante
+
+ Si el valor de "tipo transformacion" es distinto de "txt_to_xml", omite los subpasos 4.1 al 4.6 y continúa con el paso 5.
5. Evaluación: Determinar si, bajo la nueva estructura generada, la eficiencia del prompt mejora, es equivalente o se reduce respecto al prompt secundario original. Escribe un resumen muy breve del análisis directamente en la interfaz de usuario. El análisis detallado y argumentado debe guardarse en un archivo de texto plano con el nombre "evaluacion_transformacion.txt".