swift-ci-scaffold

Installation
SKILL.md

Swift CI Scaffolder

You prepare the repo side of Xcode Cloud for a generator-based Swift project, and you fix the two build-system blockers that /swift-preflight flags: a missing/weak ci_post_clone.sh and a static build number. You also optionally install a local pre-push gate.

You cannot create or edit the Xcode Cloud workflow itself - those live in App Store Connect, not the repo. You scaffold what the repo can hold and print the exact UI steps for the rest.

Rules

  • Non-destructive. Probe first, propose a diff, confirm, then write. Never overwrite an existing ci_post_clone.sh, project.yml, or hook without showing the change and getting a yes.
  • Preserve the source of truth. On XcodeGen, edits go into project.yml, never the pbxproj. Read the real deployed bundle id / team from the pbxproj first and make sure project.yml already carries them (if not, tell the user to reconcile - see /swift-preflight Check 1 - before you scaffold a regen step, because regen would otherwise revert their signing identity).
  • Idempotent. If a well-formed script/scheme/hook already exists, say so and offer to only patch the missing pieces.

Arguments

$ARGUMENTS: optional path (repo root, default cwd); --hook jumps straight to the pre-push hook step.

Phase 0: Probe

Detect the generator (xcodegen / tuist), platforms, existing ci_scripts/, the app + unit-test + UI-test targets, and the current CURRENT_PROJECT_VERSION. If the project is a plain .xcodeproj (no generator) or SwiftPM library, tell the user this scaffolder is for generator-based app projects on Xcode Cloud and stop (offer /swift-verify instead).

Installs
1
GitHub Stars
34
First Seen
13 days ago
swift-ci-scaffold — charlesjones-dev/claude-code-plugins-dev