본문으로 건너뛰기
cccskills
무료GitHub에 공개

ios-scaffold

Scaffold a new iOS app with SDLC and submission-safe defaults — diffable project files, app + test targets, deployment-target policy, a git-stamped build number, and the Info.plist keys the pre-flight checker wants so the project passes TestFlight from day one. Use when starting a new iOS project.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md4.3 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

iOS Scaffold

Create a new iOS app project that is submission-safe from the first commit — so it doesn't hit the TestFlight/App Store blockers ios-testflight-release and the pre-flight checker exist to catch. Belongs to the sdlc-team-ios plugin; pairs with swiftui-architect (structure) and swift-language-expert (language).

Arguments

  • app-name — the app / bundle name (defaults to asking).

Steps

1. Choose the project-generation approach

Prefer a diffable, mergeable project definition over a hand-managed .xcodeproj:

  • Swift Package Manager (an app built as a package + a thin app target) for library-first / simple apps.
  • Tuist or XcodeGen to generate the .xcodeproj from a committed manifest (Tuist's Project.swift, or an XcodeGen YAML manifest) that is committed, so project changes review cleanly and don't cause merge conflicts.

Ask which the team prefers; default to XcodeGen/Tuist for an app that needs a real Xcode project.

2. Establish structure

  • App target + unit-test target (Swift Testing) + optional UI-test target (XCUITest).
  • A SwiftPM feature-module layout if the app is non-trivial (feature packages + Core/DesignSystem/ Models; thin app composition root) — see swiftui-architect.
  • .gitignore covering *.xcodeproj (if generated), DerivedData/, .build/, *.xcuserstate, .DS_Store, and any secrets file.

3. Wire submission-safe Info.plist defaults (this is the point of the skill)

Pre-set the keys the pre-flight checker looks for, so uploads don't stall or get rejected later:

  • ITSAppUsesNonExemptEncryption = false (if the app uses only exempt encryption such as standard HTTPS) — skips the export-compliance questionnaire on every upload.
  • A NS…UsageDescription placeholder-with-a-real-sentence for each capability the app will use (add them as you add frameworks; the pre-flight check maps CoreMotion→NSMotionUsageDescription, etc.). Leave a comment reminding that these must be real human sentences.
  • Set the deployment target to the team's minimum-supported iOS per policy (and keep it consistent across targets and Package.swift).

4. Git-stamped, monotonic build number

  • Keep MARKETING_VERSION fixed pre-1.0 (e.g. 1.0.0) and stamp CFBundleVersion from git rev-list --count HEAD (optionally plus the short SHA and date) in a build-phase script, so every build is unique, monotonic, and traceable to a commit.
  • On the target that runs that script, set ENABLE_USER_SCRIPT_SANDBOXING = NO (leave it YES elsewhere) — a script that reads git/the environment fails to archive under the sandbox otherwise.

5. Release-default safety

  • Gate debug menus, feature flags, verbose logging, and staging endpoints behind a build config or a flag that is OFF in Release unless explicitly enabled.
  • No secrets/API keys in the repo or the bundle — use .xcconfig/build settings + a secrets mechanism.

6. CI and privacy manifest

  • Offer to run ios-ci to generate the GitHub Actions workflow (which gates on the pre-flight checks).
  • Add a PrivacyInfo.xcprivacy stub if the app will use required-reason APIs or bundle third-party SDKs.

7. Verify

  • Build once; run the unit-test target; and run the pre-flight checker (python -m ios_preflight.cli <project>) — it should be clean (or only INFO) on a fresh scaffold.

8. Report

Summarise what was generated, the generation approach chosen, the build-number policy, and confirm the pre-flight checker is clean. Note anything the user must fill in (real purpose strings, signing team).

Notes

  • The goal is a project that passes ios-testflight-release pre-flight on day one — don't leave the export-compliance key or build-number policy "for later".
  • For app architecture choices (state, navigation, persistence), hand off to swiftui-architect; for idiomatic Swift, to swift-language-expert.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Generate a GitHub Actions workflow for Android — JDK + Gradle caching, build, unit + instrumented tests, Android Lint, run the Android pre-flight checks, and (optionally) sign + upload a signed app bundle to a Play track. Use when setting up CI for an Android app.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SteveGJones/ai-first-sdlc-practices412026년 10월 5일 업데이트

Validated Google Play release — runs the pre-flight checks and clears the Play policy gates, builds a signed app bundle with a git-stamped versionCode, uploads to a track, and walks staged rollout (with halt/roll-forward). Use when releasing an Android app to Play.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SteveGJones/ai-first-sdlc-practices412026년 10월 5일 업데이트

Scaffold a new Android app with SDLC and Play-safe defaults — Kotlin/Compose Gradle project with version catalog, convention plugins, module layout, a targetSdk that meets the Play mandate, R8 on release, and git-ignored signing so it passes the pre-flight checker from day one. Use when starting a new Android project.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SteveGJones/ai-first-sdlc-practices412026년 10월 5일 업데이트

Set up Android app signing safely — generate an upload keystore, enroll in Play App Signing, and wire a Gradle release signingConfig that reads secrets from a git-ignored keystore.properties / CI (never committed). Use when configuring signing for a Play release.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SteveGJones/ai-first-sdlc-practices412026년 10월 5일 업데이트

Pick an existing workflow for a task or author a new one — recommends workflow + team formation, or generates a fresh workflow YAML with command prompts and team validation.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SteveGJones/ai-first-sdlc-practices412026년 10월 5일 업데이트

Guide the team through writing a change-impact record for IEC 62304 / FDA / ISO 26262 ASIL C+ projects. Surfaces the affected REQ/DES/TEST/CODE artefacts and captures human-attested verification approach.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SteveGJones/ai-first-sdlc-practices412026년 10월 5일 업데이트

SteveGJones의 스킬 모두 보기

이 스킬의 문제 신고