Skip to content

feat(skill): summarize jira issues & PR reviews#26

Merged
jpuzz0 merged 7 commits intopatternfly:mainfrom
andrew-ronaldson:pr-review-summary
Apr 20, 2026
Merged

feat(skill): summarize jira issues & PR reviews#26
jpuzz0 merged 7 commits intopatternfly:mainfrom
andrew-ronaldson:pr-review-summary

Conversation

@andrew-ronaldson
Copy link
Copy Markdown
Contributor

@andrew-ronaldson andrew-ronaldson commented Mar 18, 2026

summarize-issues
This Skill pulls information from the Atlassian MCP and provides a summary of tasks for a user.

The output outlines tasks by priority and makes recommendations on how to approach the workload.

Further exploration will be done in a follow up to refine the skill outputs

summarize-pr-reviews
This skill takes all PRs that are awaiting your review and gives a quick summary of the changes, time to review and recommended order.

Summary by CodeRabbit

  • New Features
    • Added a skill to summarize your assigned Jira issues and organize them by sprint status and contributor involvement.
    • Added reference guides and patterns for designing AI-powered user experiences and product demos.
    • Added a skill to summarize GitHub pull requests awaiting your review with prioritization signals and estimated review time.

…ributions. Enhanced description and workflow steps to prioritize active sprint tasks, fetch contributor issues, and provide a sprint-focused summary output.
@andrew-ronaldson andrew-ronaldson changed the title feat(skill): summarize jira issues feat(skill): summarize jira issues & PR reviews Mar 19, 2026
@@ -0,0 +1,243 @@
---
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Skills need to live under plugins/<plugin-name>/skills/ to be discovered — .cursor/skills/ isn't the right location. These are workflow/project management skills, so plugins/pf-workflow/skills/summarize-issues/ would be the right home.

@@ -0,0 +1,289 @@
---
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above — needs to move to plugins/pf-workflow/skills/summarize-pr-reviews/.


First, get the user's Atlassian account info and accessible resources.

```
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The exact MCP tool calls with full parameter lists are over-prescribing implementation — the AI already knows how to use these tools. Describing the intent in plain language (e.g. "query active sprint issues assigned to the current user, ordered by priority") and letting the AI figure out the tool calls would keep this shorter and more maintainable.

First, get the authenticated GitHub user's information.

```
get_me()
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same pattern here — the exact search_issues() and get_pull_request() calls with parameters could be replaced with plain language intent like "find open PRs requesting my review, sorted by most recently updated."

@jpuzz0
Copy link
Copy Markdown
Collaborator

jpuzz0 commented Apr 1, 2026

@coderabbitai full review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 1, 2026

✅ Actions performed

Full review triggered.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 1, 2026

Warning

Rate limit exceeded

@jpuzz0 has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 49 minutes and 40 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 49 minutes and 40 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 18e2f2d1-ba75-489e-8e89-a8b5c6dc150c

📥 Commits

Reviewing files that changed from the base of the PR and between 4320770 and ceea183.

📒 Files selected for processing (2)
  • plugins/issue-management/skills/summarize-jira-issues/SKILL.md
  • plugins/react/skills/ai-experience-patterns/SKILL.md

Warning

.coderabbit.yaml has a parsing error

The CodeRabbit configuration file in this repository has a parsing error and default settings were used instead. Please fix the error(s) in the configuration file. You can initialize chat with CodeRabbit to get help with the configuration file.

💥 Parsing errors (1)
Validation error: String must contain at most 250 character(s) at "tone_instructions"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Walkthrough

Added four new skill documentation files defining AI-powered workflows: summarize-jira-issues for aggregating Jira issues, ai-experience-patterns for UI/UX design guidance in AI-powered features, summarize-pr-reviews for GitHub pull request review prioritization, and reference materials for AI experience pattern examples.

Changes

