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 如何教导 AI 代理从零开始构建习惯追踪应用。
安装 Expo Skills
运行以下命令,从 claude-plugins-official 市场安装官方 Expo 插件:
- /plugin install expo@claude-plugins-official在命令行中运行以下命令,安装官方 Expo 插件:
- codex plugin add expo@openai-curated你也可以在 Codex 中打开 /plugins,并从 openai-curated 市场安装 expo。
如果你已经为 Claude Code、Codex 或其他代理安装了 Expo Skills,Cursor 的较新版本会自动导入它们。打开 Settings > Rules, Skills, Subagents,确保已启用 Include third-party Plugins, Skills, and other configs(默认情况下已开启),然后 Expo Skills 就会出现在 Skills 列表中。
如果你还没有安装 Expo Skills,请使用 skills CLI 运行以下命令之一:
- npx skills add expo/skills然后重新打开 Cursor,并验证这些 skills 是否出现在 Settings > Rules, Skills, Subagents > Skills 下。
重要 Cursor 中的 Skills 不会显示在斜杠命令(
/)菜单中。它们通过自动发现机制工作:当你向代理提出与 Expo 相关的问题时,它会自动使用它们。
使用 skills CLI 为任何兼容的代理添加 Expo Skills:
- npx skills add expo/skills可用的 Expo 技能
以下技能可在 expo 插件中使用。以 expo-* 前缀命名的技能用于 Expo 开源框架,以 eas-* 前缀命名的技能用于 EAS 服务。
Expo SDK 和框架
| Skill | Description |
|---|---|
expo-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. |
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-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). |
expo-dev-client | Build and distribute Expo development clients locally or via TestFlight for internal testing. For production TestFlight releases and store submission, use the eas-app-stores skill. |
expo-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. For the end-to-end migration of a whole web app, use the expo-web-to-native skill. |
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. Not for migrating an existing Swift module from the definition DSL to the Expo Modules API 2.0 macros; use expo-migrate-module (from the expo-experiments plugin) for that. |
expo-native-ui | Build beautiful, native-feeling Expo screens. Covers Apple HIG styling, semantic colors, native controls, SF Symbols, media, animations, visual effects, gradients, storage, and responsive layout. For routing and navigation, use the expo-router skill. |
expo-project-structure | Folder structure for a new Expo app. Use when scaffolding or laying out a new Expo project with Expo Router, or deciding where a file should live in one. For new projects only — never restructure an existing app to match. |
expo-router | Navigation and routing for Expo Router. Covers file-based routes, groups and dynamic routes, folder organization, Link with previews and context menus, native Stack, page titles, modals and form sheets, NativeTabs, headers and toolbars, and header search bars. |
expo-skill-feedback | Submit feedback on an Expo skill—or Expo itself—and control bundled anonymous usage telemetry (off by default / opt-in). Submit feedback with: npx --yes submit-expo-feedback@latest "ACTIONABLE_FEEDBACK". Optionally add either or both: --category "CATEGORY" and --subject "SUBJECT". Replace the uppercase placeholders before running. Use when a skill was useful, confusing, broken, missing context, or worth improving; when Expo, Expo CLI, EAS CLI, docs, or MCP worked well or fell short; or when the user explicitly asks to enable or disable telemetry, check its status, or understand what it collects. |
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. |
expo-upgrade | Guidelines for upgrading Expo SDK versions and fixing dependency issues. |
expo-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 expo-dom skill for the DOM-component mechanism itself. |
Expo Application Services(EAS)
| Skill | Description |
|---|---|
eas-app-stores | Deploy Expo apps to the app stores 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, and publish App Store metadata and ASO. Use whenever the user wants to deploy, release, or ship an app to production or the app stores, is preparing a production build, running eas build or eas submit, shipping to TestFlight, bumping version or build numbers, or setting up store listing metadata. For deploying an Expo website or API routes, use the eas-hosting skill. |
eas-hosting | Deploy Expo websites and Expo Router API routes to EAS Hosting - export the web bundle, run eas deploy for production and PR preview URLs, manage environment secrets and custom domains, and work within the Cloudflare Workers runtime. Also covers authoring API routes (+api.ts handlers, HTTP methods, request handling, CORS). Use when deploying an Expo web app or API routes, setting up EAS Hosting, or configuring hosting environments and domains. Not for native builds or store releases - use the eas-app-stores skill for those. |
eas-observe | Use for anything related to EAS Observe - adding expo-observe to an Expo project (AppMetricsRoot/ObserveRoot HOC, markInteractive, the useObserve hook, the Expo Router / React Navigation integrations for per-route metrics, and user-defined events via Observe.logEvent), 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). |
eas-simulator | Run and control a user's app on a remote iOS/Android simulator hosted on EAS cloud. Read before running 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 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; 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 Update: 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. |
eas-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 Skills 后,可以尝试以下提示词。你的 AI 代理会自动使用合适的 skill:
| 示例提示词 | 使用的 Skill |
|---|---|
| 构建一个带有原生风格控件的设置界面 | expo-native-ui |
| 为我的应用添加标签导航和模态框 | expo-router |
| 在我的 Expo 项目中设置 Tailwind CSS | expo-tailwind-setup |
| 使用网页代码将 recharts 图表嵌入到我的原生应用中 | expo-dom |
| 为我的 Expo 应用添加一个 SwiftUI 选择器组件 | expo-ui |
| 使用 Material Design 3 组件和 Jetpack Compose | expo-ui |
| 我该如何将我的 Expo 应用部署到 Apple App Store? | eas-app-stores |
| 创建一个在每个 PR 上构建的 CI/CD 工作流 | eas-workflows |
| 将我的项目升级到最新的 Expo SDK | expo-upgrade |
其他资源
expo/skills GitHub 代码仓库浏览所有可用 Expo Skills 的源代码,或报告问题。
为编码代理提供直接访问 Expo 和 EAS 服务的配套 AI 工具。