Selecting app locales
Skill ofcskn/mobile-automation-plugin/skills/selecting-app-locales
Enforces locale selection before any localisation, metadata, screenshot, or i18n task begins. Use when starting a new app, adding languages, preparing for store submission, or any time the locale set is unknown or unconfirmed. Presents both the Android BCP 47 locale list (locale_config.xml) and the Apple App Store storefront table (175 regions, default and additional languages) so the user can make an informed, explicit decision. Writes the confirmed locale set to .msd/config/{app-id}.config.json before any other skill runs.From its SKILL.md
npx -y skills add ofcskn/mobile-automation-plugin --skill selecting-app-localesAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.1 KB, as published. Nobody here has run it
Selecting App Locales
Why this must run first
Every downstream task — metadata validation, i18n JSON files, screenshot locales, App Store Connect locale folders, Google Play metadata folders — depends on a confirmed locale list. Starting without one causes rework.
The agent MUST ask the user before assuming any locale set. Even if the user says "just do English", that is a valid answer — write it to config.
Steps
-
Read
.msd/config/{app-id}.config.jsonand check iflocales[]is already confirmed.- If
locales[]exists and is non-empty: show the list and ask "Should I use these locales, or do you want to change them?" - If
locales[]is missing or empty: proceed to step 2.
- If
-
Ask the user which languages to support. Common starting points:
- English only:
en - English + Turkish:
en,tr - Major markets:
en,tr,de,fr,es,pt-BR,ja,ko,zh-Hans
- English only:
-
Run:
node skills/selecting-app-locales/scripts/resolve-locales.js {appId} "{locale-list}" -
Show the resolved locale table and confirm with user before proceeding.
-
Only proceed to downstream skills after explicit user confirmation.
RTL locales
For Arabic (ar), Hebrew (he), Farsi (fa), Urdu (ur): add ⚠️ flag and note that
React Native/Expo requires I18nManager.forceRTL(true) at app startup.
References
skills/selecting-app-locales/references/android-locales.md— BCP47 locale listskills/selecting-app-locales/references/apple-storefronts.md— storefront table