Cohort / File(s) Summary
Jira Issue Summarization Skill
plugins/issue-management/skills/summarize-jira-issues/SKILL.md
Documents workflow to identify user identity, fetch assigned and contributor issues, analyze sprint commitments, and generate structured markdown summaries with categorization and focus recommendations.
React AI Experience Patterns Skill
plugins/react/skills/ai-experience-patterns/SKILL.md, plugins/react/skills/ai-experience-patterns/references/README.md
Defines AI/UX design patterns skill with pattern categories (loading states, input, output, errors, transparency, streaming) and establishes reference directory structure for visual do/don't examples with naming conventions and export instructions.
PR Review Summarization Skill
plugins/repo-management/skills/summarize-pr-reviews/SKILL.md
Specifies workflow to identify user identity, fetch open PRs awaiting review, analyze PR characteristics (size, priority signals, complexity), and generate prioritized output with review time estimates and suggested order.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately captures the main additions in the changeset: two new skills for summarizing Jira issues and PR reviews, which are the primary changes across multiple new files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

♻️ Duplicate comments (2)
.cursor/skills/summarize-issues/SKILL.md (1)

1-1: ⚠️ Potential issue | 🟠 Major

Relocate this skill to the plugin skills tree.

Placing it in .cursor/skills/... conflicts with the repo’s documented plugins/<plugin-name>/skills/... layout for contributed skills.

Based on learnings: "Applies to plugins/*/skills/** : Create a directory under the plugin's skills/ folder with the pattern plugins/<plugin-name>/skills/your-skill/ when adding a skill to an existing plugin".

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.cursor/skills/summarize-issues/SKILL.md at line 1, The summarize-issues
skill (SKILL.md) is in the global .cursor skills tree but must live under a
plugin's skills tree; move the "summarize-issues" SKILL.md into the target
plugin’s skills directory by creating a new folder for the skill under that
plugin’s skills area (e.g., <plugin>-skills/your-skill/), place SKILL.md there,
and update any references or exports that point to
".cursor/skills/summarize-issues/SKILL.md" so they reference the new
plugin-scoped location; ensure the skill directory name remains
"summarize-issues" and metadata in SKILL.md (if any) is unchanged.
.cursor/skills/summarize-pr-reviews/SKILL.md (1)

1-1: ⚠️ Potential issue | 🟠 Major

Move this skill under plugins/<plugin-name>/skills/ for discovery.

This file location (.cursor/skills/...) does not match the repo’s skill placement convention and may prevent normal plugin discovery workflows.

