← Browse

@mariasolos/fix-ci

B

Fetches failed and errored test details from CircleCI job test URLs using the CircleCI API v2. Use when the user provides a CircleCI tests URL and asks for errors, failures, test results, or help fixing CI.

skillclaude

Install

agr install @mariasolos/fix-ci --target claude

Writes 1 file into .claude/skills/, pinned to git-0d2aaf76.

  • .claude/skills/fix-ci/SKILL.md

Document


name: fix-ci description: Fetches failed and errored test details from CircleCI job test URLs using the CircleCI API v2. Use when the user provides a CircleCI tests URL and asks for errors, failures, test results, or help fixing CI.

Fix CI

Use this skill to turn a CircleCI web tests URL like:

https://app.circle.example.com/pipelines/github/example-org/example-repo/19060/workflows/887679f9-1f30-43a6-a600-7292d29b3edc/jobs/215974/tests

into API calls to CircleCI v2 and summarize failing/erroring tests.

Requirements

Make sure that the following environment variables are set in your environment. If not, raise an error.

  • CIRCLECI_TOKEN
  • CIRCLECI_API_BASE

For such test run [ -n "${CIRCLECI_TOKEN}" ] && echo "ENV OK" || echo "ERROR: MISSING ENV VAR"

Usage

From this skill directory:

python3 scripts/circleci_errors.py '<circleci-tests-url>'

Useful options:

python3 scripts/circleci_errors.py '<url>' --all        # print all tests, not just failed/error tests
python3 scripts/circleci_errors.py '<url>' --json       # emit normalized JSON
python3 scripts/circleci_errors.py '<url>' --base-url https://circle.example.com/api/v2

Workflow

  1. Parse the CircleCI web URL.
  2. Derive the project slug (github/org/repo from app URLs, accepted by CircleCI Server; public cloud also accepts gh/org/repo for cloud URLs).
  3. Call GET /api/v2/project/{project-slug}/{job-number}/tests, following pagination.
  4. Report tests whose result is failure, failed, error, or errored, including class/name/file/message/source where available.

If authentication fails, ask the user to provide/export a valid CircleCI token with permission to read the project/job.

Trustgrade B

  • passBody integrity

    Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.

  • passType matchnot applicable to this artifact type

    Whether the artifact is really the kind of thing its metadata claims it is.

  • passFreshness

    How long since the source repository was last pushed to.

  • passPrompt injection

    Scans the artifact's own text for instructions aimed at your agent rather than at you.

  • warnLicenseno SPDX license detected

    Whether the source repository declares an SPDX license permissive enough to redistribute.

How the grade is calculated

Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:

  • Aevery check passed
  • Bone warning
  • Ctwo warnings
  • Dprompt injection or body integrity failed, or three warnings
  • Fone of those failed, and something else is wrong

These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.

Versions

  • git-0d2aaf7636f32026-07-31