在日常开发中,Jira是我们绕不开的项目管理工具。但不知道你有没有这样的痛点:

  • 操作繁琐: 创建一个任务,要填一堆字段,点N次下拉框。

  • 信息隔离: 任务相关的需求文档、API说明散落在Confluence、Git等各处,查起来费时费力。

  • 状态滞后: 任务进度需要人工手动更新,经常与实际情况不符,带来很多烦恼。

如果,我们能有一个“智能秘书”呢?你只需要对它说一句:“帮我把‘用户登录模块优化’这个需求,创建成一个Story,分配给前端小王,优先级高,并把相关的API文档链接附上。”

几秒钟后,Jira里就妥妥地出现了一条规范、信息完整的任务。这,就是我们今天要聊的:基于LangGraph的智能体(Agent),结合RAG和MCP Server,打造一个真正AI赋能的Jira助手。

整个代码框架已经Ready,架构也已跑通,下面我就为大家彻底拆解这个项目。

核心架构:让AI学会“思考”和“动手”

01

在深入的聊技术之前,我们先看看下面的这张架构图,让大家对整个系统有个宏观认识。

架构核心思想:LangGraph作为“大脑”,协调各个“专业工具人”(Tools)来完成复杂任务, 这里RAG作为知识库, 就是个“大仓库” 或者“口袋”, 下面的地盘或者叫“底座”是个LLM(大语言模型)。

我们来逐一拆解图中的核心模块:

  1. LangGraph Agent(智能体大脑)
  • 角色: 总指挥。它负责理解用户的自然语言指令,并规划执行步骤, 如果执行或者具体处理逻辑都归它管。

  • 优势: LangGraph的StateGraph能够完美管理智能体的状态,实现多步骤、有条件的复杂工作流。比如,它可能会先查询知识库,再决定如何创建Jira单。

  1. RAG(检索增强生成)- 智能体的“外挂知识库”
  • 角色: 领域专家。我们的项目有大量的内部知识,比如代码规范、API文档、历史需求等。

  • 工作流:

  • 索引:将Confluence文档、Git代码注释等内部知识库进行切片、向量化,存入向量数据库(如ElasticSearch / OpenSearch)。

  • 检索:当用户提问时(例如:“创建任务时,性能测试的标准是什么?”),RAG会从向量库中检索最相关的知识片段。

  • 增强:将这些片段作为上下文,与用户问题一并送给LLM,让LLM基于“内部知识”生成更精准的回答或执行动作。

  1. MCP Server for Jira(智能体的“手和脚”)
  • 角色: 实干家。这是最关键的一环!MCP(Model Context Protocol)是新兴的标准化协议,它允许我们以统一的方式为LLM提供工具。

  • 功能: 我们封装了一个MCP Server,专门用于操作Jira。它暴露出一系列标准工具函数,例如:

  • jira_*get_*issue:Get details of a specific issue

  • jira_search:Search issues using JQL

  • jira_*create_*issue:Create a new issue

  • jira_*update_*issue:Update an existing issue

  • jira_*transition_*issue:Transition an issue to a new status

  • jira_*add_*comment:Add a comment to an issue

好处: LangGraph Agent可以直接调用这些标准化工具,无需关心Jira REST API的复杂细节,实现了完美的解耦。

代码实战:核心流程一览

02

代码框架已经Ready,这里贴出最核心的LangGraph图定义和执行流程,让大家感受一下其简洁和强大。

