clerk-expo Skill: What It Does and How to Install It
Makes your coding agent add Clerk sign-in to an Expo or React Native app with native components or custom flows.
- Installs
- 14.4K
- on skills.sh
- Stars
- 89
- on GitHub
- Files
- 7
- besides SKILL.md
- Updated
- Oct 2026
- last repo commit
The SKILL.md has the agent use @clerk/expo and choose a path from your request. It defaults to prebuilt native components (AuthView, UserButton), and switches to custom flows for Expo Go, web targets or your own UI. It applies twelve execution gates, such as reading the key from EXPO_PUBLIC_CLERK_PUBLISHABLE_KEY, using useSSO() instead of useOAuth() and using the token cache.
It loads for Expo and React Native auth, @clerk/expo, Expo Router guards and Clerk hooks in a native app. It says not to use it for native Swift, native Android or web-only projects. The compatibility line names @clerk/expo v3.4+, Expo SDK 53 to 56 and React Native 0.75+.
Good for
- Expo and React Native developers adding Clerk
- Teams adding SMS code, MFA or social sign-in to a mobile app
- Teams protecting Expo Router screens
Install clerk-expo
Claude Code
- 1
Copy this prompt.
Install the clerk-expo skill in Claude Code. Run this command: /plugin marketplace add clerk/skills /plugin install clerk@clerk-skills Then check that it loaded and tell me how to use it.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Pick one route. The plugin installs all 20 skills in the Clerk repo (counted from the repo tree) and adds the Clerk MCP server from the repo's .mcp.json, which points at https://mcp.clerk.com/mcp. The skills-only routes install just this skill and no MCP server config. The README says to open /plugin, go to Marketplaces, select clerk-skills and enable auto-update if you want updates.
From the project README. Source.
What's in the skill
When it loads
Add Clerk authentication to Expo and React Native apps using @clerk/expo. Use for Expo setup, prebuilt native components (AuthView, UserButton), custom sign-in/sign-up flows (email, password, SMS/phone OTP, MFA), OAuth/SSO, native Google/Apple sign-in, Expo Router protected routes, biometrics, and push notifications. Do not use for native Swift/iOS, native Android/Kotlin, or web-only framework projects.
Sections in SKILL.md
- Activation Rules
- Intent Map
- Default Path Decision
- Quick Workflow
- Execution Gates (Do Not Skip)
- Version Notes (v3.5–v3.6, June 2026)
- Common Pitfalls
- See Also
Key facts
- Installs on skills.sh
- 14,411 (Nov 2, 2026)
- GitHub stars
- 89 for the whole clerk/skills repo (Nov 2, 2026)
- Last repo commit
- Oct 30, 2026
What it includes
Install @clerk/expo, set the key, add ClerkProvider and the token cache.
Uses npx expo install for @clerk/expo and expo-secure-store, adds the config plugin, and tells you to use a development build for native components. Source: references/setup.md.
Try: “Add Clerk auth to my Expo app”
Runs code ·
SetupUse AuthView and UserButton from @clerk/expo/native.
The default path. The SKILL.md says it needs a development build, not Expo Go, and does not render on web. Source: references/prebuilt-components.md.
Write ·
Prebuilt native componentsBuild email, password, SMS code, passwordless and MFA flows.
Uses the current method-based hooks, such as signIn.password() and signIn.finalize(), not the legacy pattern. Source: references/custom-flows.md.
Try: “Add phone SMS sign-in to my Expo app”
Write ·
Custom flowsAdd browser SSO with useSSO, or native Google and Apple buttons.
Source: references/sso-and-native-auth.md.
Try: “Add Sign in with Google to my Expo app”
Write ·
SSO and native sign-inGuard Expo Router screens with layout guards.
Source: references/protected-routes.md.
Try: “Redirect signed-out users away from my tabs layout”
Write ·
Protected routesProfile data, sign-out, org switching, backend calls, push, biometrics, passkeys.
Source: references/recipes.md. Biometrics and passkeys need extra Expo packages.
Write ·
RecipesCheck that SMS, email code or a social provider is enabled first.
The SKILL.md has the agent read the instance environment from your Clerk Frontend API, or ask you to check the dashboard.
Network ·
Factor checkRun a typecheck and build, then walk through one sign-in.
Runs the project typecheck and npx expo run:ios, run:android or start, and stops after about five failed fix attempts to ask you.
Runs code ·
Build and verify
From the official docs
Permissions
Medium risk
The skill installs packages, edits your Expo config and runs native builds in your project. Review the diff before you commit it and check the dashboard settings it tells you to change.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It runs builds and, if needed, Clerk's CLI
The SKILL.md has the agent run a typecheck and an iOS or Android build, and offers npx clerk@latest init --framework expo when no key exists. It also reads <frontendApiUrl>/v1/environment?_is_native=true to check which sign-in methods are on. github.com
It edits files in your project
The SKILL.md has the agent run `npx expo install` for Clerk and peer packages, edit `app.json` plugins, and build with `npx expo run:ios` or `run:android`. Review the diff before you commit it. github.com
The plugin route also adds the Clerk MCP server
The plugin's .mcp.json registers https://mcp.clerk.com/mcp. Use the skills CLI route if you only want this skill. github.com
Security advisories
No published security advisories as of Nov 2, 2026.
Technical details
| Turning on read-only | No read-only mode. |
|---|---|
| Talks to | Your Clerk Frontend API (/v1/environment?_is_native=true, SKILL.md Gate 3). WebFetch tool (the frontmatter allows it) |
| Sign-in and keys | The SKILL.md shows Clerk keys going into your project's env file. |
| Scopes |
|
Questions
What does clerk-expo do?
It makes your coding agent write Clerk sign-in code for Expo and React Native: native components by default, custom flows when you need your own UI, plus SSO, protected routes and device features.
How do I install clerk-expo?
Use the install box above. The Claude Code plugin route installs every Clerk skill and the Clerk MCP server, and the skills CLI route installs only this skill. Pick one route, not both, or you get the skills twice.
Is clerk-expo official?
Yes. It is published in Clerk's own clerk/skills repository, and the plugin.json in that repo lists Clerk as the author.
Does clerk-expo work in the Claude app or Codex?
Codex, Cursor and GitHub Copilot CLI each have a plugin install in the README. The README does not document uploading Clerk skills to the Claude app, and this skill's job is to change code in a local project, so the install box has no Claude app tab.
Does it need a Clerk account or API key?
You need a Clerk publishable key. The SKILL.md reads it from EXPO_PUBLIC_CLERK_PUBLISHABLE_KEY, and says to ask you for one or run npx clerk@latest init --framework expo, which installs the SDK and writes the env file.
Is clerk-expo safe to install?
Its SKILL.md makes the agent change files in your project and use Clerk keys from your env file, and its frontmatter allows the WebFetch tool. Our advice: read each change before you commit it, and keep the secret key out of git.
Does it work in Expo Go?
Only the custom flows do. The SKILL.md says the native components and native sign-in hooks need a development build (npx expo run:ios or run:android), not Expo Go, and they do not exist on web.
Information
updated Nov 2, 2026
- Repository
- clerk/skills
- Folder
skills/clerk-expo
Sources
Docs, issue trackers and discussions this page is built from.
Show all 4Hide
- clerk-expo SKILL.md · github.com
- clerk/skills README · github.com
- clerk plugin.json · github.com
- clerk .mcp.json · github.com