expo-skill-eval

Evaluates Expo skills for trigger accuracy, code quality, and runtime rendering on simulators.

Updated Sep 11, 2026
One-click install
npx skills add https://github.com/CYRUS-pinto/pi-bot --skill expo-skill-eval-cyrus-pinto
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: expo-skill-eval
Source: https://github.com/CYRUS-pinto/pi-bot/tree/main/.agents/skills/expo-skill-eval
Command: npx skills add https://github.com/CYRUS-pinto/pi-bot --skill expo-skill-eval-cyrus-pinto

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Verifying that an Expo skill actually works—triggers on the right prompts, generates compiling code, and renders correctly on real devices—requires a slow manual loop of building apps, booting simulators, and eyeballing screenshots. This Skill automates that entire end-to-end evaluation pipeline. ## Core Features & Use Cases - Trigger Accuracy Testing: Runs realistic prompts through claude -p subprocesses and measures recall of whether the skill under test gets triggered. - A/B Code Generation: Executes each eval prompt with-skill and without-skill in fresh Expo fixtures, then gates output on tsc, lint, and expo export. - Runtime Screenshots: Runs generated apps on iOS simulator, Android emulator, or web via Expo Go or development builds, captures screenshots, and grades them against expectations or a reference image. - Results Viewer: Generates a self-contained HTML report comparing with-skill vs without-skill scores, screenshots, and design-quality rubric grades. - Use Case: After editing the expo-ui skill's description, run an eval to confirm trigger recall improved and that generated apps still render correctly on both platforms. ## Quick Start Ask the assistant to evaluate the expo-ui skill end-to-end with runtime screenshots on iOS and Android using the latest Expo SDK.

Frequently Asked Questions about expo-skill-eval

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I evaluate an Expo skill end-to-end?

Run the expo-skill-eval harness, which builds a fresh Expo fixture per prompt, executes the prompt with and without the skill via claude -p, runs a static gate (tsc, lint, expo export), and captures runtime screenshots on iOS and Android for grading.

How do I test whether a skill triggers on the right prompts?

Use the trigger eval phase, which runs should-trigger prompts through claude -p with --plugin-dir pointing at the local plugin and measures recall by watching for the skill's tool call. Disable any published copy of the plugin first so it does not collide with the local version.

Can I evaluate a skill that needs custom native code?

Yes, choose the development build runner, which compiles a native dev client per fixture with expo run:ios or expo run:android instead of using Expo Go. It is much slower and disk-heavy, so prefer fewer eval cases and a single platform.

Does the eval support web as a target platform?

Yes, web runs via snapshot-web.sh using expo start --web with Playwright and Chromium, regardless of the chosen runner. Universal @expo/ui components render on web, while platform-specific SwiftUI or Compose trees render blank there.

Why do snapshot runs fail when pinning an older Expo SDK?

Pinning an SDK older than the device's installed Expo Go makes expo start prompt to install a matching Expo Go, which fails in non-interactive mode and fails every snapshot. Stick with the latest SDK or pre-install a matching Expo Go on the simulator.

What are the requirements to run the Expo skill eval harness?

You need macOS with Xcode for iOS simulators, the Android SDK with at least one AVD, and bun installed. The harness handles fixture creation, Metro startup, and screenshot capture through its scripts.