{"id":3847,"external_id":"plugin_asdk_app_6a90296230f4819180d857f69ebe7f2e","name":"app-6a90296230f4819180d857f69ebe7f2e","display_name":"Expo","developer":"Expo","category":"Developer Tools","listing_language":"en","listing_language_details":{"method":"cld-0.13.0/listing-v1","reliable":true,"detected_at":"2026-10-01T13:22:02Z","input_sha256":"22b4d33532e60765407be562b325b6f149901aa616ed79c8dff83e40695ddd59","source_fields":["release.description","release.interface.short_description","release.interface.long_description"]},"version":"1.13.7","skill_count":24,"first_seen_at":"2026-09-30T22:02:35.000Z","last_seen_at":"2026-10-02T00:00:02.003Z","last_changed_at":"2026-09-30T22:02:35.000Z","install_count":null,"research_summary":null,"research_reviewed_at":null,"metadata":{"id":"plugin_asdk_app_6a90296230f4819180d857f69ebe7f2e","name":"app-6a90296230f4819180d857f69ebe7f2e","scope":"GLOBAL","status":"ENABLED","release":{"id":"pluginrel_2a4c4fc785c481918f8b599e4f2b509d","skills":[{"name":"eas-app-stores","interface":{"brand_color":null,"iconography":"bolt","display_name":"EAS App Stores","default_prompt":"Use $eas-app-stores to set up or verify EAS builds, TestFlight and store submissions, signing, versioning, and store metadata for iOS and Android apps: Expo and other React Native projects, plus existing native apps.","icon_large_url":null,"icon_small_url":null,"short_description":"Paid EAS service. Build and submit iOS and Android apps."},"description":"EAS service (paid). Build and submit iOS and Android apps with EAS to TestFlight, the App Store, or Google Play. Supports Expo and other React Native projects, plus existing native apps. Use for eas.json setup, release pipelines, signing, app versions and build numbers, store submissions, and listing metadata. For Expo websites and API routes, use eas-hosting; for adding React Native screens to a native app, use expo-brownfield.","plugin_release_skill_id":"pluginrsk_6ab57d459ebc81919071ebb34e8007f9"},{"name":"eas-hosting","interface":{"brand_color":null,"iconography":"code","display_name":"EAS Hosting","default_prompt":"Use $eas-hosting to deploy an Expo web app or Expo Router API routes to EAS Hosting, author +api.ts route handlers, manage hosting environment secrets and custom domains, and work within the Cloudflare Workers runtime.","icon_large_url":null,"icon_small_url":null,"short_description":"Paid EAS service. Deploy Expo websites and Expo Router API routes to EAS Hosting, with environment secrets, custom domains, and the Cloudflare Workers runtime"},"description":"EAS service (paid). 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.","plugin_release_skill_id":"pluginrsk_6ab57d47bff8819184dba0e72a574473"},{"name":"eas-observe","interface":{"brand_color":null,"iconography":"chart","display_name":"EAS Observe","default_prompt":"Use $eas-observe to add expo-observe instrumentation (AppMetricsRoot/ObserveRoot, useObserve, ObserveInteractiveMarker, the router integrations, error reporting), query metrics with eas observe:* commands, and interpret cold/warm launch, TTR, and TTI results.","icon_large_url":null,"icon_small_url":null,"short_description":"Paid EAS service. Set up expo-observe app metrics and query launch, route, event, and version performance with the EAS CLI"},"description":"EAS service (paid). Use for anything related to EAS Observe - adding `expo-observe` to an Expo project (AppMetricsRoot/ObserveRoot HOC, markInteractive and ObserveInteractiveMarker, the useObserve hook, the Expo Router / React Navigation integrations for per-route metrics, user-defined events via `Observe.logEvent`, error reporting via ObserveErrorBoundary and `Observe.reportError`, and runtime config such as sampleRate and dispatchInDebug), querying via the EAS CLI (`eas observe:metrics-summary`, `observe:metrics`, `observe:routes`, `observe:events`, `observe:session`, `observe:versions`), interpreting the resulting metrics (cold/warm launch, TTR, TTI, navigation cold/warm TTR, update download, and the TTI frameRate/device/network params for triaging slow startups), or shipping an Observe integration inside a third-party package.","plugin_release_skill_id":"pluginrsk_6ab57d4939b08191bf74f02bf6502157"},{"name":"eas-simulator","interface":{"brand_color":null,"iconography":"cursor","display_name":"EAS Simulator","default_prompt":"Use $eas-simulator to run, install, screenshot, and drive an app on a remote EAS cloud simulator - especially when no local simulator is available (Linux, CI, cloud agents) or a shareable browser preview is needed.","icon_large_url":null,"icon_small_url":null,"short_description":"Paid EAS service. Run and drive your app on a remote iOS/Android simulator on EAS cloud, from the CLI or an agent, with a live browser preview"},"description":"EAS service (paid). 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.","plugin_release_skill_id":"pluginrsk_6ab57d4a9c9c81919caa03983c095eec"},{"name":"eas-update","interface":{"brand_color":null,"iconography":"code","display_name":"EAS Update","default_prompt":"Use $eas-update to configure EAS Update, publish a compatible OTA update to the intended channel, test it in development or release builds, and debug channel or runtime-version mismatches.","icon_large_url":null,"icon_small_url":null,"short_description":"Paid EAS service. Configure, publish, test, and debug over-the-air updates with expo-updates and EAS CLI"},"description":"EAS service (paid). Configure and use EAS Update for over-the-air JavaScript and asset updates with expo-updates and EAS CLI. Use when setting up OTA updates, running eas update:configure or eas update, publishing to preview/staging/production channels, explaining branches/channels/runtime versions, testing updates, or debugging why an installed build still shows old code. Load for TestFlight, preview, or production updates that do not appear, including questions about cold launches or reopening the app. Not for update health metrics; use eas-update-insights for adoption, crashes, and rollout monitoring.","plugin_release_skill_id":"pluginrsk_6ab57d4bb51c81918066a4b04756399c"},{"name":"eas-update-insights","interface":{"brand_color":null,"iconography":"chart","display_name":"EAS Update Insights","default_prompt":"Use $eas-update-insights to inspect published EAS Update with eas-cli, compare rollout health, gather update or channel metrics, parse JSON output, and gate releases on aggregate update performance.","icon_large_url":null,"icon_small_url":null,"short_description":"Paid EAS service. Check EAS Update health, adoption, crash rates, launch counts, payload size, and OTA vs embedded usage"},"description":"EAS service (paid). 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.","plugin_release_skill_id":"pluginrsk_6ab57d4c64848191bbf5672845065471"},{"name":"eas-workflows","interface":{"brand_color":null,"iconography":"code","display_name":"EAS Workflows","default_prompt":"Use $eas-workflows when creating or editing .eas/workflows YAML, validating EAS workflow configuration, or answering questions about workflow triggers, jobs, runners, and expressions.","icon_large_url":null,"icon_small_url":null,"short_description":"Paid EAS service. Write and validate EAS workflow YAML files for Expo projects"},"description":"EAS service (paid). 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.","plugin_release_skill_id":"pluginrsk_6ab57d4e92d88191929e5d0f9518bac5"},{"name":"expo-animation","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Animation","default_prompt":"Use $expo-animation to build a polished, accessible animation for this Expo app.","icon_large_url":null,"icon_small_url":null,"short_description":"Build polished Expo and React Native animations"},"description":"Framework (OSS). Build animations in React Native and Expo, making the decisions in the order that determines whether they feel right — should it animate, which thread it runs on, which properties, spring or timing, how the gesture hands off, how it degrades. Writes the implementation with Reanimated, Gesture Handler, Expo Router and expo-haptics. Use when animating anything in an Expo app, adding gestures, sheets, screen transitions, press feedback or haptics, or fixing motion that stutters on device. For web animation use `animate`.","plugin_release_skill_id":"pluginrsk_6ab57d50281481919b494796be60ba0e"},{"name":"expo-app-clip","interface":{"brand_color":null,"iconography":"code","display_name":"Expo App Clip","default_prompt":"Use $expo-app-clip when adding or reviewing an iOS App Clip target for an Expo app, including bundle IDs, associated domains, AASA files, smart app banners, App Store Connect setup, and TestFlight verification.","icon_large_url":null,"icon_small_url":null,"short_description":"Add an iOS App Clip target to an Expo app with AASA, associated domains, and TestFlight setup (needs an Apple Developer account)"},"description":"Framework (OSS). 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.","plugin_release_skill_id":"pluginrsk_6ab57d5305b88191aeb4bc0a24b62c23"},{"name":"expo-brownfield","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Brownfield","default_prompt":"Use $expo-brownfield when adding Expo or React Native to an existing native app, choosing isolated vs integrated brownfield architecture, embedding SwiftUI/UIKit screens or AAR/XCFramework outputs, wiring Gradle or CocoaPods, and troubleshooting native integration issues.","icon_large_url":null,"icon_small_url":null,"short_description":"Embed Expo screens in existing native iOS and Android apps"},"description":"Framework (OSS). Integrate Expo and React Native into an existing native iOS or Android app. Use for brownfield, embedding a React Native screen in SwiftUI/UIKit or Kotlin, or AAR/XCFramework packaging. Covers isolated and integrated approaches. For building or distributing a purely native app with EAS, use eas-app-stores.","plugin_release_skill_id":"pluginrsk_6ab57d5502d08191b1a781d29f5889ec"},{"name":"expo-data-fetching","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Data Fetching","default_prompt":"Use $expo-data-fetching for Expo data fetching work: fetch wrappers, React Query or SWR setup, error handling, retry/cancellation, authenticated requests, environment-based API URLs, offline behavior, and Expo Router loaders.","icon_large_url":null,"icon_small_url":null,"short_description":"Implement and debug Expo network requests, caching, auth, offline support, and Expo Router data loaders"},"description":"Framework (OSS). Use when implementing or debugging ANY network request, API call, or data fetching. Covers fetch API, React Query, SWR, error handling, caching, offline support, loading/empty/error screen states, and Expo Router data loaders (`useLoaderData`).","plugin_release_skill_id":"pluginrsk_6ab57d574bcc819190a0b1a02038c514"},{"name":"expo-design-system","interface":{"brand_color":null,"iconography":"hierarchy","display_name":"Expo Design Systems","default_prompt":"Use $expo-design-system to set up or maintain the app's design system: create the src/theme token files, shape reusable components with variant/size/state props, decide when a repeated view becomes a shared component, and audit screens for design-system drift (hardcoded style values).","icon_large_url":null,"icon_small_url":null,"short_description":"Build a design system in an Expo app: a token theme (color, spacing, typography, radius, shadow, motion), reusable component conventions, and audits for design-system drift (hardcoded style values)"},"description":"Framework (OSS). Build and maintain a design system inside an Expo app - a reusable theme of design tokens (color, spacing, typography, radius, shadow, motion), reusable component structure with variant/size/state prop conventions, and rules for when to extract a repeated view into a shared component. Use when creating or organizing theme files and design tokens (theme.ts / theme/), extending an existing theme or styling library (NativeWind, Tamagui, Restyle, Unistyles) in its own idiom, standardizing styles so screens (including AI-generated ones) look consistent and polished, fixing an app that looks AI-generated or generic instead of native (the named native-slop tells), building an in-app component library, or auditing an app for design-system drift (hardcoded colors, spacing, fonts). For platform styling specifics (semantic colors, HIG rules, native controls) use expo-native-ui; for folder layout of a new app use expo-project-structure.","plugin_release_skill_id":"pluginrsk_6ab57d584db481919a7dec974d4f214c"},{"name":"expo-dev-client","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Dev Client","default_prompt":"Use $expo-dev-client to decide whether an Expo development client is required, configure development EAS profiles, build local or cloud dev clients, and connect them to Metro.","icon_large_url":null,"icon_small_url":null,"short_description":"Create and use Expo development clients when Expo Go is not enough"},"description":"Framework (OSS). 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.","plugin_release_skill_id":"pluginrsk_6ab57d5ad6f48191818eb0c82c1ff147"},{"name":"expo-dom","interface":{"brand_color":null,"iconography":"code","display_name":"Expo DOM Components","default_prompt":"Use $expo-dom to migrate web components into Expo via 'use dom', configure DOM props, expose native actions safely, use web-only libraries, and keep DOM components separate from native routes.","icon_large_url":null,"icon_small_url":null,"short_description":"Use Expo DOM components to run web React code in native webviews and unchanged on web"},"description":"Framework (OSS). 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.","plugin_release_skill_id":"pluginrsk_6ab57d5bdf508191a0ae07608c620e8c"},{"name":"expo-examples","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Examples","default_prompt":"Use $expo-examples when integrating a third-party library or service into an Expo app to find the canonical with-* example to adapt, or to scaffold a new project with npx create-expo --example.","icon_large_url":null,"icon_small_url":null,"short_description":"Adapt or scaffold from the expo/examples repo of with-* integrations (Stripe, Clerk, Supabase, maps, SQLite, and more)"},"description":"Framework (OSS). 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`.","plugin_release_skill_id":"pluginrsk_6ab57d5d51a881919e15d4b370c61039"},{"name":"expo-module","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Module","default_prompt":"Use $expo-module to scaffold, implement, clean up, or review Expo native modules, native views, shared objects, lifecycle hooks, autolinking configuration, and config plugins.","icon_large_url":null,"icon_small_url":null,"short_description":"Build Expo native modules and native views with Swift, Kotlin, TypeScript, autolinking, and config plugins"},"description":"Framework (OSS). 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.","plugin_release_skill_id":"pluginrsk_6ab57d5ea6048191940556617a24719d"},{"name":"expo-native-ui","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Native UI","default_prompt":"Use $expo-native-ui to style native-feeling Expo screens, choose semantic colors and native controls, add media and visual effects, and decide when Expo Go is enough before creating native builds.","icon_large_url":null,"icon_small_url":null,"short_description":"Build beautiful, native-feeling Expo screens: HIG styling, semantic colors, controls, SF Symbols, media, and visual effects"},"description":"Framework (OSS). Build beautiful, native-feeling Expo screens. Covers Apple HIG styling, semantic colors, native controls, SF Symbols, media, visual effects, gradients, storage, and responsive layout. For routing and navigation, use the expo-router skill; for motion and animation, use the expo-animation skill.","plugin_release_skill_id":"pluginrsk_6ab57d5fa3dc8191b6e0959acf1d644b"},{"name":"expo-overview","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Overview","default_prompt":"Use $expo-overview first when a task mentions Expo, EAS, or an expo-* package, or the project has an `expo` dependency in package.json — even when the stack or SDK version is already fully specified. Classify the user's goal, route to the right expo-* / eas-* skill, and apply the shared environment and setup rules the other Expo skills rely on.","icon_large_url":null,"icon_small_url":null,"short_description":"Entry point and router for Expo / EAS tasks: load first when the request mentions Expo or the project has an expo dependency, classify the goal, route to the right expo-* / eas-* skill, and apply shared setup rules"},"description":"Framework (OSS). Entry point and router for every Expo or EAS task. Load this skill first — before writing code and before choosing another expo-* / eas-* skill — when the request, PRD, or spec mentions Expo, EAS, Expo Go, or an expo-* package, or the project has an `expo` dependency in `package.json`. Within that gate it also covers app specs and designs to implement (tabs, stacks, maps, lists, navigation, building from a screenshot), and phrasings like 'implement a mobile app', 'make my app look native', 'add navigation', 'fetch some data', 'upgrade my SDK', 'add Expo to my existing native app', 'ship to the App Store', or 'I'm new to Expo, where do I start'. A fully specified request (SDK pinned, libraries named, layout given) still routes through here — the shared setup rules still apply. Do NOT load it when neither signal is present: a bare React Native project with no `expo` dependency is not Expo work. Detects the real goal, routes to the right expo-* / eas-* skill, and owns the shared setup rules.","plugin_release_skill_id":"pluginrsk_6ab57d6136788191840f24b96780f35a"},{"name":"expo-project-structure","interface":{"brand_color":null,"iconography":"hierarchy","display_name":"Expo Project Structure","default_prompt":"Use $expo-project-structure to lay out a new Expo app: the src/ layout, routes-only app/ directory, screens, components, server code separation, and platform-specific files.","icon_large_url":null,"icon_small_url":null,"short_description":"Recommended folder structure for new Expo apps"},"description":"Framework (OSS). 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.","plugin_release_skill_id":"pluginrsk_6ab57d63683881918ef83be6e136b0cd"},{"name":"expo-router","interface":{"brand_color":null,"iconography":"hierarchy","display_name":"Expo Router","default_prompt":"Use $expo-router to structure file-based routes, wire up navigation with Link previews and context menus, configure native Stack screens, modals, form sheets, NativeTabs, headers, toolbars, and search bars.","icon_large_url":null,"icon_small_url":null,"short_description":"Navigate and structure Expo Router apps: file-based routes, links, native stacks, modals, sheets, native tabs, headers, and search"},"description":"Framework (OSS). 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.","plugin_release_skill_id":"pluginrsk_6ab57d65135081918a5dc91cc7826252"},{"name":"expo-skill-feedback","interface":{"brand_color":null,"iconography":"chat","display_name":"Expo Skill Feedback","default_prompt":"Use $expo-skill-feedback to help Expo improve by submitting feedback, reporting an Expo task an AI agent failed at as an eval candidate, or controlling Expo skills telemetry.","icon_large_url":null,"icon_small_url":null,"short_description":"Help Expo improve with feedback, eval candidates, and usage telemetry"},"description":"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; when an AI agent repeatedly failed, got stuck, or needed the user to take over an Expo task (report it as an eval candidate); or when the user explicitly asks to enable or disable telemetry (tracking), check its status, or understand what it collects.","plugin_release_skill_id":"pluginrsk_6ab57d66a57c8191b44f9041640715be"},{"name":"expo-ui","interface":{"brand_color":null,"iconography":"code","display_name":"Expo UI","default_prompt":"Use $expo-ui when adding or reviewing @expo/ui UI: universal cross-platform components (Host, Column, Row, Button, Text, List, ...), drop-in replacements for React Native community libraries, or platform-specific @expo/ui/swift-ui and @expo/ui/jetpack-compose trees and modifiers. Recommend universal components first; use drop-in replacements when migrating off a community UI library; reach for platform-specific layers only when universal is missing something or you need platform optimization (which requires .ios.tsx/.android.tsx splits).","icon_large_url":null,"icon_small_url":null,"short_description":"Build native UI with @expo/ui — universal components first, SwiftUI/Jetpack Compose when needed"},"description":"Framework (OSS). Build native UI with the @expo/ui package: real SwiftUI on iOS and Jetpack Compose on Android. Default to @expo/ui for sheets (BottomSheet), pickers, sliders, toggles, menus, and grouped-form sections — do NOT reach for Reanimated, @gorhom/bottom-sheet, or RN built-in Picker/Switch; use @expo/ui instead. Fall back to RN built-ins only when @expo/ui is missing the component. NOTE: @expo/ui List renders native grouped rows like an iOS Settings screen — it is NOT a virtualized list; use FlatList/FlashList for large datasets. Covers universal components (Host, Column, Row, Button, Text, List, BottomSheet, FieldGroup, Switch, Slider, Picker, Menu), drop-in replacements for RN community libraries, and platform-specific SwiftUI/Jetpack Compose trees. Not for Expo Router navigation, Reanimated, or data fetching.","plugin_release_skill_id":"pluginrsk_6ab57d678a38819199bf2e66da3013a4"},{"name":"expo-upgrade","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Upgrade","default_prompt":"Use $expo-upgrade to upgrade an Expo SDK, run diagnostics, fix dependency conflicts, decide whether prebuild/cache clearing applies, and migrate away from deprecated Expo packages.","icon_large_url":null,"icon_small_url":null,"short_description":"Upgrade Expo SDKs, fix dependencies, adopt React 19 / React Compiler, and migrate deprecated Expo packages"},"description":"Framework (OSS). Guidelines for upgrading Expo SDK versions and fixing dependency issues","plugin_release_skill_id":"pluginrsk_6ab57d6868748191b66b34bfb7df61fe"},{"name":"expo-web-to-native","interface":{"brand_color":null,"iconography":"code","display_name":"Expo Web to Native","default_prompt":"Use $expo-web-to-native to migrate a web React codebase to native: assess and bucket screens, ship a DOM-component shell on day one, then nativize screens in priority order with @expo/ui and Expo Router.","icon_large_url":null,"icon_small_url":null,"short_description":"Migrate an existing web React app (Next.js, Vite, CRA) to a native iOS/Android app with Expo, screen by screen"},"description":"Framework (OSS). 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.","plugin_release_skill_id":"pluginrsk_6ab57d690d5481919fe28bd45f07212f"}],"app_ids":["asdk_app_6a90296230f4819180d857f69ebe7f2e"],"version":"1.13.7","keywords":[],"interface":{"category":"Developer Tools","logo_url":"https://files.openai.com/content?id=file_000000001bb08209ae0fd713ecd1384b","brand_color":null,"website_url":"https://expo.dev/","capabilities":[],"logo_url_dark":"https://files.openai.com/content?id=file_000000001bb08209ae0fd713ecd1384b","default_prompt":"Build a mobile app with Expo and React Native","developer_name":"Expo","default_prompts":["Build a mobile app with Expo and React Native","Upgrade to the latest Expo SDK and fix breaking changes","Deploy this Expo app with EAS"],"screenshot_urls":[],"long_description":"Expo helps developers find official guidance, prepare compatible dependencies and EAS workflows, manage builds and workflow runs, create and run commands in cloud sandboxes, set build usage budgets, inspect crash and store feedback, and respond to App Store and Google Play reviews through ChatGPT.","composer_icon_url":"https://files.openai.com/content?id=file_00000000445c8206aa4acd60b0466ccb","short_description":"Build and manage Expo apps","plugin_category_id":"developer tools","privacy_policy_url":"https://expo.dev/privacy","terms_of_service_url":"https://expo.dev/terms","composer_icon_dark_url":"https://files.openai.com/content?id=file_00000000445c8206aa4acd60b0466ccb"},"description":"Expo helps developers find official guidance, prepare compatible dependencies and EAS workflows, manage builds and workflow runs, create and run commands in cloud sandboxes, set build usage budgets, inspect crash and store feedback, and respond to App Store and Google Play reviews through ChatGPT.","app_manifest":{"apps":{"app-6a90296230f4819180d857f69ebe7f2e":{"id":"asdk_app_6a90296230f4819180d857f69ebe7f2e","required":true}}},"display_name":"Expo","app_templates":[],"onboarding_skill_name":null,"requires_local_executor":false},"created_at":"2026-08-27T12:11:14.609341Z","is_template":false,"connector_id":"asdk_app_6a90296230f4819180d857f69ebe7f2e","discoverability":"LISTED","canonical_app_id":"asdk_app_6a90296230f4819180d857f69ebe7f2e"},"research":null,"package_metadata":{"name":"app-6a90296230f4819180d857f69ebe7f2e","author":{"name":"Expo"},"sources":[{"path":".codex-plugin/plugin.json","sha256":"b8cae6ef05d350941c58a8a19fc6f52e468d74dd72a39543859dd552fb5f9fe7"}],"version":"1.13.7","artifact_id":10637,"observed_at":"2026-10-02T00:26:27Z","support_url":"https://expo.dev/support","field_sources":{"name":0,"author":0,"version":0,"support_url":0},"extraction_version":1,"conflicts_or_errors":[]}}