Jira 专家
Atlassian Jira 专家
在 Jira 配置、项目管理、JQL、工作流、自动化和报表方面拥有大师级专业知识。处理 Jira 的所有技术和运营层面工作。
快速上手 — 最常用操作
本技能中所有 MCP 示例均使用真实的 Atlassian Remote MCP 工具(采用 camelCase 命名,呈现为 mcp__atlassian__<toolName>)。权威工具列表位于 project-management/references/atlassian-mcp-tools.md —— 请勿随意发明工具名称;如果该列表中未列出某项功能,则无法通过 MCP 调用。
创建问题(请先调用一次 getAccessibleAtlassianResources 以获取 cloudId):
mcp__atlassian__createJiraIssue (cloudId, projectKey="MYPROJ", issueTypeName="Story", summary="My new story")运行 JQL 查询(使用内置脚本将自然语言转换为 JQL,然后执行):
python3 scripts/jql_query_builder.py "high priority bugs assigned to me"
→ 输出经过验证的 JQL,例如:assignee = currentUser() AND type = Bug AND status != Done
mcp__atlassian__searchJiraIssuesUsingJql (cloudId, jql="project = MYPROJ AND status != Done AND dueDate < now()")创建项目:MCP 不支持此操作。请使用 Jira Web UI(项目 > 创建项目)或 REST API (POST /rest/api/3/project)。
完整工具参考请参阅 Atlassian MCP 集成。JQL 函数请参阅 JQL 函数参考。报表模板请参阅 报表模板。
---
工作流
项目创建
> 项目创建不支持通过 MCP 完成 —— 请在 Jira Web UI(项目 > 创建项目)或通过 REST API (POST /rest/api/3/project) 执行步骤 2-6。创建后,使用 mcp__atlassian__getVisibleJiraProjects 验证可见性,并使用 mcp__atlassian__getJiraProjectIssueTypesMetadata 检查问题类型。
1. 确定项目类型(Scrum, Kanban, Bug Tracking 等)
2. 使用合适的模板创建项目(Web UI / REST)
3. 配置项目设置:
- 名称、键 (Key)、描述
- 项目负责人和默认经办人
- 通知方案
- 权限方案
4. 设置问题类型和工作流
5. 根据需要配置自定义字段
6. 创建初始看板/待办列表视图
7. 移交给:Scrum Master 进行团队入职引导
工作流设计
> 工作流/方案编辑不支持通过 MCP 完成 —— 请在 Jira 设置 > 问题 > 工作流 中配置。在部署前,请使用内置验证器以发现反模式。
1. 梳理流程状态(待办 $\rightarrow$ 进行中 $\rightarrow$ 已完成)
2. 定义转换 (Transitions) 和条件 (Conditions)
3. 在 Jira 中构建之前对设计进行 Lint 检查:
python3 scripts/workflow_validator.py workflow.json --format json输入:包含工作流
states 和 transitions 的 JSON 文件。分析输出结果:在操作 Jira 之前,先在设计中修复所有报告的反模式(如死端状态、不可达状态、缺失的转换)。4. 添加验证器 (Validators)、后置函数 (Post-functions) 和条件;配置工作流方案(Web UI)
5. 验证:先部署到测试项目;验证所有转换、配置...
条件和后置函数在关联到生产项目前运行符合预期
6. 将工作流关联至项目
7. 使用示例问题测试工作流 —— 通过 MCP:对示例问题调用
mcp__atlassian__getTransitionsForJiraIssue 以确认预期的状态转换可见,然后调用 mcp__atlassian__transitionJiraIssue 引导其完成整个流程
JQL 查询构建
优先使用内置构建器 —— 它能将自然语言模式匹配为经过验证的 JQL:
python3 scripts/jql_query_builder.py "high priority bugs assigned to me" --format json
python3 scripts/jql_query_builder.py --patterns # 列出所有支持的查询模式使用输出结果:从 JSON 结果中提取
jql 字段(或在文本模式下提取 GENERATED JQL 块),并使用 mcp__atlassian__searchJiraIssuesUsingJql (cloudId, jql=<generated>) 执行。如果构建器报告无模式匹配,请参考下文手动编写 JQL。
基本结构:字段 运算符 值
常用运算符:
=, !=: 等于,不等于
~, !~: 包含,不包含
>, <, >=, <=: 比较
in, not in: 列表成员
is empty, is not empty: 为空,不为空
was, was in, was not: 曾经是,曾经在...中,曾经不是
changed: 已更改
强大的 JQL 示例:
查找逾期问题:
dueDate < now() AND status != DoneSprint 燃尽问题:
sprint = 23 AND status changed TO "Done" DURING (startOfSprint(), endOfSprint())查找陈旧问题:
updated < -30d AND status != Done跨项目 Epic 跟踪:
"Epic Link" = PROJ-123 ORDER BY rank速率计算:
sprint in closedSprints() AND resolution = Done团队容量:
assignee in (user1, user2) AND sprint in openSprints()仪表板创建
1. 创建新仪表板(个人或共享) 2. 添加相关小工具: - 过滤器结果(基于 JQL) - Sprint 燃尽图 - 速率图 - 创建数 vs 解决数 - 饼图(状态分布) 3. 调整布局以提高可读性 4. 配置自动刷新 5. 与相关团队共享 6. 移交给:高级 PM 或 Scrum Master 使用自动化规则
1. 定义触发器(问题创建、字段更改、定时触发) 2. 添加条件(如果适用) 3. 定义操作: - 更新字段 - 发送通知 - 创建子任务 - 转换问题状态 - 发布评论 4. 使用示例数据测试自动化 5. 启用并监控高级功能
自定义字段
创建时机:- 跟踪标准字段中不存在的数据
- 捕获特定流程的信息
- 实现高级报告
字段类型:文本、数字、日期、选择(单选/多选/级联)、用户选择器
配置步骤:
1. 创建自定义字段
2. 配置字段上下文(适用项目/问题类型)
3. 添加到相应的界面(Screens)
4. 根据需要更新搜索模板
问题链接
链接类型:- 阻塞 / 被阻塞 (Blocks / Is blocked by)
- 相关 (Relates to)
- 重复 / 被重复 (Duplicates / Is duplicated by)
- 克隆 / 被克隆 (Clones / Is cloned by)
- Epic-Story 关系
最佳实践:
- 使用 Epic 链接进行功能分组
- 使用阻塞链接显示依赖关系
- 在评论中记录链接原因
权限与安全
权限方案:
- 浏览项目
- 创建/编辑/删除问题
- 管理项目
- 管理 Sprint
安全级别:
- 定义机密问题的可见性
- 控制对敏感数据的访问
- 审计安全更改
批量操作
批量更改: 1. 使用 JQL 查找目标问题 2. 选择批量更改操作 3. 选择要更新的字段 4. 验证: 在执行前预览所有更改;确认 JQL 过滤器仅匹配目标问题 —— 批量编辑难以撤销。 5. 执行并确认 6. 监控后台任务批量状态流转 (Bulk Transitions):
- 将多个问题在工作流中移动
- 适用于 Sprint 清理
- 需要相应的权限
- 验证:在大规模应用前,运行 JQL 过滤器并分小批次审核结果
JQL 函数参考
> 提示:将常用查询保存为命名过滤器,而非临时运行复杂的 JQL。性能指南请参阅 最佳实践。
日期:startOfDay(), endOfDay(), startOfWeek(), endOfWeek(), startOfMonth(), endOfMonth(), startOfYear(), endOfYear()
Sprint:openSprints(), closedSprints(), futureSprints()
用户:currentUser(), membersOf("group")
高级:issueHistory(), linkedIssues(), issuesWithFixVersions()
报告模板
> 提示:这些 JQL 代码片段可以保存为共享过滤器,或直接接入仪表板小部件(见 仪表板创建)。
| 报告 | JQL |
|---|---|
| Sprint 报告 | project = PROJ AND sprint = 23 |
| 团队速率 | assignee in (team) AND sprint in closedSprints() AND resolution = Done |
| Bug 趋势 | type = Bug AND created >= -30d |
| 阻碍项分析 | priority = Blocker AND status != Done |
决策框架
何时升级至 Atlassian 管理员:
- 需要新的项目权限方案
- 需要跨组织的自定义工作流方案
- 用户配置或注销
- 许可或计费问题
- 系统级配置更改
何时与 Scrum Master 协作:
- Sprint 看板配置
- Backlog 优先级视图
- 团队特定过滤器
- Sprint 报告需求
何时与高级 PM 协作:
- 组合 (Portfolio) 级别报告
- 跨项目仪表板
- 高层可见性需求
- 多项目依赖关系
交接协议
来自高级 PM:
- 项目结构要求
- 工作流和字段需求
- 报告要求
- 集成需求
交给高级 PM:
- 跨项目指标
- 问题趋势和模式
- 工作流瓶颈
- 数据质量洞察
来自 Scrum Master:
- Sprint 看板配置请求
- 工作流优化需求
- Backlog 过滤要求
- 速率跟踪设置
交给 Scrum Master:
- 已配置的 Sprint 看板
- 速率报告
- 燃尽图
- 团队容量视图
最佳实践
数据质量:
- 通过字段验证规则强制执行必填字段
- 根据项目类型使用一致的问题键命名约定
- 定期清理陈旧/孤立的问题
性能:
- 避免在 JQL 中使用前导通配符(在大文本字段上使用
~成本很高)
- 使用保存的过滤器,而非临时运行复杂的 JQL
- 限制仪表板小部件数量以减少页面加载时间
- 归档已完成的项目而非删除,以保留历史记录
治理:
- 记录自定义工作流状态和流转的理由
- 在更改权限/工作流方案前进行版本控制
- 组织范围的方案更新需经过变更管理审核
- 在用户角色变更后运行权限审计
Atlassian MCP 集成
主要工具:Atlassian Remote MCP 服务器(捆绑 .mcp.json,服务器键为 atlassian)。工具以 mcp__atlassian__<toolName> 形式呈现。标准工具列表:project-management/references/atlassian-mcp-tools.md。切勿随意发明工具名称 —— 如果一项功能...
如果不在该列表中,请路由至 Web UI 或 REST API。
关键操作及调用示例(先通过 mcp__atlassian__getAccessibleAtlassianResources 获取一次 cloudId):
创建问题(先通过 getJiraIssueTypeMetaWithFields 检查必填字段):
mcp__atlassian__createJiraIssue (cloudId, projectKey="MYPROJ", issueTypeName="Story", summary="My new story")执行 JQL 查询:
mcp__atlassian__searchJiraIssuesUsingJql (cloudId, jql="project = MYPROJ AND status != Done AND dueDate < now()")更新问题字段:
mcp__atlassian__editJiraIssue (cloudId, issueIdOrKey="MYPROJ-42", fields=<payload — 通过工具 schema 查看>)转换问题状态(状态变更需通过 transition 完成,而非直接编辑字段):
mcp__atlassian__getTransitionsForJiraIssue (cloudId, issueIdOrKey="MYPROJ-42")
mcp__atlassian__transitionJiraIssue (cloudId, issueIdOrKey="MYPROJ-42", transition=<上一步调用获取的 id>)添加评论 / 记录工时 / 关联问题:
mcp__atlassian__addCommentToJiraIssue (cloudId, issueIdOrKey="MYPROJ-42", body="...")
mcp__atlassian__addWorklogToJiraIssue (cloudId, issueIdOrKey="MYPROJ-42", timeSpent=<通过工具 schema 查看>)
mcp__atlassian__createIssueLink (cloudId, link type from mcp__atlassian__getIssueLinkTypes)MCP 不支持的操作 — 请使用 Web UI 或 REST API:
- 创建项目 $\rightarrow$ Jira UI
项目 > 创建项目或POST /rest/api/3/project
- 创建 Sprint 或配置看板 $\rightarrow$ Jira Software UI 或
POST /rest/agile/1.0/sprint
- 创建/共享过滤器 $\rightarrow$ Jira UI
过滤器 > 另存为或POST /rest/api/3/filter
- 自定义字段、界面、工作流/权限方案 $\rightarrow$ Jira 管理员 UI
集成点:
- 为高级产品经理 (Senior PM) 提取汇报指标
- 为 Scrum Master 配置 Sprint 看板
- 为 Confluence 专家创建文档页面
- 为模板创建者支持模板构建
相关技能
- Confluence Expert (
project-management/confluence-expert/) — 文档补充 Jira 工作流
- Atlassian Admin (
project-management/atlassian-admin/) — Jira 项目的权限与用户管理