Clasificador de tipos de incidencia de Jira
Agente de Jira que clasifica el tipo de problema correspondiente para cada problema en un proyecto determinado.
graph TD
%%{init: {'theme': 'mc','layout': 'elk'}}%%
ParseData-aice2[<div><img alt="logo" src="/_astro/braces.Djq0PW4_.svg" style="height: 20px !important;width: 20px !important"/></div>Parse Data]
style ParseData-aice2 stroke:#a170ff
Prompt-8pfns[<div><img alt="logo" src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>Prompt]
style Prompt-8pfns stroke:#a170ff
ChatOutput-zqoh9[<div><img alt="logo" src="/_astro/messages-square.BaSDmT6g.svg" style="height: 20px !important;width: 20px !important"/></div>Chat Output]
style ChatOutput-zqoh9 stroke:#a170ff
OpenAIModel-zu1vo[<div><img alt="logo" src="/_astro/openAI.BhmuxEs3.svg" style="height: 20px !important;width: 20px !important"/></div>OpenAI]
style OpenAIModel-zu1vo stroke:#a170ff
JiraReader-i2erv[List Issue Types]
style JiraReader-i2erv stroke:#a170ff
JiraIssueHandler-8ctxx[Update Subtask]
style JiraIssueHandler-8ctxx stroke:#a170ff
JiraIssueHandler-phklc[Update Issue]
style JiraIssueHandler-phklc stroke:#a170ff
JiraReader-3f3ut[Jira Reader]
style JiraReader-3f3ut stroke:#a170ff
AdvancedAgent-4g9ht[Agent2]
style AdvancedAgent-4g9ht stroke:#a170ff
ParseData-aice2 -.- Prompt-8pfns
linkStyle 0 stroke:#a170ff
JiraReader-3f3ut -.- ParseData-aice2
linkStyle 1 stroke:#a170ff
Prompt-8pfns -.- AdvancedAgent-4g9ht
linkStyle 2 stroke:#a170ff
AdvancedAgent-4g9ht -.- ChatOutput-zqoh9
linkStyle 3 stroke:#a170ff
OpenAIModel-zu1vo -.- AdvancedAgent-4g9ht
linkStyle 4 stroke:#a170ff
JiraIssueHandler-phklc -.- AdvancedAgent-4g9ht
linkStyle 5 stroke:#a170ff
JiraIssueHandler-8ctxx -.- AdvancedAgent-4g9ht
linkStyle 6 stroke:#a170ff
JiraReader-i2erv -.- AdvancedAgent-4g9ht
linkStyle 7 stroke:#a170ff
🧩 Descripción general
El flujo automatiza la clasificación de tipos de incidencias en un proyecto de Jira y la actualización de cada issue con el tipo correcto. El agente inteligente recibe la lista de issues, decide el tipo más adecuado para cada uno y utiliza los herramientas de Jira para actualizar los registros, mostrando al usuario la acción realizada.
⚙️ Funcionalidades principales
- Recopilación de incidencias desde Jira.
- Transformación de datos brutos a texto legible para el agente.
- Generación de un prompt que incluye la lista de issues y el objetivo de clasificación.
- Decisión autónoma mediante un modelo de lenguaje (OpenAI).
- Ejecución de herramientas de Jira para actualizar los tipos de issue y subtasks.
- Presentación del resultado en un formato de chat.
🔄 Pasos del flujo de trabajo
| Nombre del componente | Rol en el flujo | Entradas clave | Salidas clave |
|---|---|---|---|
| Leída de Jira (Jira Reader) | Obtiene la lista de issues del proyecto. | Project Key, Operation = List Issues |
Jira Response (datos de las incidencias) |
| Parse Data | Convierte los datos de Jira a texto estructurado. | Data (respuesta de Jira), Template (formato de salida) |
Text (texto con detalle de cada issue) |
| Prompt | Construye el mensaje que el agente procesará. | Issues List (texto generado por Parse Data) |
Prompt Message (mensaje completo para el agente) |
| Modelo de OpenAI | Proporciona el modelo de lenguaje que alimentará al agente. | N/A | Language Model (instancia de modelo) |
| Agente Avanzado | Interpreta el prompt, decide acciones y llama a las herramientas. | Prompt Message, Language Model, Tools (Jira Reader, Update Issue, Update Subtask) |
Response (mensaje de salida del agente) |
| Actualización de Subtask (Jira Issue Handler) | Modifica el tipo de una subtask en Jira. | Issue Key, Project Key, Issue Type Field, Modified Summary, Description, Priority, Assignee, Comment |
Jira Response (confirmación de actualización) |
| Actualización de Issue (Jira Issue Handler) | Modifica el tipo de un issue en Jira. | Issue Key, Project Key, Issue Type Field, Modified Summary, Description, Priority, Assignee, Comment |
Jira Response (confirmación de actualización) |
| Salida de Chat (Chat Output) | Muestra la respuesta del agente al usuario. | Input Value (mensaje del agente) |
Message (visualización en el chat) |
Nota: Los componentes de Label Component son meramente indicativos y no intervienen directamente en la lógica de negocio; se utilizan para mostrar descripciones al usuario.
🧠 Notas
- El flujo asume que el agente tiene acceso a las credenciales de Jira y OpenAI configuradas en la plataforma.
- Los operadores de Jira (Update Issue / Update Subtask) se exponen como tools al agente; el mismo decide en qué momento invocarlos según la lógica de clasificación.
- Si el agente no necesita actualizar ningún issue, el flujo finaliza con la visualización del mensaje en el chat.
- El modelo OpenAI se instancia con el nombre de modelo
gpt-4.1, pero puede cambiarse mediante la configuración delOpenAI Model. - La herramienta Parse Data permite especificar un template para formatear los datos; en este flujo se usa un esquema que incluye clave, resumen y descripción de cada issue.
- La gestión de memoria del agente está configurada para trim, lo que limita el número de mensajes retenidos a la conversación actual.
- La salida del agente puede incluir un esquema estructurado opcional, aunque en el flujo actual está desactivado (
use_structured_output = false).