jira

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Jira Skill

Jira 技能

You are a Jira specialist. This skill covers two interfaces for working with Jira:
  1. Jira CLI - Command-line tool for terminal operations
  2. Jira MCP Server - MCP tools for programmatic access (mcp__jira__* functions)
你是一名Jira专家。本技能涵盖了两种操作Jira的方式:
  1. Jira CLI - 用于终端操作的命令行工具
  2. Jira MCP Server - 用于程序化访问的MCP工具(mcp__jira__*系列函数)

Jira MCP Server

Jira MCP Server

When using MCP tools (mcp__jira__*), follow these patterns:
使用MCP工具(mcp__jira__*)时,请遵循以下模式:

User Management and Assignment

用户管理与分配

Search for users before assigning:
1. Search: mcp__jira__jira_users_search(query="Full Name")
2. Extract account_id from results
3. Assign: mcp__jira__jira_issues_assign(issue_key, account_id)
分配前先搜索用户:
1. 搜索:mcp__jira__jira_users_search(query="全名")
2. 从结果中提取account_id
3. 分配:mcp__jira__jira_issues_assign(issue_key, account_id)

Error Handling - Empty Response Pattern

错误处理 - 空响应模式

CRITICAL: Empty response errors are often successes
The Jira API returns HTTP 204 (No Content) for successful operations that don't return data. The MCP server may report these as errors:
Error: Invalid Response Payload (b""): EOF while parsing a value at line 1 column 0
Error: Some(204)
Best Practice: Always verify operations with GET requests
undefined
重要提示:空响应错误往往代表操作成功
对于不返回数据的成功操作,Jira API会返回HTTP 204(无内容)状态码。MCP服务器可能会将这些情况报告为错误:
Error: Invalid Response Payload (b""): EOF while parsing a value at line 1 column 0
Error: Some(204)
最佳实践:始终使用GET请求验证操作结果
undefined

After assign/update that returns empty response error:

在执行分配/更新操作返回空响应错误后:

  1. Call mcp__jira__jira_issues_get(issue_key)
  2. Check if the operation actually succeeded
  3. Report success based on verification, not error message

**Example Pattern:**
  1. 调用mcp__jira__jira_issues_get(issue_key)
  2. 检查操作是否实际成功
  3. 根据验证结果报告成功,而非错误消息

**示例模式:**

Try to assign

尝试执行分配操作

assign_result = mcp__jira__jira_issues_assign("PROJ-123", account_id)
assign_result = mcp__jira__jira_issues_assign("PROJ-123", account_id)

May return error but succeed

可能返回错误但实际操作成功

Verify the assignment worked

验证分配是否生效

issue = mcp__jira__jira_issues_get("PROJ-123") if issue.assignee.account_id == account_id: # Assignment succeeded despite error message
undefined
issue = mcp__jira__jira_issues_get("PROJ-123") if issue.assignee.account_id == account_id: # 尽管有错误消息,分配操作仍成功
undefined

Issue Links

问题关联

Creating links between issues:
mcp__jira__jira_issuelinks_create(
    inward_issue="PROJ-123",
    outward_issue="OTHER-456",
    link_type="Relates"  # or "Blocks", "Duplicates", etc.
)
创建问题间的关联:
mcp__jira__jira_issuelinks_create(
    inward_issue="PROJ-123",
    outward_issue="OTHER-456",
    link_type="Relates"  # 或 "Blocks", "Duplicates"等
)

Common Workflows

常见工作流

Create issue with all details:
1. Search for assignee: mcp__jira__jira_users_search(query="Name")
2. Create issue: mcp__jira__jira_issues_create(...)
3. Verify with: mcp__jira__jira_issues_get(issue_key)
Update existing issue:
1. Update: mcp__jira__jira_issues_update(issue_key, fields...)
2. Verify: mcp__jira__jira_issues_get(issue_key)
Link related issues:
1. Create link: mcp__jira__jira_issuelinks_create(...)
2. Verify: mcp__jira__jira_issues_get(issue_key) # check links in response
创建包含所有详情的问题:
1. 搜索经办人:mcp__jira__jira_users_search(query="姓名")
2. 创建问题:mcp__jira__jira_issues_create(...)
3. 验证:mcp__jira__jira_issues_get(issue_key)
更新现有问题:
1. 更新:mcp__jira__jira_issues_update(issue_key, fields...)
2. 验证:mcp__jira__jira_issues_get(issue_key)
关联相关问题:
1. 创建关联:mcp__jira__jira_issuelinks_create(...)
2. 验证:mcp__jira__jira_issues_get(issue_key) # 检查响应中的关联信息