Based on learnings: "Applies to plugins/*/skills/** : Create a directory under the plugin's skills/ folder with the pattern plugins/<plugin-name>/skills/your-skill/ when adding a skill to an existing plugin".

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.cursor/skills/summarize-pr-reviews/SKILL.md at line 1, The SKILL.md for the
"summarize-pr-reviews" skill is placed under .cursor/skills which breaks plugin
discovery; move the skill into your plugin's skills directory by creating
plugins/<plugin-name>/skills/summarize-pr-reviews/ and relocating SKILL.md there
(and update any internal references or imports to point to the new location) so
the skill follows the plugins/*/skills/** discovery pattern.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.cursor/skills/summarize-issues/SKILL.md:
- Line 22: Several fenced code blocks in SKILL.md lack language labels causing
MD040 failures; add appropriate fence labels (e.g., text, jql, json, bash)
immediately after each opening ``` for the blocks referenced (lines noted in the
review: 22, 34, 45, 60, 82) so markdownlint recognizes the language and improves
readability—edit each ``` to ```text or ```jql (or another suitable language)
depending on the block content.
- Line 235: Replace the phrase "High priority backlog" with the hyphenated
compound adjective "High-priority backlog" in the document; locate the exact
occurrence shown in the diff (the line containing **High priority backlog (not
in sprint):**) and update it to **High-priority backlog (not in sprint):** to
correct hyphenation.

In @.cursor/skills/summarize-pr-reviews/SKILL.md:
- Line 21: Multiple fenced code blocks in SKILL.md trigger markdownlint MD040
because they lack language identifiers; update each triple-backtick fence (``` )
used throughout the document — including the occurrences noted around the
examples — to include an explicit language token such as text, jql, or markdown
(e.g., ```text, ```jql, ```markdown). Search for bare ``` blocks in the SKILL.md
content and add the appropriate language label to each fence so all examples
satisfy MD040 while keeping the fence content unchanged.

---

Duplicate comments:
In @.cursor/skills/summarize-issues/SKILL.md:
- Line 1: The summarize-issues skill (SKILL.md) is in the global .cursor skills
tree but must live under a plugin's skills tree; move the "summarize-issues"
SKILL.md into the target plugin’s skills directory by creating a new folder for
the skill under that plugin’s skills area (e.g., <plugin>-skills/your-skill/),
place SKILL.md there, and update any references or exports that point to
".cursor/skills/summarize-issues/SKILL.md" so they reference the new
plugin-scoped location; ensure the skill directory name remains
"summarize-issues" and metadata in SKILL.md (if any) is unchanged.

In @.cursor/skills/summarize-pr-reviews/SKILL.md:
- Line 1: The SKILL.md for the "summarize-pr-reviews" skill is placed under
.cursor/skills which breaks plugin discovery; move the skill into your plugin's
skills directory by creating plugins/<plugin-name>/skills/summarize-pr-reviews/
and relocating SKILL.md there (and update any internal references or imports to
point to the new location) so the skill follows the plugins/*/skills/**
discovery pattern.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 7f673561-701d-4808-89ac-e32742955e2f

📥 Commits

Reviewing files that changed from the base of the PR and between 0e20625 and f6f7b16.

📒 Files selected for processing (2)
  • .cursor/skills/summarize-issues/SKILL.md
  • .cursor/skills/summarize-pr-reviews/SKILL.md


First, get the user's Atlassian account info and accessible resources.

```
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Specify languages for fenced code blocks (MD040).

Add fence labels (text, jql, etc.) to satisfy markdownlint and improve readability.

Also applies to: 34-34, 45-45, 60-60, 82-82

🧰 Tools
🪛 markdownlint-cli2 (0.22.0)

[warning] 22-22: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.cursor/skills/summarize-issues/SKILL.md at line 22, Several fenced code
blocks in SKILL.md lack language labels causing MD040 failures; add appropriate
fence labels (e.g., text, jql, json, bash) immediately after each opening ```
for the blocks referenced (lines noted in the review: 22, 34, 45, 60, 82) so
markdownlint recognizes the language and improves readability—edit each ``` to
```text or ```jql (or another suitable language) depending on the block content.

Comment thread plugins/issue-management/skills/summarize-jira-issues/SKILL.md Outdated

First, get the authenticated GitHub user's information.

```
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Add language identifiers to fenced code blocks.

markdownlint MD040 is triggered repeatedly; add explicit languages (e.g., text, jql, or markdown) to these fences.

Also applies to: 32-32, 42-42, 52-52, 66-66, 75-75, 84-84, 262-262, 267-267, 272-272, 277-277, 282-282, 287-287

🧰 Tools
🪛 markdownlint-cli2 (0.22.0)

[warning] 21-21: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.cursor/skills/summarize-pr-reviews/SKILL.md at line 21, Multiple fenced
code blocks in SKILL.md trigger markdownlint MD040 because they lack language
identifiers; update each triple-backtick fence (``` ) used throughout the
document — including the occurrences noted around the examples — to include an
explicit language token such as text, jql, or markdown (e.g., ```text, ```jql,
```markdown). Search for bare ``` blocks in the SKILL.md content and add the
appropriate language label to each fence so all examples satisfy MD040 while
keeping the fence content unchanged.

andrew-ronaldson and others added 3 commits April 2, 2026 15:51
…ol calls

Skills targeted stale plugin dirs (pf-workflow, pf-styling) that were
renamed in patternfly#50. Move summarize-jira-issues to issue-management,
summarize-pr-reviews to repo-management, and ai-experience-patterns to
react (with correct skills/ nesting).

Replace exact MCP function signatures with plain-language intent and
JQL-only queries. Make ai-experience-patterns reference images optional
so the skill functions without them. Fix frontmatter name mismatch
(summarize-issues -> summarize-jira-issues).
Copy link
Copy Markdown
Collaborator

@jpuzz0 jpuzz0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Moved the skills to the latest named plugin directories.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Duplicate comments (1)
plugins/issue-management/skills/summarize-jira-issues/SKILL.md (1)

197-197: ⚠️ Potential issue | 🟡 Minor

Use hyphenation for the compound adjective.

"High priority backlog" should be "High-priority backlog" when it modifies the noun that follows.

📝 Suggested fix
-**High priority backlog (not in sprint):**
+**High-priority backlog (not in sprint):**
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@plugins/issue-management/skills/summarize-jira-issues/SKILL.md` at line 197,
Replace the compound adjective "High priority backlog (not in sprint):" with
hyphenated form "High-priority backlog (not in sprint):" in the SKILL.md text
(update the header phrase "High priority backlog (not in sprint):"); also scan
for other occurrences of "High priority backlog" and apply the same hyphenation
to maintain consistency.
🧹 Nitpick comments (1)
plugins/react/skills/ai-experience-patterns/SKILL.md (1)

117-117: Rephrase to describe outcomes, not implementation.

Lines 117 and 134 instruct the AI to "read and display" reference images. This is implementation-focused rather than outcome-focused. The AI already knows how to work with files.

♻️ Suggested rewording to focus on outcomes

Line 117:

-- If reference images exist in the `references/` folder, read and display the relevant ones to the user
+- Include relevant visual examples from the `references/` folder when they exist

Line 134:

-The `references/` folder can contain visual examples of do's and don'ts for AI UX patterns. If populated, read and display relevant images when applying patterns. See `references/README.md` for the naming convention.
+The `references/` folder can contain visual examples of do's and don'ts for AI UX patterns. When available, incorporate relevant visual examples into your guidance. See `references/README.md` for the naming convention.

Based on learnings: Skills must describe outcomes, not implementation — tell the AI what to accomplish, not how to do it. The AI already knows how to use git, gh, grep, etc.

Also applies to: 134-134

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@plugins/react/skills/ai-experience-patterns/SKILL.md` at line 117, The
current wording in SKILL.md ("If reference images exist in the `references/`
folder, read and display the relevant ones to the user" at lines 117 and 134) is
implementation-focused; update both occurrences to describe the desired outcome
instead (e.g., instruct the AI to present the relevant reference images and
explain their relevance, help the user compare or annotate against them, or
summarize key visual differences) so the prompt specifies what the user should
receive rather than how the AI should access files.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@plugins/issue-management/skills/summarize-jira-issues/SKILL.md`:
- Line 197: Replace the compound adjective "High priority backlog (not in
sprint):" with hyphenated form "High-priority backlog (not in sprint):" in the
SKILL.md text (update the header phrase "High priority backlog (not in
sprint):"); also scan for other occurrences of "High priority backlog" and apply
the same hyphenation to maintain consistency.

---

Nitpick comments:
In `@plugins/react/skills/ai-experience-patterns/SKILL.md`:
- Line 117: The current wording in SKILL.md ("If reference images exist in the
`references/` folder, read and display the relevant ones to the user" at lines
117 and 134) is implementation-focused; update both occurrences to describe the
desired outcome instead (e.g., instruct the AI to present the relevant reference
images and explain their relevance, help the user compare or annotate against
them, or summarize key visual differences) so the prompt specifies what the user
should receive rather than how the AI should access files.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 165b8a73-77a1-483c-b4cb-ec0d11962e8b

📥 Commits

Reviewing files that changed from the base of the PR and between f6f7b16 and 4320770.

📒 Files selected for processing (4)
  • plugins/issue-management/skills/summarize-jira-issues/SKILL.md
  • plugins/react/skills/ai-experience-patterns/SKILL.md
  • plugins/react/skills/ai-experience-patterns/references/README.md
  • plugins/repo-management/skills/summarize-pr-reviews/SKILL.md
✅ Files skipped from review due to trivial changes (2)
  • plugins/react/skills/ai-experience-patterns/references/README.md
  • plugins/repo-management/skills/summarize-pr-reviews/SKILL.md

@jpuzz0 jpuzz0 merged commit 0a9a571 into patternfly:main Apr 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants