# Expo Skill Eval

Evaluate Expo skills in this repo end-to-end - trigger accuracy, generated code...

- Repository: https://github.com/expo/skills (4005 stars)
- Category: Testing
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add expo/skills --skill expo-skill-eval -g -a claude-code -y`
Codex: `npx skills add expo/skills --skill expo-skill-eval -g -a codex -y`
Cursor: `npx skills add expo/skills --skill expo-skill-eval -g -a cursor -y`
Gemini CLI: `npx skills add expo/skills --skill expo-skill-eval -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add expo/skills`

## Description

Evaluate Expo skills in this repo end-to-end - trigger accuracy, generated code quality, and runtime screenshots on iOS simulator and Android emulator via Expo Go (web optional). Use when the user wants to eval an Expo skill, test that a skill produces working code, benchmark a skill with device screenshots, or verify a skill's output renders correctly.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Expo Skill Eval

Evaluates skills in `plugins/expo/skills/` for trigger accuracy, generated code quality, and/or runtime rendering in Expo Go.

Requirements: macOS with Xcode (iOS simulators), Android SDK with at least one AVD, and `bun`. No other device tooling is assumed.

Workspace root: `/private/tmp/expo-skill-eval-<skill-name>/iteration-N/` (e.g. `/private/tmp/expo-skill-eval-expo-ui/iteration-4/`).

## Before starting, clarify scope

**Confirm all of the following up front, before any pipeline work, don't skip any** (only skip a given item if the request already states that choice). Batch them into `AskUserQuestion` calls of ≤4 questions each, in this order:

1. **Which skill** to eval (if not clear from the request).
2. **Prompts**, which prompts drive the eval. Built-in prompts (from the skill's eval cases) are **pre-selected all**; drop any, add a custom text prompt, or **build from an uploaded screenshot** (a target UI the skill must reproduce). See **Prompts** below.
3. **What to verify**, one multi-select of three options: Runtime + screenshots / Trigger accuracy / Code checks (no device). See *What to verify* below.
4. **Expo SDK**, latest (default, auto-detected) or a pinned version.
5. **Runner**, Expo Go (default) or development build.
6. **Platforms**, iOS / Android / web (always offer all three).
7. **Permission flag** for `claude -p`, skip-permissions (default) or accept-edits.
8. **Viewer delivery**, local only (default) or publish a shareable Artifact.
9. **If trigger accuracy is selected**, confirm the published `expo` plugin is disabled (or not installed).

Each is detailed below. Items 4, 6 (SDK, runner, platforms) fit naturally in one `AskUserQuestion` call.

**If the skill to eval is not clear from the request**, list available skills from `plugins/expo/skills/` and ask which one to evaluate.

The rest: https://github.com/expo/skills/blob/HEAD/.claude/skills/expo-skill-eval/SKILL.md