Jira CLI

Jira CLI

The Jira CLI provides command-line access to Jira for terminal operations.
Jira CLI提供了通过命令行终端访问Jira的方式。

Core Commands

核心命令

Authentication

身份验证

bash
undefined
bash
undefined

Check authentication status

检查身份验证状态

jira auth check
jira auth check

Login to Jira

登录Jira

jira auth login
undefined
jira auth login
undefined

Issue Management

问题管理

bash
undefined
bash
undefined

View issue details

查看问题详情

jira issue get ISSUE-123
jira issue get ISSUE-123

Create new issue

创建新问题

jira issue create --project PROJ --type Bug --summary "Issue summary" --description "Description"
jira issue create --project PROJ --type Bug --summary "问题摘要" --description "问题描述"

Update issue

更新问题

jira issue update ISSUE-123 --summary "New summary"
jira issue update ISSUE-123 --summary "新摘要"

Add comment to issue

为问题添加评论

jira comment add ISSUE-123 "Comment text"
jira comment add ISSUE-123 "评论内容"

List comments on issue

列出问题的所有评论

jira comment list ISSUE-123
undefined
jira comment list ISSUE-123
undefined

Issue Transitions

问题状态流转

bash
undefined
bash
undefined

List available transitions for an issue

列出问题可用的状态流转

jira transition list ISSUE-123
jira transition list ISSUE-123

Transition issue to new status

将问题流转至新状态

jira transition ISSUE-123 "In Progress"
undefined
jira transition ISSUE-123 "进行中"
undefined

Searching with JQL

使用JQL搜索

bash
undefined
bash
undefined

Search issues with JQL

使用JQL搜索问题

jira search "project = PROJ AND status = Open"
jira search "project = PROJ AND status = Open"

Search with output format

指定输出格式搜索

jira search "assignee = currentUser()" --format json
jira search "assignee = currentUser()" --format json

Search with field selection

指定字段搜索

jira search "project = PROJ" --fields summary,status,assignee
undefined
jira search "project = PROJ" --fields summary,status,assignee
undefined

Project Operations

项目操作

bash
undefined
bash
undefined

List all projects

列出所有项目

jira project list
jira project list

Get project details

查看项目详情

jira project get PROJ
undefined
jira project get PROJ
undefined

Watching and Assigning

关注与分配

bash
undefined
bash
undefined

Watch an issue

关注问题

jira watch add ISSUE-123
jira watch add ISSUE-123

Stop watching an issue

取消关注问题

jira watch remove ISSUE-123
jira watch remove ISSUE-123

Assign issue

分配问题

jira assign ISSUE-123 username
jira assign ISSUE-123 username

Assign to self

分配给自己

jira assign ISSUE-123 me
undefined
jira assign ISSUE-123 me
undefined

Common Workflows

常见工作流

Viewing Your Work

查看个人工作

bash
undefined
bash
undefined

View issues assigned to you

查看分配给自己的问题

jira search "assignee = currentUser() AND status != Done"
jira search "assignee = currentUser() AND status != Done"

View issues you're watching

查看自己关注的问题

jira search "watcher = currentUser()"
jira search "watcher = currentUser()"

View recent activity

查看近期活动

jira search "updatedDate >= -7d AND assignee = currentUser()"
undefined
jira search "updatedDate >= -7d AND assignee = currentUser()"
undefined

Creating and Updating Issues

创建与更新问题

bash
undefined
bash
undefined

Create a bug

创建Bug问题

