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.