OpenAI Skills
OpenAI Skills quickstart: evaluate GitHub CI diagnosis without granting repair authority
Use gh-fix-ci as a concrete skill evaluation: identify prerequisites, collect one failure report, distinguish unavailable logs and define a separate approval boundary for changes.
What you will learn
- Define the first successful outcome
- Trace the diagnostic path
- Check the report before considering a fix
Before you start
- Basic Git, Python and command-line concepts
- An explicit boundary for permitted repository inspection and changes
Explain the chapter’s source behavior and apply its acceptance checklist without confusing a catalog with its host.
Key takeaways
- Make a verifiable diagnostic report the first outcome.
- Distinguish failing checks, pending logs and retrieval errors.
- Keep diagnosis authority separate from repair and publication.
Define the first successful outcome
A useful first task is not “fix everything.” Choose one pull request in a repository you are authorized to inspect and require a diagnosis containing the failing check, run link, relevant log context and a proposed next step. Preserve uncertainty when logs are unavailable. This produces an artifact that can be checked before anyone authorizes a source edit or rerun.
The pinned gh-fix-ci instructions require the GitHub CLI and authentication, with access appropriate to the repository and workflow. They permit an explicit pull-request identifier and otherwise resolve the current branch’s pull request. That default is convenient but makes the working directory part of the input: a report from the wrong checkout can be technically correct and still answer the wrong question.
Trace the diagnostic path
The helper requests structured check fields and can retry with fields advertised by an older or different gh command when the initial field request is rejected. It classifies failure-like conclusions, states and buckets, then attempts to read run metadata and logs. A log still in progress is represented separately from a log that cannot be retrieved; neither state is evidence that a repair worked.
The workflow text limits external providers to reporting their details URL. The Python helper’s run-id extraction is a path-pattern heuristic rather than a verified hostname check, so an integrator should enforce that scope before treating any arbitrary link as a GitHub Actions run. Instructions and helper behavior need to be evaluated together, not assumed to be identical.
Check the report before considering a fix
The example command below is a reference for an already reviewed helper in an authorized checkout; it was not executed against an account in this review. Its nonzero exit code can indicate detected failures, not merely a broken script. An automation must inspect the report and error context instead of interpreting every nonzero result as an installation problem.
Acceptance requires the correct repository and commit, enough log context to support the diagnosis, explicit missing-evidence labels and no unauthorized edits. Compare the snippet with the surrounding log before naming a root cause. The next permission decision is separate: approval to inspect a pull request does not automatically authorize changing files, pushing a branch or opening a pull request.
Implementation steps
- 1
Select an authorized repository and explicit pull request.
- 2
Inspect the skill and helper before execution.
- 3
Run the helper only with intended account access and retain the report.
- 4
Verify evidence and obtain separate approval for changes.
Copy-ready example
python /path/to/reviewed/gh-fix-ci/scripts/inspect_pr_checks.py --repo /path/to/authorized-checkout --pr 123 --jsonFrequently asked questions
Does a nonzero exit code always mean the helper failed?
No. The inspected helper also returns a nonzero exit code after reporting failing checks. Inspect its structured output and errors.
Were real pull requests inspected for this article?
No. The review used fixed source and invented inputs for isolated functions; no account or live CI was accessed.
Sources
- README.mdSource checked 2026-09-08
- skills/.system/skill-installer/SKILL.mdSource checked 2026-09-08
- skills/.system/skill-installer/LICENSE.txtSource checked 2026-09-08
- skills/.system/skill-installer/scripts/install-skill-from-github.pySource checked 2026-09-08
- skills/.system/skill-installer/scripts/github_utils.pySource checked 2026-09-08
- skills/.system/skill-installer/scripts/list-skills.pySource checked 2026-09-08
- skills/.system/skill-creator/scripts/quick_validate.pySource checked 2026-09-08
- skills/.system/skill-creator/references/openai_yaml.mdSource checked 2026-09-08
- skills/.curated/gh-fix-ci/SKILL.mdSource checked 2026-09-08
- skills/.curated/gh-fix-ci/scripts/inspect_pr_checks.pySource checked 2026-09-08
- skills/.curated/gh-fix-ci/agents/openai.yamlSource checked 2026-09-08
- skills/.system/plugin-creator/SKILL.mdSource checked 2026-09-08
- Current official skills guideSource checked 2026-09-08