helpers/skills/jira-status-summary/SKILL.md
Update the Status Summary and Color Status fields on AIPCC Feature and Initiative tickets. Fetches child ticket activity via the jira-activity skill, generates a brief summary and sets the red/yellow/green color status. Use when asked to update the status summary for a Jira ticket.
npx skillsauth add opendatahub-io/ai-helpers jira-status-summaryInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Update the "Status Summary" and "Color Status" fields on an AIPCC Feature or Initiative ticket with an AI-generated summary and health color.
uv must be installed and available in PATHacli must be installed and authenticated (acli jira auth)JIRA_API_TOKEN environment variable must be set with a valid API token for https://redhat.atlassian.netJIRA_EMAIL environment variable must be set with the email address associated with your Atlassian accountjira-activity skill must be installed (provides child ticket activity data)This skill takes a single ticket key as input and writes a formatted status summary to the Jira "Status Summary" field and sets the "Color Status" dropdown.
If the user asks for a dry run (or uses the words "dry run", "preview",
"don't write", "show me first"), add --dry-run to the write command in
Step 5. This prints the formatted summary without writing to Jira, so the
user can review before committing.
[A-Z]+-\d+Fetch the previous Status Summary and Color Status from the ticket:
acli jira workitem view <TICKET-KEY> -f 'customfield_10814,customfield_10712' --json
Parse the JSON output to extract:
customfield_10814: the previous summary (rich-text / ADF content)customfield_10712: the previous color status ("Green", "Yellow", or
"Red")If either field is empty or unset, treat it as no previous value. Save both outputs for use in Step 4 -- the previous color provides trending context (e.g. improving from red to yellow).
If the command fails (e.g., due to permissions or network issues), continue with Step 3 and generate the summary without prior context.
Run the fetch script from the jira-activity skill to gather activity data
for the ticket and its entire child hierarchy. Execute the script directly
(not via python) relative to the jira-activity skill directory:
./scripts/fetch_jira_activity.py <TICKET-KEY> --days 30
The script outputs JSON to stdout containing the complete hierarchy of issues with levels, statuses, assignees, recent comments, and changelog entries.
Capture the full JSON output for analysis in the next step.
Analyze the JSON output from Step 3 and determine:
First, check the ticket's due date. If the due date is more than 14 days away, assign green — early-stage features with ample time remaining should not be penalized for low completion. Only override this to yellow or red if child tickets have explicit blockers (status "Blocked", flagged impediments, or unresolved dependency comments).
If the due date is 14 days away or fewer (or no due date is set), assign a color based on progress and risk:
Write a brief summary (2-4 sentences) for leadership consumption covering:
For yellow or red items, the summary must also include a description of the issue and a "path to green" (e.g. move dates, escalation, dependency resolution).
The summary must be self-contained and understandable without reading the child tickets. Do NOT include the date, color name, emoji, or disclaimer in the summary text -- those are added automatically by the script.
Run the write script located at scripts/write_status_summary.py relative
to this skill. Execute it directly (not via python) to invoke uv via the
shebang:
./scripts/write_status_summary.py <TICKET-KEY> --color <color> --summary "<summary text>"
# Or for dry run:
./scripts/write_status_summary.py <TICKET-KEY> --color <color> --summary "<summary text>" --dry-run
The script will:
Normal run: If the write succeeds, inform the user:
Updated the Status Summary and Color Status (<Color>) on <TICKET-KEY>. View: https://redhat.atlassian.net/browse/<TICKET-KEY>
Dry run: Show the formatted summary and ask:
Here is the status summary that would be written to <TICKET-KEY>:
(show the output)
Would you like me to write this to Jira?
If the user confirms, re-run Step 5 without --dry-run.
If the write fails, display the error message and suggest checking credentials and ticket permissions.
User: Update the status summary for AIPCC-12345
Assistant: [Fetches activity, analyzes, writes summary to Jira]
User: We're reviewing AIPCC-12345. Can you update the status?
Assistant: [Detects ticket from context, fetches activity, writes summary]
tools
Use this skill to filter a pre-fetched set of Hacker News stories down to those that report supply-chain security threats relevant to software developers — including malicious packages on npm or PyPI, compromised developer tooling, and attacks targeting source code repositories or CI/CD infrastructure. Reads stories from stories.json in the workspace, performs semantic analysis (fetching HN threads when the title alone is ambiguous), and writes the stories worth alerting on to findings.json.
development
Run hexora static analysis on a Python package repository to detect suspicious code patterns, then triage findings with deterministic rules and AI reasoning to produce a structured risk report section.
development
Inspect recent git history of a Python package repository for suspicious commits touching supply-chain-sensitive files, then triage findings with AI reasoning to produce a structured risk report section.
development
Scan a Python package repository for compiled/binary files using Fromager-style detection and malcontent YARA analysis, then triage findings with deterministic rules and AI reasoning to produce a structured risk report section.