from typing import Dict, Anyfrom langgraph.graph import StateGraph, ENDfrom src.core.state import AgentStatefrom src.agents.router import AgentRouterfrom src.agents.jira_agent import JiraAgentfrom src.agents.conference_agent import ConferenceAgentimport logging# Set up logginglogging.basicConfig(level=logging.INFO)logger = logging.getLogger(__name__)classGraphManager:    """    Manages the LangGraph workflow for the agent system.    """        def__init__(self):         # 初始化GraphManager,创建所需的代理和图构建器        logger.info("Initializing GraphManager")        self.router = AgentRouter() # 路由代理,负责请求分发        self.jira_agent = JiraAgent() # Jira代理,处理Jira相关操作        self.conference_agent = ConferenceAgent()        self.builder = StateGraph(AgentState) # 基于AgentState的状态图构建器        self._setup_graph() # 设置图结构        def_setup_graph(self):        """        Set up the graph nodes and edges.        """        logger.info("Setting up graph nodes and edges")                # 添加节点        self.builder.add_node("router", self._route_request) # 路由节点        self.builder.add_node("jira_agent", self._process_jira_request) # Jira处理节点        self.builder.add_node("conference_agent", self._process_conference_request)                # 添加条件边,根据_route_decision函数输出决定路由        self.builder.add_conditional_edges(            "router",            self._route_decision,            {                "jira_agent": "jira_agent",                "conference_agent": "conference_agent",                "end": END            }        )                # 添加从Agent到工作流结束的线性边        self.builder.add_edge("jira_agent", END)        self.builder.add_edge("conference_agent", END)                # 设置入口点,所有工作流都从路由器开始        self.builder.set_entry_point("router")        logger.info("Graph setup completed")        def_route_request(self, state: AgentState) -> Dict[str, Any]:        """        Route the request to the appropriate agent.        """        logger.info("Routing request")        return self.router.process(state)        def_process_jira_request(self, state: AgentState) -> Dict[str, Any]:        """        Process a Jira request.        """        logger.info("Processing Jira request")        return self.jira_agent.process(state)        def_process_conference_request(self, state: AgentState) -> Dict[str, Any]:        """        Process a conference request.        """        logger.info("Processing Conference request")        return self.conference_agent.process(state)        def_route_decision(self, state: AgentState) -> str:        """        Make routing decision based on state.        """        # 访问最后一条消息以确定路由        messages = state.get("messages", [])        logger.info(f"Making routing decision based on state. Messages count: {len(messages)}")                ifnot messages:            logger.info("No messages found, routing to end")            return"end"                    # 目前根据current_agent字段进行路由        current_agent = state.get("current_agent", "")        logger.info(f"Current agent: {current_agent}")                if current_agent == "jira":            # 路由到Jira代理            logger.info("Routing to jira_agent")            return"jira_agent"        elif current_agent == "conference":            logger.info("Routing to conference_agent")            return"conference_agent"        else:            logger.info("Routing to end")            return"end"        defcompile(self):        """        Compile and return the graph.        """        logger.info("Compiling graph")        return self.builder.compile()

AI赋能Jira:不止于创建任务

03

这个智能体能做什么?大家可以头脑风暴一下!

  1. 自然语言生成任务卡片: 如开篇所述,一句话创建复杂任务。

  2. 智能问答与报告:

  • “我们Q1季度,哪个模块产生的Bug最多?列出Top3。”
  • “把‘电商大促’项目的所有阻塞态任务汇总成一个Markdown报告发到群里。”
  1. 自动化工单处理:
  • 监控日志,自动为频繁出现的Error创建Bug单。

  • 识别Git Commit Message,自动将关联的任务状态更新为“Resolved”。

  1. 上下文感知辅助:
  • 在任务界面,直接问Agent:“这个任务关联的PR代码评审意见是什么?”(它通过RAG去Git里找)。

智能体运行截图:

本文的项目核心骨架已在Gitee开源,欢迎来点个Star,见证项目的成长:
【Gitee链接】:https://gitee.com/ailearneryang/jira_agent.git

接下来,我也为公众号的读者朋友们准备了一份 “完整版” ,里面包含了项目所有的配置秘钥和部署清单。如果你想快速在本地环境跑起来,只需在后台对我发出接头暗号:【Jira_Agent】 ,我就会把完整资料包发送给你。

总结与展望

04

通过 LangGraph(协调) + RAG(知识) + MCP Server(执行) 这个黄金组合,我们成功地构建了一个能理解、会思考、可执行的AI Agent。

这套架构的可扩展性极强:

  • 未来要操作Confluence?再加一个MCP Server即可。

  • 要连接Jenkins?同样封装成MCP工具。

  • LangGraph会轻松地将它们纳入统一的工作流中。

技术栈总结:

  • Agent框架: LangGraph

  • 大模型: 开源LLM,比如Qwen3,DeepSeek,gpt-oss

  • 工具协议: MCP

  • 知识库: RAG (ElasticSearch / OpenSearch + 文本嵌入模型)

  • 目标系统: Jira (REST API)

AI不是飘在空中的概念,而是能落地解决实际问题的利器。

想入门 AI 大模型却找不到清晰方向?备考大厂 AI 岗还在四处搜集零散资料?别再浪费时间啦!2025 年 AI 大模型全套学习资料已整理完毕,从学习路线到面试真题,从工具教程到行业报告,一站式覆盖你的所有需求,现在全部免费分享

👇👇扫码免费领取全部内容👇👇

一、学习必备:100+本大模型电子书+26 份行业报告 + 600+ 套技术PPT,帮你看透 AI 趋势

想了解大模型的行业动态、商业落地案例?大模型电子书?这份资料帮你站在 “行业高度” 学 AI

1. 100+本大模型方向电子书

在这里插入图片描述

2. 26 份行业研究报告:覆盖多领域实践与趋势

报告包含阿里、DeepSeek 等权威机构发布的核心内容,涵盖:

  • 职业趋势:《AI + 职业趋势报告》《中国 AI 人才粮仓模型解析》;
  • 商业落地:《生成式 AI 商业落地白皮书》《AI Agent 应用落地技术白皮书》;
  • 领域细分:《AGI 在金融领域的应用报告》《AI GC 实践案例集》;
  • 行业监测:《2024 年中国大模型季度监测报告》《2025 年中国技术市场发展趋势》。

3. 600+套技术大会 PPT:听行业大咖讲实战

PPT 整理自 2024-2025 年热门技术大会,包含百度、腾讯、字节等企业的一线实践:

在这里插入图片描述

  • 安全方向:《端侧大模型的安全建设》《大模型驱动安全升级(腾讯代码安全实践)》;
  • 产品与创新:《大模型产品如何创新与创收》《AI 时代的新范式:构建 AI 产品》;
  • 多模态与 Agent:《Step-Video 开源模型(视频生成进展)》《Agentic RAG 的现在与未来》;
  • 工程落地:《从原型到生产:AgentOps 加速字节 AI 应用落地》《智能代码助手 CodeFuse 的架构设计》。

二、求职必看:大厂 AI 岗面试 “弹药库”,300 + 真题 + 107 道面经直接抱走

想冲字节、腾讯、阿里、蔚来等大厂 AI 岗?这份面试资料帮你提前 “押题”,拒绝临场慌!

1. 107 道大厂面经:覆盖 Prompt、RAG、大模型应用工程师等热门岗位

面经整理自 2021-2025 年真实面试场景,包含 TPlink、字节、腾讯、蔚来、虾皮、中兴、科大讯飞、京东等企业的高频考题,每道题都附带思路解析

2. 102 道 AI 大模型真题:直击大模型核心考点

针对大模型专属考题,从概念到实践全面覆盖,帮你理清底层逻辑:

3. 97 道 LLMs 真题:聚焦大型语言模型高频问题

专门拆解 LLMs 的核心痛点与解决方案,比如让很多人头疼的 “复读机问题”:


三、路线必明: AI 大模型学习路线图,1 张图理清核心内容

刚接触 AI 大模型,不知道该从哪学起?这份「AI大模型 学习路线图」直接帮你划重点,不用再盲目摸索!

在这里插入图片描述

路线图涵盖 5 大核心板块,从基础到进阶层层递进:一步步带你从入门到进阶,从理论到实战。

img

L1阶段:启航篇丨极速破界AI新时代

L1阶段:了解大模型的基础知识,以及大模型在各个行业的应用和分析,学习理解大模型的核心原理、关键技术以及大模型应用场景。

img

L2阶段:攻坚篇丨RAG开发实战工坊

L2阶段:AI大模型RAG应用开发工程,主要学习RAG检索增强生成:包括Naive RAG、Advanced-RAG以及RAG性能评估,还有GraphRAG在内的多个RAG热门项目的分析。

img

L3阶段:跃迁篇丨Agent智能体架构设计

L3阶段:大模型Agent应用架构进阶实现,主要学习LangChain、 LIamaIndex框架,也会学习到AutoGPT、 MetaGPT等多Agent系统,打造Agent智能体。

img

L4阶段:精进篇丨模型微调与私有化部署

L4阶段:大模型的微调和私有化部署,更加深入的探讨Transformer架构,学习大模型的微调技术,利用DeepSpeed、Lamam Factory等工具快速进行模型微调,并通过Ollama、vLLM等推理部署框架,实现模型的快速部署。

img

L5阶段:专题集丨特训篇 【录播课】

img
四、资料领取:全套内容免费抱走,学 AI 不用再找第二份

不管你是 0 基础想入门 AI 大模型,还是有基础想冲刺大厂、了解行业趋势,这份资料都能满足你!
现在只需按照提示操作,就能免费领取:

👇👇扫码免费领取全部内容👇👇

2025 年想抓住 AI 大模型的风口?别犹豫,这份免费资料就是你的 “起跑线”!

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