Scikit Learn
zLanqing/codex-claude-academic-skills
Machine learning in Python with scikit-learn. An agent skill from zLanqing/codex-claude-academic-skills.
Fetch detailed information about a Component Readiness regression from the Sippy API
$ npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install openshift-eng/ai-helpers fetch-regression-details --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/ci/skills/fetch-regression-details .claude/skills/fetch-regression-details && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "fetch-regression-details" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/ci/skills/fetch-regression-details into .claude/skills/fetch-regression-details/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fetch-regression-details", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/openshift-eng/ai-helpers/tree/main/plugins/ci/skills/fetch-regression-detailsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install openshift-eng/ai-helpers fetch-regression-details --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/ci/skills/fetch-regression-details .agents/skills/fetch-regression-details && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "fetch-regression-details" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/ci/skills/fetch-regression-details into .agents/skills/fetch-regression-details/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fetch-regression-details", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install openshift-eng/ai-helpers fetch-regression-details --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/ci/skills/fetch-regression-details .cursor/skills/fetch-regression-details && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "fetch-regression-details" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/ci/skills/fetch-regression-details into .cursor/skills/fetch-regression-details/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fetch-regression-details", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/openshift-eng/ai-helpers.git --path plugins/ci/skills/fetch-regression-details--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install openshift-eng/ai-helpers fetch-regression-details --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/ci/skills/fetch-regression-details .gemini/skills/fetch-regression-details && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "fetch-regression-details" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/ci/skills/fetch-regression-details into .gemini/skills/fetch-regression-details/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fetch-regression-details", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install openshift-eng/ai-helpers fetch-regression-detailsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/ci/skills/fetch-regression-details .github/skills/fetch-regression-details && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "fetch-regression-details" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/ci/skills/fetch-regression-details into .github/skills/fetch-regression-details/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fetch-regression-details", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install openshift-eng/ai-helpers fetch-regression-details --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/ci/skills/fetch-regression-details .opencode/skills/fetch-regression-details && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "fetch-regression-details" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/ci/skills/fetch-regression-details into .opencode/skills/fetch-regression-details/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fetch-regression-details", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
fetch-regression-detailsFetch detailed information about a Component Readiness regression from the Sippy API
Fetch Regression Details is an agent skill from openshift-eng/ai-helpers. Fetch detailed information about a Component Readiness regression from the Sippy API
Its SKILL.md is about 4.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `README.md`, `fetch_regression_details.py` and `test_fetch_regression_details.py`).
It sits in Data & Analytics. It works with Python. The repository describes itself as: Developer productivity tools for Claude Code & other AI assistants. The licence is Apache-2.0.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a627176. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Python), which the agent can run.
Shell commands in SKILL.md call:
python3jqcurlFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
sippy.dptools.openshift.orgprow.ci.openshift.orgredhat.atlassian.netFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Fetch Regression Details loads about 4.7k tokens when it runs. Until then it costs about 27 tokens; SKILL.md has 1,177 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from openshift-eng/ai-helpers at commit a627176, republished under its Apache-2.0 licence (© openshift-eng). 1,177 words, ~4,664 tokens.
.claude/skills/fetch-regression-details/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.This skill fetches detailed regression information from the Component Readiness API. It retrieves comprehensive data about a specific regression including test name, affected variants, release information, triage status, and related metadata.
Use this skill when you need to retrieve complete details about a Component Readiness regression, such as:
Network Access: Must be able to reach the Sippy API
curl -s https://sippy.dptools.openshift.org/api/healthPython 3: Python 3.6 or later
python3 --versionThe skill uses a Python script to fetch and parse regression data (including sample failed jobs):
# Path to the Python script
script_path="plugins/ci/skills/fetch-regression-details/fetch_regression_details.py"
# Fetch regression data in JSON format (includes failed jobs)
python3 "$script_path" <regression_id> --format json
# Or fetch as human-readable summary
python3 "$script_path" <regression_id> --format summaryThe script outputs structured JSON data that can be further processed:
# Store JSON output in a variable for processing
regression_data=$(python3 "$script_path" 34446 --format json)
# Extract specific fields using jq if needed
test_name=$(echo "$regression_data" | jq -r '.test_name')
component=$(echo "$regression_data" | jq -r '.component')
jira_keys=$(echo "$regression_data" | jq -r '.triages[].jira_key')
# Extract failed job URLs for analysis
failed_job_urls=$(echo "$regression_data" | jq -r '.sample_failed_jobs | to_entries[] | .value.failed_runs[] | .job_url')The structured data includes all necessary regression details:
{
"regression_id": 34446,
"test_name": "[sig-builds][Feature:Builds] custom build with buildah...",
"test_id": "openshift-tests:71c053c318c11cfc47717b9cf711c326",
"release": "4.22",
"base_release": "4.21",
"component": "Build",
"capability": "Builds",
"view": "4.22-main",
"opened": "2026-01-28T08:02:45.127153Z",
"closed": null,
"status": "open",
"last_failure": "2026-01-30T07:03:46Z",
"variants": [
"Architecture:amd64",
"Platform:metal",
"Network:ovn",
"Upgrade:none"
],
"max_failures": 18,
"triages": [
{
"id": 344,
"url": "https://redhat.atlassian.net/browse/OCPBUGS-74651",
"jira_key": "OCPBUGS-74651",
"type": "product",
"description": "RHCOS 10 metal ipv4 job permafailing on ipv6 network access",
"bug_id": 17817794,
"resolved": false,
"created_at": "2026-01-29T17:58:20.858051Z",
"updated_at": "2026-01-30T13:28:33.429963Z"
}
],
"analysis_status": -2,
"analysis_explanations": [
"Test is failing consistently across multiple job runs",
"Regression detected compared to baseline release"
],
"sample_failed_jobs": {
"periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-ipv4-rhcos10-techpreview": {
"pass_sequence": "FFFFFFFFFFFFFFFFFF",
"label_summary": {
"ErrImagePullQuay502BadGateway": 3
},
"failed_runs": [
{
"job_url": "https://prow.ci.openshift.org/view/gs/test-platform-results-public/logs/...",
"job_run_id": "2017184460591599616",
"start_time": "2026-01-30T10:33:47",
"test_failures": 3,
"job_labels": ["ErrImagePullQuay502BadGateway"]
}
]
},
"periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-techpreview": {
"pass_sequence": "SSFSSSSSSSS",
"label_summary": {},
"failed_runs": [
{
"job_url": "https://prow.ci.openshift.org/view/gs/test-platform-results-public/logs/...",
"job_run_id": "2016460830022832128",
"start_time": "2026-01-28T10:37:27",
"test_failures": 1,
"job_labels": []
}
]
}
},
"job_runs": [
{
"id": 2600,
"regression_id": 34446,
"prowjob_run_id": "2044678206610477056",
"prowjob_name": "periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-ipv4-rhcos10-techpreview",
"prowjob_url": "https://prow.ci.openshift.org/view/gs/test-platform-results-public/logs/periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-ipv4-rhcos10-techpreview/2044678206610477056",
"start_time": "2026-04-16T07:23:39Z",
"test_failures": 3
}
],
"test_details_url": "https://sippy.dptools.openshift.org/api/component_readiness/test_details?...",
"api_url": "https://sippy.dptools.openshift.org/api/component_readiness/regressions/34446"
}Note:
analysis_status: Integer status code from the regression analysis. Negative numbers indicate problems, with lower numbers representing more severe issues.analysis_explanations: List of human-readable explanations describing the status of the regression.sample_failed_jobs: Dictionary keyed by job name. Each job contains:pass_sequence: Chronological success/fail pattern for this specific job (newest to oldest). "S" = successful run, "F" = failing run. Example: "FFFFFSSS" shows 5 recent failures, then 3 older successes.label_summary: Dictionary of {label: count} aggregated across all failed runs for this job. A label appearing in many/all failed runs is a strong signal that the labelled symptom is the root cause. Labels are human-defined: a team member wrote a regex that matches specific artifact content and named the symptom (e.g., "ErrImagePullQuay502BadGateway"). If many or all failed runs share a label, prioritize investigating that symptom.failed_runs: List of failed runs for this job, sorted by start_time (newest first). Each run includes:test_failures: Total number of tests failing in the entire job run (not just the regressed test). High values (>10) indicate a mass failure run where the regressed test may be collateral damage rather than the primary problem.job_labels: List of symptom labels applied to this specific run. Labels are precise — they fire only when a human-defined regex matches job artifacts. An empty list means no known symptom was detected for this run.label_bugs: {label: [Jira keys]} for labels seen in sample_failed_jobs, from the public label catalog. On fetch failure, label_bugs_error is set instead — treat it as unknown, not "no bugs".job_runs: Complete list of all job runs where the failure was observed throughout the entire life of the regression (not just the last reporting period). Sorted by start_time (newest first). Each entry contains:id: Unique ID for this job run recordregression_id: The regression this run belongs toprowjob_run_id: The Prow job run IDprowjob_name: The Prow job nameprowjob_url: Direct URL to the Prow job runstart_time: ISO 8601 timestamp when the job startedtest_failures: Integer — total number of test failures in this job run. High values (e.g., >10) indicate a mass failure run where the regressed test may just be caught up in a larger issue rather than being the primary problemfetch_related_triages API to find regressions with shared job runs.The Python script handles common error cases automatically:
python3 fetch_regression_details.py 99999999
# Error: Regression ID 99999999 not found.
# Verify the regression ID exists in Component Readiness.python3 fetch_regression_details.py abc
# Error: Regression ID must be a positive integer, got 'abc'python3 fetch_regression_details.py 34446
# Error: Failed to connect to Sippy API: [Errno -2] Name or service not known
# Check network connectivity and VPN settings.python3 fetch_regression_details.py
# Usage: fetch_regression_details.py <regression_id> [--format json|summary]Exit Codes:
0: Success1: Error (invalid input, API error, network error, etc.)The API returns a JSON object with the following structure:
{
"id": 34446,
"view": "4.22-main",
"release": "4.22",
"base_release": "4.21",
"component": "Build",
"capability": "Builds",
"test_id": "openshift-tests:71c053c318c11cfc47717b9cf711c326",
"test_name": "[sig-builds][Feature:Builds] custom build with buildah...",
"variants": [
"Upgrade:none",
"Architecture:amd64",
"Platform:metal",
"Network:ovn"
],
"opened": "2026-01-28T08:02:45.127153Z",
"closed": {
"Time": "0001-01-01T00:00:00Z",
"Valid": false
},
"triages": [
{
"id": 344,
"created_at": "2026-01-29T17:58:20.858051Z",
"updated_at": "2026-01-30T13:28:33.429963Z",
"url": "https://redhat.atlassian.net/browse/OCPBUGS-74651",
"description": "Description of the triage",
"type": "product",
"bug_id": 17817794,
"resolved": {
"Time": "0001-01-01T00:00:00Z",
"Valid": false
}
}
],
"last_failure": {
"Time": "2026-01-30T07:03:46Z",
"Valid": true
},
"max_failures": 18,
"job_runs": [
{
"id": 2600,
"regression_id": 34446,
"prowjob_run_id": "2044678206610477056",
"prowjob_name": "periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-ipv4-rhcos10-techpreview",
"prowjob_url": "https://prow.ci.openshift.org/view/gs/test-platform-results-public/logs/...",
"start_time": "2026-04-16T07:23:39Z",
"test_failures": 3
}
],
"links": {
"self": "https://sippy.dptools.openshift.org/api/component_readiness/regressions/34446",
"test_details": "https://sippy.dptools.openshift.org/api/component_readiness/test_details?..."
}
}Key Fields:
id: Regression IDtest_name: Full test name with signature groupsrelease: Sample release (e.g., "4.22")base_release: Baseline release for comparison (e.g., "4.21")component: Component owning the testcapability: Higher-level capability areavariants: Array of variant key:value pairs (e.g., "Platform:metal", "Network:ovn")opened: ISO 8601 timestamp when regression was first detectedclosed: Object with Valid boolean and Time (valid if regression is closed)triages: Array of triage objects with JIRA URL, type, and resolution statusjob_runs: Array of all job runs where the failure was observed throughout the regression's entire life. Each entry includes prowjob_run_id, prowjob_name, prowjob_url, start_time, and test_failures (total failures in the run — high values indicate mass failure runs where the regression may be collateral damage)links.test_details: Direct URL to Sippy test details page with sample failures# Fetch regression 34446 in JSON format (includes failed jobs)
python3 plugins/ci/skills/fetch-regression-details/fetch_regression_details.py 34446 --format jsonExpected Output:
{
"regression_id": 34446,
"test_name": "[sig-builds][Feature:Builds] custom build with buildah...",
"test_id": "openshift-tests:71c053c318c11cfc47717b9cf711c326",
"release": "4.22",
"base_release": "4.21",
"component": "Build",
"capability": "Builds",
"status": "open",
"variants": ["Architecture:amd64", "Platform:metal", "Network:ovn"],
"triages": [
{
"jira_key": "OCPBUGS-74651",
"type": "product",
"resolved": false
}
],
"analysis_status": -2,
"analysis_explanations": [
"Test is failing consistently across multiple job runs",
"Regression detected compared to baseline release"
],
"sample_failed_jobs": {
"periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-ipv4-rhcos10-techpreview": {
"pass_sequence": "FFFFFFFFFFFFFFFFFF",
"failed_runs": [
{
"job_url": "https://prow.ci.openshift.org/view/gs/test-platform-results-public/logs/...",
"job_run_id": "2017184460591599616",
"start_time": "2026-01-30T10:33:47"
}
]
}
}
}# Fetch regression 34446 as formatted summary
python3 plugins/ci/skills/fetch-regression-details/fetch_regression_details.py 34446 --format summaryExpected Output:
Regression #34446 Details:
============================================================
Test Name: [sig-builds][Feature:Builds] custom build with buildah...
Release: 4.22 (baseline: 4.21)
Component: Build
Status: Open (opened: 2026-01-28)
Max Failures: 19
Triages:
- OCPBUGS-74651 (product, active): Description of the issue
Sample Failed Jobs (19 runs):
- periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-ipv4-rhcos10-techpreview
Run ID: 2017184460591599616
Started: 2026-01-30
URL: https://prow.ci.openshift.org/view/gs/test-platform-results-public/logs/...# Get all failed job URLs for analysis
script_path="plugins/ci/skills/fetch-regression-details/fetch_regression_details.py"
data=$(python3 "$script_path" 34446 --format json)
# Extract failed job URLs
echo "$data" | jq -r '.sample_failed_jobs | to_entries[] | .value.failed_runs[] | .job_url'Expected Output:
https://prow.ci.openshift.org/view/gs/test-platform-results-public/logs/periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-ipv4-rhcos10-techpreview/2017184460591599616
https://prow.ci.openshift.org/view/gs/test-platform-results-public/logs/periodic-ci-openshift-release-master-nightly-4.22-e2e-metal-ipi-ovn-ipv4-rhcos10-techpreview/2017131608699572224
...The script supports two output formats:
Returns structured JSON data with all regression fields:
{
"regression_id": 34446,
"test_name": "...",
"test_id": "...",
"release": "4.22",
"base_release": "4.21",
"component": "Build",
"capability": "Builds",
"view": "4.22-main",
"opened": "2026-01-28T08:02:45.127153Z",
"closed": null,
"status": "open",
"last_failure": "2026-01-30T07:03:46Z",
"variants": [...],
"max_failures": 19,
"triages": [...],
"analysis_status": -2,
"analysis_explanations": ["...", "..."],
"sample_failed_jobs": {...},
"test_details_url": "...",
"api_url": "..."
}Returns human-readable formatted summary:
Regression #34446 Details:
============================================================
Test Name: [sig-builds][Feature:Builds] custom build with buildah...
Release: 4.22 (baseline: 4.21)
Component: Build
Capability: Builds
Status: Open (opened: 2026-01-28)
Last Failure: 2026-01-30
Max Failures: 19
Analysis Status: -2
(Negative status indicates a problem - lower is more severe)
Analysis Explanations:
- Test is failing consistently across multiple job runs
- Regression detected compared to baseline release
Affected Variants:
- Architecture:amd64
- Platform:metal
- Network:ovn
- Upgrade:none
Triages:
- OCPBUGS-74651 (product, active): Description...
Test Details: https://sippy.dptools.openshift.org/...
API URL: https://sippy.dptools.openshift.org/api/...test_details_url provides links to sample job failures for further analysisstatus: "closed" and a non-null closed timestampvariants array shows all platform/topology combinations where the test is failing--format summary for human-readable outputanalysis_status is an integer where negative values indicate problems (lower = more severe)analysis_explanations provides human-readable context for the analysis statussample_failed_jobs is a dictionary keyed by job name, containing only jobs with at least one failed runpass_sequence string (newest to oldest) with "S" for successful runs and "F" for failed runslabel_summary dict aggregating job_labels across all failed runs for that job. This is the first place to look for a shared root cause: if most or all failed runs share a label, that symptom is almost certainly the root cause. Labels are human-defined and precise — they only fire when a regex written by a team member matches specific artifact content.test_failures (total tests failing in the job run) and job_labels (symptom labels for that specific run). Use test_failures > 10 as a signal for mass failure runs where the regressed test may be collateral damage.job_runs contains the complete history of all job runs where the failure was observed across the regression's entire lifetime, sorted by start_time (newest first). Use this to determine when failures started, how common they were, and which jobs are most affected. The test_failures field shows the total failure count in each run — high values (e.g., >10) indicate mass failure runs where the regression may just be caught up in a larger issue rather than being the primary problemci:prow-job-analysis (comprehensive Prow CI job failure analysis)/ci:analyze-regression (uses this skill)© openshift-eng, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files in plugins/ci/skills/fetch-regression-details of openshift-eng/ai-helpers.
Open the folder on GitHubat commit a627176
Fetch Regression Details next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Fetch Regression Details this skillopenshift-eng/ai-helpers | 120 | — | ~4.7k | Automated safety check: Pass | Apache-2.0 | |
| Scikit LearnzLanqing/codex-claude-academic-skills | 4.6k | 17 repos | ~3.9k | Automated safety check: Pass | BSD-3-Clause | |
| TimesFM Forecastinggoogle-research/timesfm | 34k | — | ~4.7k | Automated safety check: Pass | Apache-2.0 | |
| Excel and CSV Data Analysisbytedance/deer-flow | 83k | 4 repos | ~2.2k | Automated safety check: Pass | MIT | |
| StatsmodelszLanqing/codex-claude-academic-skills | 4.6k | 16 repos | ~4.9k | Automated safety check: Pass | BSD-3-Clause | |
| Scientific Figure MakingChenLiu-1996/figures4papers | 8.2k | — | ~557 | Automated safety check: Pass | Custom licence |
zLanqing/codex-claude-academic-skills
Machine learning in Python with scikit-learn. An agent skill from zLanqing/codex-claude-academic-skills.
google-research/timesfm
Forecasts any univariate time series zero-shot with Google's TimesFM model, returning point forecasts and calibrated prediction intervals without training.
bytedance/deer-flow
Analyzes uploaded Excel and CSV files with SQL through DuckDB, producing schema inspections, statistical summaries and exports to CSV, JSON or Markdown.
zLanqing/codex-claude-academic-skills
Statistical models library for Python. An agent skill from zLanqing/codex-claude-academic-skills.
ChenLiu-1996/figures4papers
Covers publication-ready matplotlib figures for academic papers, slides, and reports—bars, trends, scatter, heatmaps, and multi-panel layouts—with this…
Nuitka/Nuitka
Diagnose and fix ModuleNotFoundError in Nuitka standalone binaries caused by missing implicit imports.
openshift-eng/ai-helpers
Find and independently validate actionable reliability defects across OpenShift release jobs and presubmits, then export portable issue handoffs.
openshift-eng/ai-helpers
Fetch and address all PR review comments — categorize by priority, make code changes, post replies, and push.
openshift-eng/ai-helpers
Categorize Jira issues into Red Hat Sankey Activity Type categories using MCP Jira tools.
openshift-eng/ai-helpers
Decide whether a GitHub PR has unanswered authorized review comments or new required CI failures worth a follow-up agent.
openshift-eng/ai-helpers
Analyze OpenShift must-gather diagnostic data including cluster operators, pods, nodes, and network components.
openshift-eng/ai-helpers
Schema for the autodl JSON data file produced by payload-analysis for database ingestion — you must use this skill whenever generating the autodl JSON file
Works with
Categories
Fetch detailed information about a Component Readiness regression from the Sippy API. Fetch Regression Details is an agent skill from openshift-eng/ai-helpers.
Fetch Regression Details fits situations like: data & Analytics work in your project.
Run `npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a claude-code`. Or copy the skill folder (plugins/ci/skills/fetch-regression-details in openshift-eng/ai-helpers) into .claude/skills/fetch-regression-details in your project. Claude Code loads it when a task matches its description.
Run `npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a codex`. Or copy the skill folder (plugins/ci/skills/fetch-regression-details in openshift-eng/ai-helpers) into .agents/skills/fetch-regression-details in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add openshift-eng/ai-helpers --skill fetch-regression-details -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/fetch-regression-details, .gemini/skills/fetch-regression-details, .github/skills/fetch-regression-details and .opencode/skills/fetch-regression-details in your project.
Going by SKILL.md and its folder, Fetch Regression Details needs Python for the scripts in its folder and the command-line tools its instructions call (python3, jq and curl). Our summary lists: Python 3.
SKILL.md names 3 domains. In commands or code: sippy.dptools.openshift.org, prow.ci.openshift.org and redhat.atlassian.net; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Fetch Regression Details is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.7k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Fetch Regression Details: Scikit Learn (zLanqing/codex-claude-academic-skills, 4.6k stars), TimesFM Forecasting (google-research/timesfm, 34k stars), Excel and CSV Data Analysis (bytedance/deer-flow, 83k stars) and Statsmodels (zLanqing/codex-claude-academic-skills, 4.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
openshift-eng (a GitHub organization) maintains it in openshift-eng/ai-helpers, which has 120 GitHub stars. The repository holds 118 skills in this directory. The repository was last updated on October 6, 2026.
Source: openshift-eng/ai-helpers on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.