agentsclimarketplace

Appstore metadata sync

Skill Xopoko/build-swift-apps/skills/appstore-metadata-sync

Use when App Store listing metadata in canonical `./metadata` JSON needs field edits, validation, push, keyword sync, or legacy fastlane migration. Not for translation-first localization, release-note drafting, or subscription/IAP display-name localizations.From its SKILL.md

Install
npx -y skills add Xopoko/build-swift-apps --skill appstore-metadata-sync

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • runs commandsInstructs the agent to run 1 command, including `python3 "$PLUGIN_ROOT/skills/appstore-metadata-sync/scripts/metadata_sync_plan.py" --app "APP_ID" --version "1.2.3" --platform IOS --dir "./metadata" --app-info "APP_INFO_ID" --version-id "VERSION_ID"`.

SKILL.md

2.2 KB, 438 tokens by cl100k_base, as published. Nobody here has run it

App Store Metadata Sync

Prefer canonical asc metadata JSON for app-info and version fields. Use .strings or fastlane flows only when specifically needed.

Use appstore-metadata-localizer when the main work is translation/adaptation across locales. Use appstore-release-notes-writer for What's New copy. Use appstore-subscription-localizer for subscription, group, or IAP display-name localizations.

Command Plan Helper

For a deterministic dry-run command plan, run the helper from the plugin root:

python3 "$PLUGIN_ROOT/skills/appstore-metadata-sync/scripts/metadata_sync_plan.py" \
  --app "APP_ID" --version "1.2.3" --platform IOS --dir "./metadata" \
  --app-info "APP_INFO_ID" --version-id "VERSION_ID" \
  --include-keywords --keywords-csv "./keywords.csv"

The helper prints commands only; it does not call ASC, mutate metadata, or read credentials. Pass --json for machine-readable output. Pass --confirming-actions only after manually verifying generated --confirm commands.

Workflow

  1. Pull canonical metadata JSON into ./metadata before editing unless the user already provided a fresh metadata tree.
  2. Resolve APP_INFO_ID when multiple app-info records exist.
  3. Edit the owning JSON fields: app-info fields for name/subtitle/privacy text and version fields for description, keywords, marketing URL, promotional text, support URL, and What's New.
  4. Validate locally, then run push --dry-run; apply/push without dry-run only after the diff and target app/version are confirmed.
  5. Use alternate .strings or fastlane migration flows only for legacy repos or explicit user requests.

Limits: name/subtitle 30, keywords 100, description/What's New 4000, promotional text 170. Use table output for human verification and JSON for automation.

References

  • references/appstore-metadata-sync.md for detailed canonical JSON, keyword, quick-edit, .strings, and fastlane commands.

What ships with it: 1 file

11.8 KB alongside SKILL.md, 1 of them executable

scripts/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.