Back to Skills

mcore-create-issue

Investigate a failing GitHub Actions run or job and create a GitHub issue for the failure.

2,773stars323forksUpdated 8/3/2026

Security Assessment

Safe(92/100)
Security Score92/100

About mcore-create-issue

This skill investigates a failing GitHub Actions run or job and files a well-structured bug issue against the NVIDIA/Megatron-LM repository. It solves the tedious triage problem of turning a CI failure URL into an actionable, deduplicated, and correctly assigned issue. It triggers when a user shares a GitHub Actions URL and asks to create an issue, file a bug, or triage a CI failure, and it is user-invocable with the URL as its argument.

The workflow parses the run or job URL, identifies failed jobs (asking which to triage when several failed), and fetches logs via the gh CLI, filtering for error-bearing lines to extract failed pytest node IDs and a concise traceback. It resolves the triggering pull request from the run's head branch and determines the failing test file's most recent author by querying commit history on the appropriate base branch or the PR's own commits, to assign the issue. Before creating anything, it searches open issues for the same test and, if a duplicate exists, reports it and stops rather than filing a new one. Otherwise it creates a bug-labeled issue using a structured template that links the PR, run, and job, includes a capped error snippet, and assigns the test author. It closes by reporting the resulting issue URL. The skill ships with benchmark and eval artifacts documenting that it passed NVIDIA's NVSkills-Eval.

It targets NVIDIA Megatron-LM maintainers and CI on-call engineers who need consistent, low-effort failure triage. Its operations use the gh CLI for read-oriented log/PR queries plus a single issue-creation write; it does not run untrusted code, and it quotes actual log output rather than guessing root causes.

FAQ

What input does it take?

A GitHub Actions URL, either a run URL or a specific job URL for the NVIDIA/Megatron-LM repository. It extracts the run_id and, when present, the job_id from it.

How does it avoid creating duplicate issues?

Before filing, it searches open issues for the failing test filename. If a matching open issue exists it reports that issue and stops without creating a new one; only if none is found does it file a new issue.

Who gets the issue assigned to them?

The most recent author of the failing test file, resolved by querying commit history on the PR's base branch or the PR's own commits. If the author lookup fails (for example a bot commit), it skips assignment and notes that in the issue.

What tooling does it rely on?

The GitHub CLI (gh) for viewing runs and jobs, fetching logs, resolving PRs and commit authors, searching issues, and creating the issue. It reads logs and metadata and performs a single issue-creation write.

How does it determine root cause?

It does not guess. It extracts failed pytest node IDs and quotes the actual error message or traceback verbatim (capped at about 30 lines), linking to the full job log for details.

All Files

5 files
SKILL.md6.2 KB
View
BENCHMARK.md2.8 KB
View
evals/evals.json0.0 KB
View
skill.oms.sig4.5 KB
View
skill-card.md2.4 KB
View

Install mcore-create-issue

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill

Repository

nvidia/skills