MCPInstall

researching-jira-issues

Use whenever the user mentions a Jira issue key and wants more than a surface-level lookup — "Read PROJ-123", "What's PROJ-123 about?", "Give me context on PROJ-123", "Deep dive PROJ-123", "What's blocking PROJ-123?", "Summarize PROJ-123 and its dependencies", "I need to work on PROJ-123, what should I know?", or any request to understand an issue's purpose, scope, or requirements. Thoroughly researches and synthesizes a Jira issue including all linked issues, sub-tasks, blocked dependencies, and supporting Confluence documentation.

Installs
68
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/bitwarden/ai-plugins --skill researching-jira-issues
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads researching-jira-issues automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Researching Jira Issues

Synthesize information, don't concatenate tool outputs. Each step below gathers raw data — the value of this skill is in connecting the dots across issues, docs, and comments into a coherent understanding that a human can act on.

Workflow

Step 1: Fetch the Main Issue

Use the get_issue MCP tool with the issue key. The tool defaults to expanding renderedFields and names, which provides HTML-rendered fields and human-readable custom field display names.

Extract and note:

  • Issue type (Epic, Story, Task, Bug, Sub-task, etc.)
  • Summary and description
  • Current status and priority
  • Assignee and reporter
  • Key fields relevant to understanding the work (labels, components, sprint, etc.)
  • Comments that provide important context (clarifications from stakeholders, technical decisions, implementation guidance)
  • Custom fields: Surface all non-null custom fields from the Additional Fields section of the response. The names expansion maps field IDs to human-readable display names automatically.

Step 2: Identify All Linked Issues

Examine the main issue response to identify linked issues through:

  1. Issue Links: Look for the issuelinks field in the API response (an untyped array field returned by Jira) containing:

    • Blocks/Blocked by relationships
    • Depends on/Dependency relationships
    • Relates to links
    • Clones, Duplicates, Supersedes relationships
    • Any other link types
  2. Hierarchical Links: Look for:

    • Parent issue (if this is a sub-task)
    • Epic link (if this is linked to an epic)
    • Sub-tasks (if this issue has sub-tasks)
    • Next-gen projects: If the issue type is Epic or Feature and subtasks is empty, use the search_issues MCP tool with JQL parent = <ISSUE-KEY> to discover child issues. Next-gen Jira projects use parent relationships instead of the subtasks field.
  3. Remote Links: Use the get_issue_remote_links MCP tool with the issue key to find:

    • Linked Confluence pages (grouped under "Confluence Pages" in the output)
    • Pull requests and commits (grouped under "GitHub")
    • External documentation and other resources

Step 3: Fetch Linked Issues with Depth Control

Fetch related issues to build context, but stop before the returns diminish. Each additional hop adds API calls and context window usage while providing less directly relevant information.

  1. Priority Order:

    • High Priority: Blocks, Depends on, Parent, Epic Link — these determine whether work can start and where the issue fits in the hierarchy
    • Medium Priority: Sub-tasks, Related issues — these define scope and provide background
    • Low Priority: Clones, Duplicates — only if they provide unique context not found elsewhere
  2. Depth Control:

    • Traverse up to 2 levels beyond the main issue (main issue -> linked issue -> one more hop for high-priority links only). Beyond 2 levels, context relevance drops sharply and the risk of ballooning the response grows.
    • For issues referenced in other Jira projects via inline description URLs (e.g., VULN-, SEC-), mention the reference contextually but do not traverse unless it appears as a formal issue link (blocks/depends-on/relates-to). Cross-project inline references are informational, not dependency signals.
    • Track fetched issue keys to avoid circular references (A links to B, B links to A)
    • For each linked issue, use the get_issue MCP tool and extract key information
  3. Selective Fetching:

    • For sub-tasks: Fetch all to understand full scope of work. If there are more than 10 children, fetch the first 10 and summarize the remainder as a compact list (key, status, summary) from the search results.
    • For blocking issues: Fetch to understand dependencies
    • For related issues: Fetch if they appear critical to understanding
    • Skip duplicate/cloned issues unless they contain unique information
  4. Rate Limiting: Space out requests when making many API calls. After every 5 sequential calls, pause briefly (1 second) to avoid hitting Atlassian rate limits. If you encounter a 429 response, wait 10 seconds before retrying.

Step 4: Fetch Linked Confluence Documentation

