CtrlK
BlogDocsLog inGet started
Tessl Logo

ci-auto-fix

Diagnoses and fixes failing CI, verifies locally, pushes, and confirms the relevant checks pass on the resulting revision. Uses an evidence-gated mechanical path for narrow failures and deeper diagnosis for ambiguous or shared changes. Never weakens checks. Currently supports GitHub Actions through gh or GitHub MCP. Triggers on "CI is failing", "fix the CI", "the build is red", "auto-fix this PR's checks", or "/ci-auto-fix".

72

Quality

90%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exceptionally well-engineered instruction-only skill: a phased workflow with explicit validation gates, feedback loops, and stop conditions, written with no wasted tokens. The two gaps are the absence of any concrete gh command examples in the body (despite promising "Commands below show the `gh` path") and referenced bundle files that are not present alongside SKILL.md, one of which lives outside the skill directory.

Suggestions

Include one or two concrete `gh` command examples (e.g., fetching failed-run logs via `gh run view --log-failed`) in the body, since it currently promises 'Commands below show the `gh` path' but shows none, and the referenced rule files are not in the bundle.

Ship the referenced files (rules/anti-patterns.md, rules/verdicts.md, rules/confidence-gate.md, rules/ci-verification.md, rules/regression-detection.md, rules/self-improvement-loop.md, templates/plan-artifact.md) with the skill, or inline the minimal essentials — as delivered, every reference is a broken path.

Replace the out-of-bundle relative reference ../../../agents/shared/rules/github-access.md with either a bundled copy or a self-contained access-resolution step, since a cross-tree path breaks when the skill is installed or moved.

DimensionReasoningScore

Conciseness

The body is dense, directive, and free of padding — e.g., "Inspect one representative of a repeated signature, then confirm the other jobs share its command/environment" and "On a non-fast-forward rejection, resync and retry once; never force-push" — with zero explanations of concepts Claude already knows. Every token carries an instruction or constraint, matching the 'lean and efficient; every token earns its place' anchor.

5 / 5

Actionability

Guidance is highly concrete and directive ("Accept a PR URL, Actions run URL/ID, or check-run ID", "fetch logs once per run attempt, save them locally", "Maximum four fix-push cycles", "Abort a conflicting rebase and report the conflicting files"), but no executable commands appear in the body — it says "Commands below show the `gh` path" yet shows none, deferring all command syntax to referenced files that are not in this bundle. This sits between anchor 4 (mostly executable with minor gaps) and anchor 5 (fully executable, copy-paste ready); the missing concrete command examples keep it at 4.

4 / 5

Workflow Clarity

A clearly sequenced Phase 0–9 workflow with explicit validation checkpoints and feedback loops: local verification before push (Phase 5), "A local failure returns to diagnosis", "Any contradictory evidence, failed local verification, wider-than-expected diff... moves a mechanical fix into the diagnostic path", post-push CI verification with "Missing, pending, or inaccessible checks are not green", and bounded stop/revert criteria. This matches anchor 5's explicit validation, error-recovery loops, and checklists for a complex process.

5 / 5

Progressive Disclosure

The structure is exemplary in-text: references are one level deep, each loaded at the decision it supports ("Read [anti-patterns](./rules/anti-patterns.md) first. Load other references only at the decision they support"), covering verdicts, confidence gate, plan template, CI verification, and regression detection. However, none of the eight referenced files exist in the skill's bundle (no rules/, templates/, or references/ directories), and github-access.md is referenced via a fragile cross-tree relative path (../../../agents/shared/rules/github-access.md), so navigation cannot be verified — good structure with real organization gaps, matching anchor 4 rather than 5.

4 / 5

Total

18

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete third-person action list, an explicit trigger clause with natural user phrases, clear scope boundaries, and distinctive behavioral guarantees. The only gap is trigger synonym coverage (e.g., "tests are failing", "pipeline is broken").

DimensionReasoningScore

Specificity

The description lists multiple concrete, third-person actions — "Diagnoses and fixes failing CI, verifies locally, pushes, and confirms the relevant checks pass on the resulting revision" — plus a concrete two-path strategy and explicit tool support ("GitHub Actions through gh or GitHub MCP"), giving comprehensive coverage of the skill's capabilities. It exceeds anchor 4 because the action list is comprehensive rather than having minor gaps, and is not anchor 3 since far more than 1-2 actions are named.

5 / 5

Completeness

Both questions are answered explicitly: 'what' via the concrete action chain (diagnose, fix, verify locally, push, confirm checks) and 'when' via the "Triggers on" clause with concrete quoted trigger phrases. This matches anchor 5 exactly and is clearly above anchor 4, where the 'when' would only be implicit or less specific.

5 / 5

Trigger Term Quality

Explicit natural triggers are provided — "CI is failing", "fix the CI", "the build is red", "auto-fix this PR's checks", "/ci-auto-fix" — which are phrases users would naturally say. It falls short of anchor 5 because common variations like "tests are failing", "pipeline is broken/red", or "build failures" are missing, but it is clearly above anchor 3's 'missing common variations' since several distinct natural phrasings are present.

4 / 5

Distinctiveness Conflict Risk

It carves out a clear niche — automated CI fix-verify-push loops — with distinct triggers and a stated scope limit ("Currently supports GitHub Actions"), and behaviors like "verifies locally, pushes" and "Never weakens checks" distinguish it from generic debugging skills. Minimal conflict risk; not anchor 4, since the overlap with related skills is negligible given the explicit trigger list and scope.

5 / 5

Total

19

/

20

Passed

Validation

81%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 7 missing, 1 suspicious

Warning

Total

13

/

16

Passed

Repository
mthines/agent-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.