Asc Localize Metadata
CamilleScholtz/swmpc
Automatically translate and sync App Store metadata (description, keywords, what's new, subtitle) to multiple languages using LLM translation and asc CLI.
Bulk-localize subscription, subscription-group, and in-app purchase display names across App Store locales using asc, including API 4.4.1 version-scoped v2 resources.
$ npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install rorkai/app-store-connect-cli-skills asc-subscription-localization --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/rorkai/app-store-connect-cli-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/asc-subscription-localization .claude/skills/asc-subscription-localization && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "asc-subscription-localization" agent skill from https://github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/asc-subscription-localization into .claude/skills/asc-subscription-localization/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asc-subscription-localization", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/asc-subscription-localizationType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install rorkai/app-store-connect-cli-skills asc-subscription-localization --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rorkai/app-store-connect-cli-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/asc-subscription-localization .agents/skills/asc-subscription-localization && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "asc-subscription-localization" agent skill from https://github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/asc-subscription-localization into .agents/skills/asc-subscription-localization/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asc-subscription-localization", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install rorkai/app-store-connect-cli-skills asc-subscription-localization --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rorkai/app-store-connect-cli-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/asc-subscription-localization .cursor/skills/asc-subscription-localization && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "asc-subscription-localization" agent skill from https://github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/asc-subscription-localization into .cursor/skills/asc-subscription-localization/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asc-subscription-localization", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/rorkai/app-store-connect-cli-skills.git --path skills/asc-subscription-localization--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install rorkai/app-store-connect-cli-skills asc-subscription-localization --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rorkai/app-store-connect-cli-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/asc-subscription-localization .gemini/skills/asc-subscription-localization && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "asc-subscription-localization" agent skill from https://github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/asc-subscription-localization into .gemini/skills/asc-subscription-localization/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asc-subscription-localization", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install rorkai/app-store-connect-cli-skills asc-subscription-localizationInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/rorkai/app-store-connect-cli-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/asc-subscription-localization .github/skills/asc-subscription-localization && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "asc-subscription-localization" agent skill from https://github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/asc-subscription-localization into .github/skills/asc-subscription-localization/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asc-subscription-localization", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install rorkai/app-store-connect-cli-skills asc-subscription-localization --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/rorkai/app-store-connect-cli-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/asc-subscription-localization .opencode/skills/asc-subscription-localization && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "asc-subscription-localization" agent skill from https://github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/asc-subscription-localization into .opencode/skills/asc-subscription-localization/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "asc-subscription-localization", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
asc-subscription-localizationBulk-localize subscription, subscription-group, and in-app purchase display names across App Store locales using asc, including API 4.4.1 version-scoped v2 resources.
Asc Subscription Localization is an agent skill from rorkai/app-store-connect-cli-skills. Bulk-localize subscription, subscription-group, and in-app purchase display names across App Store locales using asc, including API 4.4.1 version-scoped v2 resources. Use when filling or updating subscription/IAP names and descriptions without App Store Connect UI work.
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Mobile, covering App store release and Internationalization. It works with App Store Connect. The repository describes itself as: Skills to automate app store deployed and everything related to it using the asc cli. The licence is MIT.
Read from SKILL.md and the folder at commit 9c7e769. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Asc Subscription Localization loads about 2.7k tokens when it runs. Until then it costs about 75 tokens; SKILL.md has 948 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from rorkai/app-store-connect-cli-skills at commit 9c7e769, republished under its MIT licence (© rorkai). 948 words, ~2,707 tokens.
.claude/skills/asc-subscription-localization/SKILL.md (or your agent's skills folder).Use this skill to bulk-create or bulk-update display names and, where supported, descriptions for subscriptions, subscription groups, and in-app purchases across all App Store Connect locales. This eliminates the tedious manual process of clicking through each language in App Store Connect to set the same display name.
asc auth login or ASC_* env vars).ASC_APP_ID or --app).API 4.4.1 adds discrete versions for IAPs, subscriptions, and subscription groups. A version ID is different from its product, subscription, or group ID.
asc ... versions localizations ... for all new localization work.Resolve or create versions before localizing them:
asc iap versions list --iap-id "IAP_ID" --state PREPARE_FOR_SUBMISSION --paginate --output table
asc subscriptions versions list --subscription-id "SUB_ID" --state PREPARE_FOR_SUBMISSION --paginate --output table
asc subscriptions groups versions list --group-id "GROUP_ID" --state PREPARE_FOR_SUBMISSION --paginate --output tableBranch independently on each list result: zero matches means create, one means reuse that version ID, and more than one means stop and require an explicit version ID. Run each command below only for its zero-match branch:
# If and only if the IAP version list returned zero matches:
asc iap versions create --iap-id "IAP_ID" --output json
# If and only if the subscription version list returned zero matches:
asc subscriptions versions create --subscription-id "SUB_ID" --output json
# If and only if the group version list returned zero matches:
asc subscriptions groups versions create --group-id "GROUP_ID" --output jsonNone of the three version families has a version delete command. List and
reuse the single PREPARE_FOR_SUBMISSION version; create only for zero matches,
and stop for an explicit ID when multiple matches exist. Live parent deletion
did not cascade IAP or subscription versions, so do not assume parent deletion
cleans up versions created for testing.
These are the locales supported by App Store Connect for subscription and IAP localizations:
ar-SA, ca, cs, da, de-DE, el, en-AU, en-CA, en-GB, en-US,
es-ES, es-MX, fi, fr-CA, fr-FR, he, hi, hr, hu, id, it,
ja, ko, ms, nl-NL, no, pl, pt-BR, pt-PT, ro, ru, sk,
sv, th, tr, uk, vi, zh-Hans, zh-HantFor bulk writes, map each locale to its fields in one JSON file and import it into the resolved version ID. Import creates missing locales, updates only differing fields, never clears or deletes, and reports per-locale failures.
asc subscriptions versions localizations import --version-id "VERSION_ID" --file "./localizations.json" --dry-run
asc subscriptions versions localizations import --version-id "VERSION_ID" --file "./localizations.json" --confirmasc iap versions localizations import takes the same name and
description fields. asc subscriptions groups versions localizations import
takes name and customAppName. Give every new subscription or IAP locale a
non-empty description; see the create rules below.
List existing localizations, create only missing locales, then verify:
asc subscriptions versions localizations list --version-id "VERSION_ID" --paginate --output table
asc subscriptions versions localizations create --version-id "VERSION_ID" --locale "LOCALE" --name "Display Name" --description "Description"
asc subscriptions versions localizations list --version-id "VERSION_ID" --paginate --output tableUpdates distinguish omitted values, non-empty strings, and JSON null:
asc subscriptions versions localizations update --id "LOC_ID" --name "New Name" --description "Updated description"Do not combine a value flag with its matching --clear-name or
--clear-description flag. The 4.4.1 schema permits JSON null, but Apple's
live service currently rejects both an empty --description and
--clear-description for subscription-version localizations because the
description must contain at least one character.
Creating a missing subscription-version localization therefore requires a non-empty description. A display-name-only run may update the name of an existing localization, but must not create a missing locale until the user provides a non-empty locale-specific or shared fallback description.
asc subscriptions groups versions localizations list --version-id "VERSION_ID" --paginate --output table
asc subscriptions groups versions localizations create --version-id "VERSION_ID" --locale "LOCALE" --name "Group Display Name" --custom-app-name "My App"
asc subscriptions groups versions localizations update --id "LOC_ID" --name "Updated Group Display Name" --custom-app-name "My App"
asc subscriptions groups versions localizations list --version-id "VERSION_ID" --paginate --output tableClearing metadata is a separate, explicit opt-in operation. After confirming that the user wants to remove an existing custom app name, run:
asc subscriptions groups versions localizations update --id "LOC_ID" --clear-custom-app-nameDo not include --clear-name or --clear-custom-app-name in the standard bulk
localization workflow. Use either flag only when JSON null is deliberately
intended; omitting the flag leaves that attribute unchanged.
asc iap versions localizations list --version-id "VERSION_ID" --paginate --output table
asc iap versions localizations create --version-id "VERSION_ID" --locale "LOCALE" --name "Display Name" --description "Description"
asc iap versions localizations update --localization-id "LOC_ID" --description "Updated description"
asc iap versions localizations list --version-id "VERSION_ID" --paginate --output tableApple's live service also rejects empty descriptions and
--clear-description for IAP-version localizations even though the 4.4.1
schema permits JSON null. As with subscriptions, a display-name-only run may
update existing IAP localizations but must not create missing locales until a
non-empty description is available.
For a full app with multiple subscription groups and subscriptions:
# 1. List groups and resolve each group's unique mutable version.
asc subscriptions groups list --app "APP_ID" --paginate --output json
asc subscriptions groups versions list --group-id "GROUP_ID" --state PREPARE_FOR_SUBMISSION --paginate --output json
# 2. Localize each group version.
asc subscriptions groups versions localizations list --version-id "GROUP_VERSION_ID" --paginate --output json
asc subscriptions groups versions localizations create --version-id "GROUP_VERSION_ID" --locale "LOCALE" --name "Group Display Name"
# 3. List subscriptions and resolve each subscription's unique mutable version.
asc subscriptions list --group-id "GROUP_ID" --paginate --output json
asc subscriptions versions list --subscription-id "SUB_ID" --state PREPARE_FOR_SUBMISSION --paginate --output json
# 4. Localize each subscription version.
asc subscriptions versions localizations list --version-id "SUBSCRIPTION_VERSION_ID" --paginate --output json
asc subscriptions versions localizations create --version-id "SUBSCRIPTION_VERSION_ID" --locale "LOCALE" --name "Display Name" --description "Description"Apply the same zero/one/many rule to each version list: create a version for zero matches, reuse the one match, and stop for an explicit ID when multiple matches are returned.
--description on every create. If the user supplies only display names,
update existing localizations by resolved ID, skip creates for missing
locales, and ask for locale-specific descriptions or one non-empty fallback
description before creating them.--description unless the user supplied a new non-empty value; never infer an
empty value or clear it.--custom-app-name only when the
user supplied that value.--output table for verification steps so the user can visually confirm.--output json for intermediate automation steps; output
defaults are TTY-aware.... localizations import validates the whole file, then writes one locale at a time.--paginate on list commands to ensure all existing localizations are returned.asc-id-resolver skill if you only have app names instead of IDs.© rorkai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/asc-subscription-localization of rorkai/app-store-connect-cli-skills.
Open the folder on GitHubat commit 9c7e769
We found 3 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in rorkai/app-store-connect-cli-skills, which our catalogue first saw on October 7, 2026.
Asc Subscription Localization next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Asc Subscription Localization this skillrorkai/app-store-connect-cli-skills | 1.1k | 2 repos | ~2.7k | Automated safety check: Pass | MIT | |
| Asc Localize MetadataCamilleScholtz/swmpc | 239 | 5 repos | ~2.8k | Automated safety check: Pass | EUPL-1.2 | |
| Asc Subscription Localizationmalpern/VoxClaw | 208 | — | ~2.5k | Automated safety check: Pass | None | |
| Sync Asc Skillsrorkai/App-Store-Connect-CLI | 7.7k | — | ~782 | Automated safety check: Pass | MIT | |
| App Namerrshankras/claude-code-apple-skills | 785 | — | ~3.4k | Automated safety check: Pass | MIT | |
| Asc Metricsappeeky/aso-skills | 2.2k | — | ~1.3k | Automated safety check: Pass | MIT |
CamilleScholtz/swmpc
Automatically translate and sync App Store metadata (description, keywords, what's new, subtitle) to multiple languages using LLM translation and asc CLI.
malpern/VoxClaw
Bulk-localize subscription and in-app purchase display names across all App Store locales using asc.
rorkai/App-Store-Connect-CLI
Check rorkai/app-store-connect-cli-skills against the current ASC CLI surface and correct proven drift when authorized.
rshankras/claude-code-apple-skills
Turn an app idea into validated, App-Store-ready name candidates.
appeeky/aso-skills
When the user wants to analyze their own app's actual performance data from App Store Connect — real downloads, revenue, IAP, subscriptions, trials, or country breakdowns synced via Appeeky Connect.
CamilleScholtz/swmpc
Guidance for using asc cli in this repo (flags, output formats, pagination, auth, and discovery).
rorkai/app-store-connect-cli-skills
Orchestrates App Store releases with the asc CLI: staging a version, uploading or building, publishing and submitting for review, with dry-run and confirmation gates.
rorkai/app-store-connect-cli-skills
Diagnoses why an App Store version cannot be submitted or is stuck in review, using the asc CLI for validation, repair routing, status checks and retry decisions.
rorkai/app-store-connect-cli-skills
Creates a new App Store Connect app record by driving the New App form through browser automation, for cases where no public API covers app creation.
rorkai/app-store-connect-cli-skills
Set territory-specific pricing for subscriptions and in-app purchases using current asc setup, pricing summary, price import, and price schedule commands.
rorkai/app-store-connect-cli-skills
Reconcile App Store Connect subscriptions and in-app purchases with RevenueCat products, entitlements, offerings, and packages using asc and RevenueCat MCP.
rorkai/app-store-connect-cli-skills
Build, archive, generate export options, export, upload, and manage Xcode version/build numbers with the current asc xcode helpers.
Works with
Categories
Bulk-localize subscription, subscription-group, and in-app purchase display names across App Store locales using asc, including API 4.4.1 version-scoped v2 resources. Asc Subscription Localization is an agent skill from rorkai/app-store-connect-cli-skills.1 version-scoped v2 resources.
Asc Subscription Localization fits situations like: updating subscription/IAP names and descriptions without App Store Connect UI work; tasks that involve App store release; tasks that involve Internationalization.
Run `npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a claude-code`. Or copy the skill folder (skills/asc-subscription-localization in rorkai/app-store-connect-cli-skills) into .claude/skills/asc-subscription-localization in your project. Claude Code loads it when a task matches its description.
Run `npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a codex`. Or copy the skill folder (skills/asc-subscription-localization in rorkai/app-store-connect-cli-skills) into .agents/skills/asc-subscription-localization in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add rorkai/app-store-connect-cli-skills --skill asc-subscription-localization -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/asc-subscription-localization, .gemini/skills/asc-subscription-localization, .github/skills/asc-subscription-localization and .opencode/skills/asc-subscription-localization in your project.
SKILL.md names no scripts, command-line tools or credentials: Asc Subscription Localization is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Asc Subscription Localization is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Asc Subscription Localization: Asc Localize Metadata (CamilleScholtz/swmpc, 239 stars), Asc Subscription Localization (malpern/VoxClaw, 208 stars), Sync Asc Skills (rorkai/App-Store-Connect-CLI, 7.7k stars) and App Namer (rshankras/claude-code-apple-skills, 785 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
rorkai (a GitHub organization) maintains it in rorkai/app-store-connect-cli-skills, which has 1,064 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 5, 2026.
Source: rorkai/app-store-connect-cli-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.