jira issue create --project PROJ --type Bug
--summary "Login button not working"
--description "Steps to reproduce..."
jira issue create --project PROJ --type Bug
--summary "登录按钮无法正常工作"
--description "复现步骤..."

Update priority

更新优先级

jira issue update ISSUE-123 --priority High
jira issue update ISSUE-123 --priority High

Add labels

添加标签

jira issue update ISSUE-123 --labels bug,frontend
jira issue update ISSUE-123 --labels bug,frontend

Link issues

关联问题

jira link add ISSUE-123 ISSUE-456 "blocks"
undefined
jira link add ISSUE-123 ISSUE-456 "blocks"
undefined

Moving Issues Through Workflow

问题工作流流转

bash
undefined
bash
undefined

Start work on issue

开始处理问题

jira transition ISSUE-123 "In Progress"
jira transition ISSUE-123 "进行中"

Mark as done

标记为完成

jira transition ISSUE-123 "Done"
jira transition ISSUE-123 "已完成"

Reopen issue

重新打开问题

jira transition ISSUE-123 "Reopen"
undefined
jira transition ISSUE-123 "重新打开"
undefined

JQL Reference

JQL参考

Common JQL Patterns

常见JQL模式

bash
undefined
bash
undefined

Issues in specific project

指定项目中的问题

jira search "project = MYPROJ"
jira search "project = MYPROJ"

Open issues assigned to you

分配给自己的未完成问题

jira search "assignee = currentUser() AND status in (Open, 'In Progress')"
jira search "assignee = currentUser() AND status in (Open, 'In Progress')"

High priority bugs

高优先级Bug

jira search "type = Bug AND priority = High"
jira search "type = Bug AND priority = High"

Recently updated issues

近期更新的问题

jira search "updated >= -1w"
jira search "updated >= -1w"

Issues created this sprint

当前迭代中创建的问题

jira search "sprint in openSprints() AND created >= startOfWeek()"
jira search "sprint in openSprints() AND created >= startOfWeek()"

Issues with specific label

带有特定标签的问题

jira search "labels = urgent"
jira search "labels = urgent"

Issues in epic

Epic下的问题

jira search "'Epic Link' = EPIC-123"
undefined
jira search "'Epic Link' = EPIC-123"
undefined

JQL Field Reference

JQL字段参考

  • project
    - Project key or name
  • status
    - Issue status (Open, In Progress, Done, etc.)
  • assignee
    - Assigned user (use
    currentUser()
    for yourself)
  • reporter
    - Issue reporter
  • priority
    - Priority level (Highest, High, Medium, Low, Lowest)
  • type
    - Issue type (Bug, Story, Task, Epic, etc.)
  • labels
    - Issue labels
  • created
    - Creation date
  • updated
    - Last update date
  • resolution
    - Resolution status
  • project
    - 项目键或名称
  • status
    - 问题状态(Open, In Progress, Done等)
  • assignee
    - 经办人(使用
    currentUser()
    指代当前用户)
  • reporter
    - 报告人
  • priority
    - 优先级(Highest, High, Medium, Low, Lowest)
  • type
    - 问题类型(Bug, Story, Task, Epic等)
  • labels
    - 问题标签
  • created
    - 创建日期
  • updated
    - 最后更新日期
  • resolution
    - 解决状态

JQL Functions

JQL函数

  • currentUser()
    - Current logged-in user
  • startOfDay()
    ,
    startOfWeek()
    ,
    startOfMonth()
    - Date functions
  • now()
    - Current timestamp
  • openSprints()
    - Currently active sprints
  • closedSprints()
    - Completed sprints
  • currentUser()
    - 当前登录用户
  • startOfDay()
    ,
    startOfWeek()
    ,
    startOfMonth()
    - 日期函数
  • now()
    - 当前时间戳
  • openSprints()
    - 当前活跃迭代
  • closedSprints()
    - 已完成迭代

Output Formats

输出格式

bash
undefined
bash
undefined

JSON output (for scripting)

JSON格式输出(用于脚本)

jira search "project = PROJ" --format json
jira search "project = PROJ" --format json

Table output (human-readable, default)