Confluence pages often contain requirements, design docs, or specifications:

  1. Extract Confluence page links from:

    • Remote links output (Step 2 — links grouped under "Confluence Pages")
    • Issue description URLs matching */wiki/spaces/*/pages/*/
    • Comment URLs pointing to Confluence
  2. For each Confluence link:

    • Extract the pageId from the URL (e.g., https://domain.atlassian.net/wiki/spaces/SPACE/pages/123456789/Title -> 123456789)
    • Use the get_confluence_page MCP tool with the page ID
    • Note the page title and key information from the content
  3. Context budget for pages: For Confluence pages over 2000 words, summarize the sections relevant to the issue rather than reproducing the full page. Focus on requirements, acceptance criteria, technical constraints, and design decisions.

Step 5: Handle Failures Gracefully

If any fetch fails, note the failure and continue with available data. Specific failure modes:

  • 404 on a linked issue: The issue was deleted or moved. Note the key and skip.
  • 403 on a Confluence page: No access. Note the page title from the remote link and skip.
  • 404 on remote links: The endpoint may not be available. Skip and rely on issue links from the main response.

Always report which items could not be retrieved at the end of the synthesis.

Step 6: Synthesize and Present

Organize all gathered information into a comprehensive understanding:

Issue Overview

  • What is the core purpose of this issue?
  • What type of work is this (new feature, bug fix, tech debt, etc.)?
  • Current status and who's working on it

Requirements and Context

  • What are the key requirements or acceptance criteria?
  • What problem is being solved?
  • What documentation supports this work?
  • Show any non-null custom fields under their display name as a heading, rendering the content as markdown

Dependencies and Relationships

  • What issues must be completed first (blocking dependencies)?
  • What issues does this block (downstream impact)?
  • How does this fit into the larger epic or project?

Scope of Work

  • What sub-tasks exist?
  • What's the breakdown of the work?
  • Are there related issues that provide additional context?

Key Insights

  • Technical decisions or constraints from comments/documentation
  • Risks or concerns mentioned
  • Important historical context (why was this cloned, what was superseded, etc.)

Context Budget

When the full synthesis exceeds approximately 4000 words (roughly the point where readers start skimming rather than absorbing), condense lower-priority linked issues (Related, Clones, Duplicates) to single-line summaries with key, status, and summary only. Limit displayed comments to the 3 most recent unless the user asks for more.

Examples

examples/deep_read_workflow.md

End-to-end walkthrough of a deep read for a Story with sub-tasks, blocking issues, and linked Confluence documentation.

FAQ

What does the researching-jira-issues skill do?

Use whenever the user mentions a Jira issue key and wants more than a surface-level lookup — "Read PROJ-123", "What's PROJ-123 about?", "Give me context on PROJ-123", "Deep dive PROJ-123", "What's blocking PROJ-123?", "Summarize PROJ-123 and its dependencies", "I need to work on PROJ-123, what should I know?", or any request to understand an issue's purpose, scope, or requirements. Thoroughly researches and synthesizes a Jira issue including all linked issues, sub-tasks, blocked dependencies, and supporting Confluence documentation.

How do I install researching-jira-issues?

Run npx skills add https://github.com/bitwarden/ai-plugins --skill researching-jira-issues in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/researching-jira-issues/ (personal) or .claude/skills/researching-jira-issues/ (project).

Which AI agents can use researching-jira-issues?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is researching-jira-issues safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains researching-jira-issues?

It is published by bitwarden in bitwarden/ai-plugins, and it is an official skill from the maker of the technology it covers. It has 68 recorded installs.

More from bitwarden/ai-plugins

View all →

Open the skill to read its SKILL.md instructions.

OfficialCode Quality & Workflow136 installs

threat-modeling

bitwarden/ai-plugins

This skill should be used when the user asks to "create a threat model", "define security goals", "generate a data flow diagram", "write security definitions", "perform an initial security assessment", or needs to produce threat model artifacts for new features or architecture changes.

OfficialSecurity118 installs

retrospecting

bitwarden/ai-plugins

Performs comprehensive analysis of Claude Code sessions, examining git history, conversation logs, code changes, and gathering user feedback to generate actionable retrospective reports with insights for continuous improvement.

OfficialCode Quality & Workflow117 installs

avoiding-false-positives

bitwarden/ai-plugins

Use this skill to validate findings during a code review. For each finding, run the rejection criteria and verification checks. If a finding fails any check, drop it. In PR mode it also holds the once-per-review stacked-PR gate that decides whether completeness findings apply to the pull request at all.

OfficialCode Quality & Workflow106 installs

reviewing-claude-config

bitwarden/ai-plugins

Open the skill to read its SKILL.md instructions.

Official106 installs

posting-review-summary

bitwarden/ai-plugins

Open the skill to read its SKILL.md instructions.

OfficialCode Quality & Workflow102 installs

Popular productivity & automation skills

View category →

agent-browser

vercel-labs/agent-browser

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.

OfficialProductivity & Automation1.3M installs

lark-doc

open.feishu.cn

飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。

lark-base

open.feishu.cn

飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。

lark-drive

open.feishu.cn

飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。

lark-shared

open.feishu.cn

Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.

lark-im

open.feishu.cn

飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。