CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

expo-dev-client

Build and distribute Expo development clients locally or via TestFlight

54

Quality

68%

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 ./plugins/expo/skills/expo-dev-client/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

68%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 a lean, command-first reference with concrete executable guidance and clear section organization. Its main weakness is workflow clarity: steps are sequenced but lack explicit validation checkpoints and error-recovery loops connecting the troubleshooting snippets to the build/install flows.

Suggestions

Add validation checkpoints between build and install, e.g. 'Verify the build completed: eas build:view or check build status before installing' and a post-install verification step (launch the app and confirm the dev client UI appears).

Tie the Troubleshooting section into the workflows as feedback loops (e.g. 'If the build fails with signing errors, run eas credentials, then retry the build command').

Trim or merge the 'Building for Specific Platform' section, which repeats platform flags already demonstrated in the TestFlight and local-build sections, and replace placeholder paths with concrete discoverable ones.

DimensionReasoningScore

Conciseness

The body is largely lean and command-driven with minimal conceptual explanation, matching anchor 4 ('efficient; minor instances of over-explanation that could be trimmed'). It is not 5 because the 'Building for Specific Platform' section largely repeats -p ios/-p android variants already shown, and the 'Using the Dev Client' feature bullets edge toward padding; it is not 3 because no section is genuinely unnecessary explanation.

4 / 5

Actionability

Concrete, executable commands appear throughout (eas build -p ios --profile development --local, tar -xzf build-*.tar.gz, xcrun simctl install booted, adb install build.apk, ideviceinstaller -i). It falls short of anchor 5's copy-paste-ready bar because of placeholder paths like './path/to/App.app' and 'build.ipa' the reader must substitute.

4 / 5

Workflow Clarity

The sequence is present and ordered (configure eas.json → build → submit → install → connect), with numbered steps for the TestFlight flow, but validation checkpoints are missing or implicit — no check that a build succeeded before installing, no verify step after install, and troubleshooting is a disconnected list rather than a feedback loop. This matches anchor 3 (steps listed but checkpoints missing/implicit), not 4.

3 / 5

Progressive Disclosure

No bundle files exist (no references/, scripts/, or assets/), and the 157-line body is organized into clear, well-labeled sections with content appropriately inline at this scale, matching anchor 4 ('good structure; most content appropriately placed; minor organization gaps'). It is not 5 because the skill exceeds the under-50-lines threshold where fully-inline content would be ideal, and a couple of sections (install instructions, troubleshooting) could be split out if the skill grows.

4 / 5

Total

15

/

20

Passed

Description

53%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 is concrete and third-person with a clear niche, but it lacks any 'Use when...' trigger clause and misses common synonyms like 'EAS' and 'development build'. It communicates what the skill does but not when Claude should reach for it.

Suggestions

Append an explicit trigger clause, e.g. 'Use when testing native code changes on a device, creating a custom Expo Go client, or when Expo Go is insufficient for custom native modules.'

Add natural trigger terms users would actually say: 'EAS build', 'development build', 'dev build', 'TestFlight', 'custom dev client'.

Broaden the action coverage slightly (e.g. 'configure, build, install, and distribute') so the 'what' reflects the full scope the body delivers.

DimensionReasoningScore

Specificity

The description names the domain ('Expo development clients') with two concrete actions ('Build and distribute') and delivery venues ('locally or via TestFlight'), matching the anchor for 1-2 concrete actions without comprehensive coverage. It is not anchor 4 because it omits other concrete actions the skill covers (configuring eas.json, installing builds, troubleshooting).

3 / 5

Completeness

The 'what' is clear (build and distribute Expo development clients locally or via TestFlight), but there is no 'Use when...' clause or equivalent explicit trigger guidance, which caps completeness at 3 per the rubric guidelines. It is not a 2 because the 'what' is concrete rather than vague.

3 / 5

Trigger Term Quality

'Expo development clients' and 'TestFlight' are relevant keywords, but common natural variations a user would say — 'EAS', 'development build', 'dev build', 'Expo Go' — are absent. This lands on anchor 3 (some relevant keywords, missing common variations/synonyms) rather than 4, since keyword coverage is thin beyond one domain term and one venue.

3 / 5

Distinctiveness Conflict Risk

'Expo development clients' and 'TestFlight' carve a fairly distinct niche with low conflict risk against unrelated skills; only minor overlap risk exists with closely related Expo/EAS build or iOS submission skills, matching anchor 4. It is not 5 because a generic 'Expo build' or 'iOS TestFlight' skill could still plausibly compete for the same triggers.

4 / 5

Total

13

/

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

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository

openai/plugins

Path

plugins/expo/skills/expo-dev-client/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.