CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

testing-ci

Decide what to run locally before pushing Meshtastic-Android, and read the CI pipeline. Use this whenever you finish a change and need the right verification for its change type, when a CI job fails or is skipped, or when you need to know why the merge queue behaved the way it did.

Quality

80%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./.skills/testing-ci/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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 high-quality, deeply knowledgeable body: nearly every sentence carries non-obvious project-specific guidance with executable commands and honest edge-case warnings. Its main weakness is structural — it is a long single-file monograph where the CI-pipeline reference material would be better placed in a separate referenced file.

Suggestions

Move sections 4 (CI Pipeline Architecture), the Runner Strategy tiers, and CI Conventions into a references/ci-pipeline.md file, keeping SKILL.md as an overview that links to it — this would address progressive disclosure and shrink the always-loaded token cost.

Replace the vague matrix row 'worker/service/background changes: Broad tests, targeted WorkManager checks' with the concrete Gradle tasks to run, and define what 'flavor unit tests if available' means in practice.

Drop the '## Description' section (it restates the frontmatter) and tighten the merge-queue-hygiene and cache-write paragraphs to the facts that change local decisions.

DimensionReasoningScore

Conciseness

The body is dense with project-specific facts Claude cannot know (detekt baseline task interplay, layoutlib color-emoji non-determinism, per-job cache-write rules) and assumes competence, but at ~150 lines there is trimmable material: the '## Description' section restates the frontmatter and the merge-queue/cache-write paragraphs run long. This fits 'efficient; minor instances of over-explanation' rather than the lean 'every token earns its place' level.

4 / 5

Actionability

Mostly executable: copy-paste Gradle invocations ('./gradlew spotlessApply spotlessCheck detekt detektTypeResolved assembleDebug test allTests'), full adb grant/start blocks, and concrete screenshot-test commands with the two-module distinction spelled out. Minor gaps remain — the 'worker/service/background changes: Broad tests, targeted WorkManager checks' row and 'plus flavor unit tests if available' are not executable — so it does not reach 'specific examples cover the common cases' fully.

4 / 5

Workflow Clarity

Clear sequence (baseline order, change-type matrix, flavor checks, screenshot and manual-testing sections) and the detekt-baseline regeneration flow even includes an explicit confirm-with-`detekt detektTypeResolved` feedback loop. Minor validation vagueness ('run spotlessCheck if practical', no guidance on what to do when a gate fails locally) keeps it below the 'explicit validation steps and checklists' level.

4 / 5

Progressive Disclosure

Headers and sections are well organized and navigation is easy, but there are no bundle files at all: the CI architecture (job-by-job descriptions), runner-tier strategy, and CI-conventions reference material — roughly half of a 150+ line body — is inlined rather than split into a reference file. This matches 'some structure... content that should be separate is inline'; it is not level 2 because structure is genuinely good and nothing is buried.

3 / 5

Total

15

/

20

Passed

Description

82%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: it states both purposes concretely, explicitly and richly specifies when to use the skill with natural trigger phrases, and is tightly scoped to a single project. The only soft spot is that the 'what' stays at the level of two general actions rather than enumerating the kinds of verification it helps choose.

DimensionReasoningScore

Specificity

Names the domain and two concrete actions ('Decide what to run locally before pushing', 'read the CI pipeline') but does not enumerate the specific verification actions, matching the '1-2 concrete actions, not comprehensive' anchor rather than the 'lists several specific actions' level above.

3 / 5

Completeness

Explicitly answers both what ('Decide what to run locally... and read the CI pipeline') and when, with a 'Use this whenever...' clause containing multiple concrete trigger phrases (change finished, CI job fails or is skipped, merge queue behavior). The 'when' is maximally explicit, so the anchor-4 'could be more explicit' level does not fit.

5 / 5

Trigger Term Quality

Natural user phrases like 'finish a change', 'CI job fails', 'CI job is skipped', 'merge queue', and 'before pushing' give good keyword coverage, though common variants such as 'build failed' or 'tests are red' are missing, keeping it below comprehensive synonym coverage.

4 / 5

Distinctiveness Conflict Risk

Names the specific project (Meshtastic-Android) and niche triggers (merge queue behavior, CI job skipped) that no generic skill would claim, giving a clear niche with minimal conflict risk.

5 / 5

Total

17

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 9 missing

Warning

Total

15

/

16

Passed

Repository

meshtastic/Meshtastic-Android

Path

.skills/testing-ci/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.