CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

android

Workflow guide when working with Android builds or the mobile/ directory.

1.56x
Quality

77%

Does it follow best practices?

Impact

100%

1.56x

Average score across 3 eval scenarios

SecuritybySnyk

—

The risk profile of this skill

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/android/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

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

The body is an exemplary environment-override skill: lean, dense with copy-paste-ready ./mach commands, and explicit about when each command applies and what its limits are. Guidance is organized into clear sections with conditions and alternatives rather than padded explanation. The only minor gap is that workflow rules are presented in parallel rather than as an explicit sequence with validation checkpoints.

DimensionReasoningScore

Conciseness

The body is lean and assumes Claude's competence: every line is a rule or command, and the only rationale given is information needed to apply the rule correctly ('because it skips android formatters', 'CI fetches the Robolectric jars only for modules with this file'). No padding and no explanations of concepts Claude already knows, so it matches anchor 5 rather than anchor 4's 'minor instances of over-explanation'.

5 / 5

Actionability

Fully executable, copy-paste-ready commands cover the common cases: './mach gradle ktfmtFormat detekt' for a fast feedback loop, './mach gradle [fenix|focus|components:<component>]:assembleDebug' for verification, './mach test <file-name>' / '{fenix,focus,ac,android-components,geckoview}', plus exact config edits ('testImplementation libs.robolectric', 'robolectric.properties with sdk=37'). Alternatives and anti-patterns ('Don't run ./mach test with --auto') are also concrete, matching anchor 5.

5 / 5

Workflow Clarity

Clear decision guidance with explicit trigger conditions and an error-recovery path: run './mach build' only 'when new changes are pulled into the work tree, or if ./mach gradle ... commands do not succeed', and use ktfmtFormat/detekt when lint is too slow for the feedback loop. It falls short of anchor 5 because the content is a set of parallel rules rather than an explicitly sequenced workflow with validation checkpoints, though no destructive/batch cap applies.

4 / 5

Progressive Disclosure

The skill is under 50 lines with no bundle files (no references/, scripts/, or assets/ exist) and three well-organized sections, so the simple-skill guideline applies. Its single reference, 'mobile/android/fenix/docs/Tech-Principles.md', is one level deep, clearly signaled, and points into the target repo rather than creating nested skill references, matching anchor 5's easy navigation.

5 / 5

Total

19

/

20

Passed

Description

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

The description has a clear, explicit trigger condition and a distinct Android niche, but the capability statement is a bare category ('Workflow guide') with no concrete actions, leaving the 'what' underspecified. Keyword coverage is thin relative to the many natural terms (fenix, gradle, focus-android) this skill actually serves. It reads as a scope declaration rather than a capability description.

Suggestions

Replace the vague 'Workflow guide' with concrete capabilities, e.g. 'Build, lint, format, and test Android frontend code (fenix, focus-android, android-components) using ./mach commands instead of gradlew.'

Add natural trigger terms users would actually say: 'fenix', 'focus-android', 'android-components', 'gradle', 'Kotlin', 'Robolectric', 'Android builds', 'mobile/ directory'.

Keep the explicit 'when working with...' clause and extend it to mention the specific directories (mobile/android/fenix, mobile/android/focus-android, mobile/android/android-components) so both 'what' and 'when' are fully concrete.

DimensionReasoningScore

Specificity

The description names a specific domain ('Android builds or the mobile/ directory') but the only capability stated is the generic category 'Workflow guide' — no concrete actions like building, linting, or testing are listed. It is above anchor 1 (pure abstract language) because the domain is concrete, but below anchor 3, which requires 1-2 named concrete actions.

2 / 5

Completeness

The 'when' is explicit ('when working with Android builds or the mobile/ directory') but the 'what' is vague: 'Workflow guide' names no capability, so it does not reach anchor 4, whose 'what' lists actual actions ('Extract text from PDFs and fill forms'). It is above anchor 2 because a 'when' clause is clearly present, not absent.

3 / 5

Trigger Term Quality

'Android builds' and 'mobile/ directory' are relevant, natural triggers (paralleling the anchor-3 example 'Works with PDF files'), but coverage stops at two terms. Missing common variations users would say: 'fenix', 'focus-android', 'android-components', 'gradle', 'Kotlin', 'lint', 'assembleDebug' — so it falls short of anchor 4's good keyword coverage.

3 / 5

Distinctiveness Conflict Risk

'Android builds' carves a clear, distinct niche with minimal conflict risk, matching anchor 4 ('mostly distinct; minor overlap risk'). Not anchor 5 because the trigger 'the mobile/ directory' is broader than Android and could overlap with a closely related non-Android mobile skill; not anchor 3 because the Android-specific framing is genuinely distinguishing.

4 / 5

Total

12

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

mozilla/enterprise-firefox

Path

.agents/skills/android/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.