ios-release

Prepares and stages Fedi iOS App Store releases through the App Store Connect REST API.

78|27|Updated May 4, 2024
One-click install
npx skills add https://github.com/fedixyz/fedi --skill ios-release-fedixyz
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ios-release
Source: https://github.com/fedixyz/fedi/tree/main/.agents/skills/ios-release
Command: npx skills add https://github.com/fedixyz/fedi --skill ios-release-fedixyz

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Preparing an iOS release in the App Store Connect console means manually creating a version, attaching a build, and editing What's New text in every locale, which is slow and error-prone. This Skill performs the same preparation through the App Store Connect REST API, with read-back verification after every write. ## Core Features & Use Cases - Version and build management: Create an appStoreVersions record, attach a processed TestFlight build, and verify state, release type, and build number via API calls. - Localized release notes: List and patch What's New text for every locale, or port all notes from a previous version with byte-for-byte read-back verification using the included port-whats-new.py script. - Controlled submission flow: Submit a prepared version for App Review only on explicit user approval, while releasing to users is always left to a human in the console. - Use Case: After CI uploads a new TestFlight build for Fedi, ask the agent to prepare the 26.X.Y release: it finds the newest valid build, creates the version record, attaches the build, copies last version's release notes into all locales, and reports the in-flight version link. ## Quick Start Prepare the Fedi iOS App Store release for version 26.X.Y using the latest valid TestFlight build and reuse the previous version's release notes.

Frequently Asked Questions about ios-release

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prepare an iOS App Store release via the App Store Connect API?▼

Create an appStoreVersions record with the version string and release type, attach a processed build via a PATCH on the build relationship, then patch each locale's What's New text. Verify the final record shows PREPARE_FOR_SUBMISSION with the correct build before stopping.

How to copy App Store release notes from a previous version?▼

Run the port-whats-new.py script with the previous and new version ids. It patches every locale from the source version onto the target, creates missing locales, and fails unless the read-back matches the source byte for byte.

Can the App Store Connect API upload iOS builds to TestFlight?▼

No, the App Store Connect API cannot upload binaries. Builds must be uploaded by CI workflows such as deploy-to-testflight, and Apple must finish processing them into a VALID state before they can be attached to a version.

Why does App Store Connect API return 401 or 403 errors?▼

A 401 usually means the key json was assembled incorrectly, such as mangled PEM whitespace; rebuild it from the .p8 file. A 403 on version creation means the key lacks the App Manager or Admin role, as TestFlight-scoped or Developer keys are insufficient.

What are the limitations of automating App Store releases with this API?▼

The automation stops at preparation and optional review submission; releasing an approved version to users is never automated and must be done manually in App Store Connect. Submission for review also requires explicit separate user approval.