setup-ci-cd

Automate Xcode version and build number management with GitHub Actions and Xcode Cloud.

1|Updated Feb 15, 2026
One-click install
npx skills add https://github.com/n0rvyn/indie-toolkit --skill setup-ci-cd
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: setup-ci-cd
Source: https://github.com/n0rvyn/indie-toolkit/tree/main/apple-dev/skills/setup-ci-cd
Command: npx skills add https://github.com/n0rvyn/indie-toolkit --skill setup-ci-cd

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill removes the manual, error-prone work of keeping Xcode project version numbers and build numbers in sync by configuring GitHub Actions to bump MARKETING_VERSION from conventional commits and configuring Xcode Cloud to set CURRENT_PROJECT_VERSION from its build counter.

Core Features & Use Cases

  • Automated version bumps: Creates a GitHub Actions workflow that detects conventional commit types and updates MARKETING_VERSION across targets.
  • Xcode Cloud build numbers: Adds a post-clone script to set CURRENT_PROJECT_VERSION from Xcode Cloud's CI_BUILD_NUMBER so every build has a unique, monotonic build number.
  • Project hygiene and validation: Detects .xcodeproj, resolves multi-target mismatches, and enables Apple Generic versioning when needed.
  • Use Case: When initializing CI for an iOS app, run this Skill to ensure semantic version bumps on pushes and reliable build numbering for TestFlight and App Store distribution.

Quick Start

Run the setup-ci-cd skill to detect and normalize your .xcodeproj versions, enable apple-generic versioning if needed, create a GitHub Actions auto-version workflow for conventional commits, and add a ci_post_clone script so Xcode Cloud sets the build number automatically.

Frequently Asked Questions about setup-ci-cd

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

FAQPage Schema
How do I automate Xcode build number and version management in CI/CD?

Automate Xcode CI/CD versioning by syncing MARKETING_VERSION and CURRENT_PROJECT_VERSION using GitHub Actions for conventional commits and Xcode Cloud post-clone scripts. This removes manual updates by detecting targets and applying CI_BUILD_NUMBER automatically.

How do I bump MARKETING_VERSION using conventional commits in GitHub Actions?

Bump MARKETING_VERSION using conventional commits by creating a GitHub Actions workflow that detects commit types and updates the version across Xcode project targets. This ensures semantic version bumps are triggered automatically on pushes.

How do I set the build number from Xcode Cloud's CI_BUILD_NUMBER?

Set the build number from Xcode Cloud's CI_BUILD_NUMBER by adding a post-clone script to your repository. This script applies the CI_BUILD_NUMBER to CURRENT_PROJECT_VERSION, ensuring every build has a unique, monotonic number for TestFlight.

Does this CI/CD versioning setup work with multi-target Xcode projects?

Yes, this CI/CD versioning setup works with multi-target Xcode projects by detecting targets within the .xcodeproj and normalizing MARKETING_VERSION and CURRENT_PROJECT_VERSION across them. It also enables Apple Generic versioning using agvtool when needed.

What are the requirements to automate Xcode project versioning in CI?

Requirements to automate Xcode project versioning include macOS and Xcode, a repository with a .xcodeproj, and write access to create .github/workflows and ci_scripts files. It relies on conventional commit messages and agvtool for operations.