This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.
AI代理的 Expo 技能
Expo 提供的一份官方 AI 代理技能清单,用于构建、部署和调试 Expo 和 React Native 应用。
Expo Skills 是结构化的指导文件,用于教 AI 代理如何准确高效地构建、部署和调试 Expo 和 React Native 应用。它们可以与 Claude Code、Cursor、Codex 以及其他 AI 代理一起使用。
🌐 Expo Skills are structured instruction files that teach AI agents how to build, deploy, and debug Expo and React Native apps accurately and efficiently. They work with Claude Code, Cursor, Codex, and other AI agents.
安装 Expo 技能
🌐 Install Expo Skills
运行以下命令从 claude-plugins-official 市场安装官方 Expo 插件:
🌐 Run the following command to install the official Expo plugin from the claude-plugins-official marketplace:
- /plugin install expo@claude-plugins-official在命令行中,运行以下命令以安装官方 Expo 插件:
🌐 From the command line, run the following command to install the official Expo plugin:
- codex plugin add expo@openai-curated你也可以在 Codex 中打开 /plugins 并从 openai-curated 市场安装 expo。
🌐 You can also open /plugins in Codex and install expo from the openai-curated marketplace.
如果你已经为 Claude Code、Codex 或其他代理安装了 Expo Skills,Cursor 的最新版本会自动导入它们。打开 设置 > 规则、技能、子代理,确保 包含第三方插件、技能和其他配置 已启用(默认启用),然后 Expo Skills 会出现在 技能 列表中。
🌐 If you have already installed Expo Skills for Claude Code, Codex, or another agent, recent versions of Cursor import them automatically. Open Settings > Rules, Skills, Subagents, make sure Include third-party Plugins, Skills, and other configs is enabled (it is on by default), and the Expo Skills appear in the Skills list.
如果你尚未安装 Expo 技能,请使用 skills CLI 运行以下命令之一:
🌐 If you have not installed Expo Skills yet, run one of the following with the skills CLI:
- npx skills add expo/skills然后重新打开 Cursor 并确认技能是否出现在 设置 > 规则、技能、子代理 > 技能 下。
🌐 Then reopen Cursor and verify the skills appear under Settings > Rules, Skills, Subagents > Skills.
重要 Cursor 中的技能不会显示在斜杠命令(
/)菜单中。它们在你向代理提出与 Expo 相关的问题时会通过自动发现工作。
使用 skills CLI 向任何兼容的代理添加 Expo 技能:
🌐 Use the skills CLI to add Expo Skills to any compatible agent:
- npx skills add expo/skills可用的Expo技能
🌐 Available Expo Skills
以下技能可在 expo 插件中使用:
🌐 The following skills are available in the expo plugin:
| Skill | Description |
|---|---|
add-app-clip | Add an iOS App Clip target to an Expo app. Use when the user mentions App Clip, AASA, apple-app-site-association, appclips, smart app banner, or wants to ship a lightweight iOS Clip invoked from a URL alongside their parent app. |
building-native-ui | Complete guide for building beautiful apps with Expo Router. Covers fundamentals, styling, components, navigation, animations, patterns, and native tabs. |
eas-simulator | Run and control a user's app on a remote iOS/Android simulator hosted on EAS cloud. Always read before executing any eas simulator:* commands — it has the current syntax for this experimental API. Use whenever the user needs a simulator they can't run locally — 'run my app on a cloud simulator', 'use eas simulator to run/install/screenshot my app', 'I'm on Linux/Cursor and need an iOS device', 'no sim on this box / headless CI', 'let an agent click through my app and screenshot it', 'test my dev build on a remote sim with live reload', 'stream a sim's screen to my browser' — even when they don't say 'EAS Simulator' or 'cloud'. On a host WITHOUT a local simulator (Linux, CI, cloud sandbox) it's the default — just use it; on macOS, do NOT auto-trigger for a plain 'run on the simulator' — use it only for a cloud/remote/shareable sim, an iOS version they lack, or an agent-driven session. NOT for local sims (expo run:ios, Xcode, Android Studio), EAS Build/Update, web preview, or physical devices. |
eas-update-insights | Check the health of published EAS Updates: crash rates, install/launch counts, unique users, payload size, and the split between embedded and OTA users per channel. Use when the user asks how an update is performing, whether a rollout is healthy, how many users are on the embedded build vs OTA, or wants to gate CI on update health. |
expo-api-routes | Guidelines for creating API routes in Expo Router with EAS Hosting. |
expo-brownfield | Integrate Expo and React Native into an existing native iOS or Android app. Use when the user mentions brownfield, embedding React Native in a native app, AAR/XCFramework, or adding Expo to an existing Kotlin/Swift project. Covers both the isolated approach and the integrated approach. |
expo-cicd-workflows | Helps understand and write EAS workflow YAML files for Expo projects. Use this skill when the user asks about CI/CD or workflows in an Expo or EAS context, mentions .eas/workflows/, or wants help with EAS build pipelines or deployment automation. |
expo-deployment | Deploy Expo apps to production with EAS — build and submit to the iOS App Store, Google Play Store, and TestFlight, configure eas.json build and submit profiles, manage app versions and build numbers, publish App Store metadata and ASO, and deploy web bundles and API routes via EAS Hosting. Use whenever the user is preparing a production build, running eas build or eas submit, shipping to TestFlight, releasing or rolling out to the app stores, bumping version or build numbers, or setting up store listing metadata for an Expo app. |
expo-dev-client | Build Expo app for development. |
expo-examples | Expo's official example projects — the expo/examples repo of ~70 with-* integrations (Stripe, Clerk, Supabase, OpenAI, maps, Reanimated, SQLite, Skia, NativeWind, and more). Use when integrating a third-party library or service into an existing Expo app and you want the canonical, version-matched pattern to adapt, or when scaffolding a new project from one with npx create-expo --example. |
expo-module | Guide for creating and writing Expo native modules and views using the Expo Modules API (Swift, Kotlin, TypeScript). Covers module definition DSL, native views, shared objects, config plugins, lifecycle hooks, autolinking, and type system. Use when building or modifying native modules for Expo. |
expo-observe | Use for anything related to EAS Observe — adding expo-observe to an Expo project (AppMetricsRoot/ObserveRoot HOC, markInteractive, the useObserve hook, and the Expo Router / React Navigation integrations for per-route metrics), querying via the EAS CLI (eas observe:metrics-summary, observe:metrics, observe:routes, observe:events, observe:versions), or interpreting the resulting metrics (cold/warm launch, TTR, TTI, navigation cold/warm TTR, update download, and the TTI frameRate params for triaging slow startups). |
expo-tailwind-setup | Set up Tailwind CSS v4 in Expo with react-native-css and NativeWind v5 for universal styling. |
expo-ui | Build native UI with the @expo/ui package: real SwiftUI on iOS and Jetpack Compose on Android rendered from React in an Expo or React Native app. Covers universal cross-platform components (Host, Column, Row, Button, Text, List, and more imported from @expo/ui), drop-in replacements for popular React Native community libraries (BottomSheet, DateTimePicker, Slider, Menu, etc.), and platform-specific SwiftUI (@expo/ui/swift-ui, iOS only) and Jetpack Compose (@expo/ui/jetpack-compose, Android only) trees and modifiers. Use when adding or reviewing @expo/ui Host/RNHostView trees, building native-feeling UI where standard React Native components fall short (grouped settings forms with toggles, sections, menus, sheets, pickers, sliders), choosing between universal and platform-specific components, or replacing an RN community UI library with a native @expo/ui equivalent. Not for custom native modules, Expo Router navigation, Reanimated, or data fetching. |
native-data-fetching | Use when implementing or debugging ANY network request, API call, or data fetching. Covers fetch API, React Query, SWR, error handling, caching, offline support, and Expo Router data loaders (useLoaderData). |
upgrading-expo | Guidelines for upgrading Expo SDK versions and fixing dependency issues. |
use-dom | Use Expo DOM components to run web code in a webview on native and as-is on web. Migrate web code to native incrementally. |
web-to-native | Migrate an existing web React app to a native iOS/Android app with Expo. Use when the user wants to turn a website into a mobile app, port a Next.js/Vite/CRA React codebase to React Native, reuse web code on native incrementally, or asks how web idioms (the DOM, CSS, React Router, localStorage, window) map to native. This is the end-to-end migration guide; use the use-dom skill for the DOM-component mechanism itself. |
示例提示
🌐 Example prompts
在安装 Expo Skills 后尝试以下提示。你的 AI 代理将自动使用相应的技能:
🌐 Try the following prompts after installing Expo Skills. Your AI agent will automatically use the appropriate skill:
| 示例提示 | 使用的技能 |
|---|---|
| 构建带有表单和导航的设置界面 | building-native-ui |
| 在我的 Expo 项目中设置 Tailwind CSS | expo-tailwind-setup |
| 使用网页代码在我的原生应用中嵌入 recharts 图表 | use-dom |
| 在我的 Expo 应用中添加 SwiftUI 选择器组件 | expo-ui-swift-ui |
| 在 Jetpack Compose 中使用 Material Design 3 组件 | expo-ui-jetpack-compose |
| 如何将我的 Expo 应用部署到苹果 App Store? | expo-deployment |
| 创建一个在每次 PR 时构建的 CI/CD 工作流 | expo-cicd-workflows |
| 将我的项目升级到最新的 Expo SDK | upgrading-expo |
其他资源
🌐 Additional resources
expo/skills GitHub 仓库Browse the source for all available Expo Skills, or report issues.
提供给编码代理直接访问 Expo 和 EAS 服务的伴侣 AI 工具。