CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ci-triage

Parse CI failures, identify failing job/step, classify as flake, regression, env, or config. Use in CI sweeper loops before any fix attempt.

Quality

85%

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

86%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.

A tight, well-structured instruction skill: an exact output template, concrete classification rules, and a justified untrusted-input safety section with zero padding. The main gaps are the absence of a worked triage example and the implicit mapping from flake/regression/config classifications to the minimal-fix/watch/escalate-human loop actions.

Suggestions

Make the classification-to-action mapping explicit (e.g. flake → watch, regression → minimal-fix, config → minimal-fix) so loop-action suggestions don't rely on inference.

Add one short worked example of a filled-in "Failure — branch @ sha" block to anchor the output format.

DimensionReasoningScore

Conciseness

The ~30-line body is lean throughout: a copy-paste output template, four one-line classification definitions ("flake: intermittent, passed on retry, no code change"), and one escalation rule. The only lengthy section, the untrusted-input block, earns its tokens because CI logs and PR text are exactly the untrusted inputs this skill ingests; nothing explains concepts Claude already knows.

5 / 5

Actionability

The markdown output template ("### Failure — branch @ sha ... Suggested loop action: minimal-fix | watch | escalate-human") is copy-paste ready and the classification criteria are concrete. It falls short of anchor 5 because there is no worked example of a triaged failure and the classification-to-action mapping is stated only for env ("Env failures → escalate-human").

4 / 5

Workflow Clarity

As a simple single-purpose skill under 50 lines, the single action (parse failure → classify → emit structured output → suggest loop action) is mostly unambiguous, and the "Actionable: yes | no" field acts as a checkpoint before the loop acts. Minor gaps — the flake/regression/config to loop-action mapping is left implicit and there is no verify step — keep it below the simple-skill 5.

4 / 5

Progressive Disclosure

The skill is under 50 lines with no need for external references, and the body is organized into three clear sections (Output per failure, Classification Rules, Untrusted input), meeting the rubric's simple-skill criterion for a 5. The HTML comment pointing at scripts/sync-untrusted-input.mjs is a generator artifact marker, not content navigation, so it does not affect the score.

5 / 5

Total

18

/

20

Passed

Description

80%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 concise, concrete, third-person description that states both capabilities and an explicit use condition with minimal conflict risk. Its main weakness is trigger phrasing: it uses internal loop terminology ("CI sweeper loops") and misses natural user variations like "build failure" or "flaky test".

Suggestions

Add natural trigger variations to the when-clause, e.g. "Use when a CI build fails, tests fail, or a pipeline breaks" alongside the sweeper-loop guidance.

Replace or gloss the jargon term "CI sweeper loops" with a plain-language equivalent so users outside the loop-engineering context can match the description to their need.

DimensionReasoningScore

Specificity

"Parse CI failures, identify failing job/step, classify as flake, regression, env, or config" lists three concrete actions plus four named classification categories, covering the skill's full capability set with no padding. This matches the comprehensive-coverage anchor; the 4 anchor would apply only if a capability were left unnamed.

5 / 5

Completeness

It explicitly answers both questions: the "what" ("Parse CI failures, identify failing job/step, classify as flake, regression, env, or config") and an explicit "when" clause ("Use in CI sweeper loops before any fix attempt"). The when is present so it clears the cap of 3, but "CI sweeper loops" is internal jargon rather than concrete user-facing trigger situations, keeping it below anchor 5.

4 / 5

Trigger Term Quality

"CI failures", "flake", and "regression" are terms users naturally say, giving good keyword coverage, but common variations like "build failure", "failing tests", "flaky test", or "pipeline broken" are missing. Above anchor 3 (more than partial keyword coverage) but short of anchor 5's synonym/variation comprehensiveness.

4 / 5

Distinctiveness Conflict Risk

The pre-fix triage niche with distinct vocabulary (flake/regression/env/config, "before any fix attempt") is mostly distinct with only minor overlap risk against a hypothetical general CI-fixing or debugging skill. Not 5 because a sibling CI-debugging skill could plausibly compete for the same triggers; not 3 because it is far more specific than a generic domain claim.

4 / 5

Total

17

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

14

/

16

Passed

Repository

cobusgreyling/loop-engineering

Path

starters/ci-sweeper/.grok/skills/ci-triage/SKILL.md

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.