表格格式输出(人类可读,默认)

jira search "project = PROJ" --format table
jira search "project = PROJ" --format table

CSV output

CSV格式输出

jira search "project = PROJ" --format csv
undefined
jira search "project = PROJ" --format csv
undefined

Best Practices

最佳实践

  1. Always authenticate first: Run
    jira auth check
    before operations
  2. Use JQL for complex queries: More powerful than simple filters
  3. Specify output format: Use
    --format json
    for scripting
  4. Include field selection: Use
    --fields
    to limit returned data
  5. Test transitions: Use
    jira transition list
    before transitioning
  6. Be specific with JQL: Use quotes for multi-word values
  1. 始终先进行身份验证:执行操作前先运行
    jira auth check
  2. 使用JQL进行复杂查询:比简单过滤器更强大
  3. 指定输出格式:脚本场景使用
    --format json
  4. 选择返回字段:使用
    --fields
    限制返回数据量
  5. 测试状态流转:执行流转前先使用
    jira transition list
    查看可用选项
  6. JQL查询要明确:多词值需使用引号包裹

Common Use Cases

常见使用场景

Daily Standup Prep

每日站会准备

bash
undefined
bash
undefined

What you worked on yesterday

你昨天处理的问题

jira search "assignee = currentUser() AND updated >= -1d"
jira search "assignee = currentUser() AND updated >= -1d"

What you're working on today

你今天正在处理的问题

jira search "assignee = currentUser() AND status = 'In Progress'"
undefined
jira search "assignee = currentUser() AND status = 'In Progress'"
undefined

Bug Triage

Bug分类处理

bash
undefined
bash
undefined

Unassigned bugs

未分配的Bug

jira search "type = Bug AND assignee is EMPTY AND status = Open"
jira search "type = Bug AND assignee is EMPTY AND status = Open"

Critical bugs in project

项目中的严重Bug

jira search "project = PROJ AND type = Bug AND priority in (Highest, High)"
undefined
jira search "project = PROJ AND type = Bug AND priority in (Highest, High)"
undefined

Sprint Planning

迭代规划

bash
undefined
bash
undefined

Issues in backlog

待办事项中的问题

jira search "project = PROJ AND status = 'To Do' AND sprint is EMPTY"
jira search "project = PROJ AND status = 'To Do' AND sprint is EMPTY"

Issues in current sprint

当前迭代中的问题

jira search "project = PROJ AND sprint in openSprints()"
jira search "project = PROJ AND sprint in openSprints()"

Completed this sprint

本次迭代已完成的问题

jira search "project = PROJ AND sprint in openSprints() AND status = Done"
undefined
jira search "project = PROJ AND sprint in openSprints() AND status = Done"
undefined

Error Handling

错误处理

If you encounter authentication errors:
bash
jira auth login
If JQL syntax errors occur:
  • Check for proper quoting of multi-word values
  • Verify field names are correct
  • Use
    AND
    ,
    OR
    ,
    NOT
    operators (uppercase)
如果遇到身份验证错误:
bash
jira auth login
如果出现JQL语法错误:
  • 检查多词值是否正确使用引号包裹
  • 验证字段名称是否正确
  • 使用大写的
    AND
    ,
    OR
    ,
    NOT
    运算符

Quick Reference

快速参考

bash
undefined
bash
undefined

View issue

查看问题

jira issue get ISSUE-123
jira issue get ISSUE-123

Search

搜索

jira search "JQL query here"
jira search "JQL查询语句"

Create

创建问题

jira issue create --project PROJ --type TYPE --summary "text"
jira issue create --project PROJ --type TYPE --summary "文本"

Update

更新问题

jira issue update ISSUE-123 --field value
jira issue update ISSUE-123 --field 值

Transition

状态流转

jira transition ISSUE-123 "Status Name"
jira transition ISSUE-123 "状态名称"

Comment

添加评论

jira comment add ISSUE-123 "Comment text"
jira comment add ISSUE-123 "评论内容"

Assign

分配问题

jira assign ISSUE-123 username
undefined
jira assign ISSUE-123 username
undefined