Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add mahdi-salmanzade/expo56-skill --skill expo-56git clone --depth 1 https://github.com/mahdi-salmanzade/expo56-skillWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/mahdi-salmanzade/expo56-skill/expo-56)<a href="https://agentmods.dev/skills/mahdi-salmanzade/expo56-skill/expo-56"><img src="https://agentmods.dev/badge/skills/mahdi-salmanzade/expo56-skill/expo-56/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/mahdi-salmanzade/expo56-skill/expo-56"><img src="https://agentmods.dev/badge/skills/mahdi-salmanzade/expo56-skill/expo-56.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00391 | $0.06647 |
| Opus 5 | $0.00196 | $0.03324 |
| Sonnet 5 | $0.00078 | $0.01329 |
| Haiku 4.5 | $0.00039 | $0.00665 |
Grade A, and why
expo-56 scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 230 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Expo SDK 56 & 57
Audited against the
expo/exporelease branchesorigin/sdk-56andorigin/sdk-57on 2026-07-25. SDK 57 shipped 2026-07-08; its latest patch is 57.0.8 (published 2026-07-22, dist-taglatest). SDK 56 shipped 2026-06-01 and is still actively patched — latest 56.0.17 (published 2026-07-23, dist-tagsdk-56), i.e. newer than the SDK 57 patch. The supported window is SDK 54–57.Sourcing rule — this matters more than it sounds. Version pins here come from
packages/expo/bundledNativeModules.jsonon the release branch (git show origin/sdk-57:packages/expo/bundledNativeModules.json), because that file ships inside theexpopackage and is whatexpo installresolves against. Two tempting sources are wrong:
docs/public/static/schemas/v56.0.0|v57.0.0/native-modules.jsonis stale — it still listsreact-native-screens4.25.2 andexpo-router~56.2.9 when the shipped values are ~4.26.0 and ~56.2.16.- The
mainbranch contains post-57 work destined for SDK 58. Anything under## Unpublishedin a CHANGELOG, and anypackages/*/package.jsonvalue onmain, is not in SDK 57.Re-verify with
npx expo install --fixafter any patch bump; this is a point-in-time snapshot.
This skill is a version-pinned API reference, not a task playbook. It covers building on SDK 56 or 57, and the 55→56 and 56→57 migrations. Expo's own official skills are playbooks for the newest SDK and carry no version pins — see Composing with the official Expo skills. Use both.
Step 1: Establish which SDK the project is on
Do this before answering anything version-specific. A user saying "latest Expo" may be on either release. The genuine 56↔57 differences that silently break code are narrow: prebuild semantics, expo-camera's iOS default pictureSize, and the RN 0.86 bump. Most other "SDK 57" changes were also backported to the 56 line — check the patch version before telling anyone to upgrade.
What ships with it
22 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- evals/evals.json 7.4 KB
- references/01-core-setup-upgrade.md 31 KB
- references/02-expo-router.md 51 KB
- references/03-expo-ui.md 58 KB
- references/04-expo-modules-api.md 43 KB
- references/05-cli-metro-bundling.md 38 KB
- references/06-filesystem-networking.md 34 KB
- references/07-media-device-apis.md 42 KB
- references/08-sqlite-updates-convex.md 39 KB
- references/09-system-ui-components.md 39 KB
- references/10-eas-build-brownfield.md 38 KB
- references/11-camera-visual-media.md 43 KB
- references/12-video-audio-playback.md 44 KB
- references/13-auth-security.md 61 KB
- references/14-notifications-background.md 41 KB
- references/15-location-sensors.md 47 KB
- references/16-app-config-foundational.md 53 KB
- references/17-animation-gesture-deps.md 34 KB
- references/18-eas-full-workflow.md 59 KB
- references/19-dev-workflow-testing.md 42 KB
- references/20-maps-web-utilities.md 32 KB
- references/21-sdk-57-migration.md 40 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 230 lines · 391 tokens per session scan A 25cd0406ae4f
expo-56 is a skill published in the GitHub repository mahdi-salmanzade/expo56-skill (2 stars, last pushed 1mo ago), licensed MIT. It adds 391 tokens to every session and 6,647 once invoked, about $0.0020 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
new-architecture
React Native New Architecture (Fabric, TurboModules, bridgeless) compatibility. Use when a library breaks under it, for newArchEnabled questions, or errors mentioning codegen, Fabric, ViewPropTypes, requireNativeComponent.
expo-sdk-upgrade
Upgrading Expo SDK and React Native safely. Use when bumping the SDK or react-native, or when the app broke after an upgrade: upgrade order, expo install --fix, expo-doctor, config plugins, OTA pitfalls.
create-mobile-app
Use when the user wants to start a new Power Apps mobile app (Expo / React Native / TypeScript, targeting iOS and Android) from scratch.
writing-react-native-storybook-stories
Create and edit React Native Storybook stories using Component Story Format (CSF). Use when writing .stories.tsx files, adding stories to React Native components, configuring Storybook addons (controls, actions, backgrounds, notes), setting up argTypes, decorators, parameters, or working with portable stories for…
setup-react-native-storybook
Set up Storybook for React Native in Expo, React Native CLI, or Re.Pack projects. Use when adding Storybook to a project, configuring metro.config.js with withStorybook, creating .rnstorybook configuration files, setting up Storybook routes in Expo Router, configuring getStorybookUI, or adding the StorybookPlugin to a…
uniwind
Uniwind — Tailwind CSS v4 styling for React Native. Use when adding, building, or debugging components in a React Native project that uses Uniwind classNames. Covers setup, Metro config, global.css, theming, className props, accent- color props, platform/data/state/responsive variants, CSS variables, custom utilities…