Expo Skill Eval
End-to-end testing for Expo skill triggering, code quality, and runtime rendering.
The skill requires upfront confirmation of scope, prompts, platforms, permissions, and viewer delivery, and constrains work to temporary paths; however, it permits installs, scripts, and device operations, while cleanup includes rm -rf and port-based process killing. General rollback and complete disclosure of network/external data flows are missing, so points are deducted.
The documentation provides phases, scripts, static checks, and failure-log locations, with some path-safety checks; however, the workflow depends on macOS, Xcode, Android SDK, bun, Expo Go, simulators, and non-interactive CLI behavior. Environment assumptions, test coverage, and recovery behavior are not sufficiently reproduced. The static-review ceiling is applied.
The audience, evaluation scenarios, runtime modes, platforms, and prompt-selection process are reasonably clear; however, the core workflow is primarily for a local macOS device environment, Chinese-language support is unspecified, and npm/bun, Claude CLI, Expo services, and overseas tooling may have uncertain reachability from mainland China.
The skill has front matter, a version, MIT metadata, staged documentation, script usage, a runtime matrix, grading rules, and viewer guidance; however, it lacks a clear maintainer, changelog, release/update responsibility, and systematic troubleshooting. Important constraints are also dispersed across a very long document.
It specifies an end-to-end pipeline from prompts and fixtures through static checks, screenshots, and grading, with concrete output schemas; however, this review cannot verify device execution, screenshot quality, trigger recall, or generated results, and the workflow has substantial environment and setup costs. The static-review ceiling is applied.
Committed scripts, a runtime matrix, grader instructions, and CI checks provide some auditability; however, CI does not cover the skill's key execution paths, and there are no committed end-to-end tests, real run artifacts, or third-party reproduction records to justify a higher score.
- Before execution, verify all temporary paths, ports, and simulator targets; the cleanup script deletes regenerable fixture contents and force-kills listeners on specific ports.
- The workflow depends on macOS/Xcode, the Android SDK, bun, Claude CLI, Expo Go, npm registry access, and related services, so it may not complete in mainland-China networks or without the required device toolchain.
- Static documentation does not prove trigger accuracy, generated-code correctness, runtime screenshots, or grader results.
What does this skill do, and when should you use it?
Expo Skill Eval is one skill in the Expo skills collection, designed to evaluate other Expo skills. It measures trigger accuracy, generated code quality, and runtime rendering through screenshots on iOS simulators, Android emulators, and optionally the web. The workflow requires macOS, Xcode, an Android SDK with an AVD, and bun, and can run projects through Expo Go or a development build. It is a strong fit for Expo skill maintainers, but not for users without the required local build and device environment.
It first confirms the target skill, prompts, verification dimensions, Expo SDK, runner, platforms, permission mode, and viewer delivery. It then creates evaluation cases and Expo fixtures, runs paired claude -p executors with and without the skill, checks TypeScript, Expo lint, and expo export, and launches the app on selected native or web platforms to capture screenshots. It generates a local viewer.html and grades the results using generated code, static-check output, screenshots, and Metro logs.
- An Expo skill maintainer wants to verify that realistic user prompts trigger the intended skill.
- A skill author wants an A/B comparison of generated Expo code with and without the skill.
- An engineer needs to verify that generated app code runs and renders on an iOS simulator or Android emulator.
- A CI or local evaluator wants TypeScript, lint, and export checks without launching a device.
What are this skill's strengths and limitations?
- Covers triggering, static code checks, runtime screenshots, and grading in one workflow.
- Provides paired with-skill and without-skill executor runs for comparison.
- Supports iOS, Android, optional web evaluation, Expo Go, and development builds.
- Requires macOS with Xcode, an Android SDK with at least one AVD, and bun.
- Runtime evaluation depends on local simulators or emulators; development builds add substantial native compilation overhead.
- The source provides no standalone test suite, success-rate data, or verified platform coverage.
How do you install this skill?
The README documents installation for the full expo/skills collection, not a standalone installation for expo-skill-eval. For Claude Code or Codex, install the official plugin with claude plugin install expo@claude-plugins-official or codex plugin add expo@openai-curated. Other supported agents can use npx skills@latest add expo/skills --skill '*'.
How do you use this skill?
After installing the collection, ask the agent something like “Evaluate the Expo skill end-to-end for trigger accuracy, generated code quality, and runtime screenshots.” Follow the prompts to select the skill, evaluation prompts, verification dimensions, SDK, runner, and platforms. The source describes a local simulator/emulator-oriented workflow but does not document a separate standalone command or minimal usage procedure.
How does this skill compare with similar options?
Expo documentation, Expo CLI, and EAS CLI are explicitly identified as the sources of truth; this skill evaluates how an agent applies that guidance rather than replacing those tools or references.