apple-swift-package-bootstrap

Bootstrap new Swift Package Manager projects with consistent defaults. Use when creating a new Swift package, scaffolding its initial structure, applying standard platform and version defaults, or customizing this skill's bootstrap defaults.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "apple-swift-package-bootstrap" with this command: npx skills add gaelic-ghost/apple-dev-skills/gaelic-ghost-apple-dev-skills-apple-swift-package-bootstrap

Apple Swift Package Bootstrap

Purpose

Create a new Swift package repository with one top-level entry point. scripts/run_workflow.py is the runtime wrapper, and scripts/bootstrap_swift_package.sh remains the implementation core for scaffold creation and validation.

When To Use

  • Use this skill for new Swift package scaffolding.
  • Use this skill when the user wants consistent package defaults, AGENTS.md generation, and immediate validation.
  • Use this skill when the user wants to customize the documented bootstrap defaults for future runs.
  • Do not use this skill as the default path for normal Xcode app collaboration work.
  • Recommend apple-xcode-workflow when the user is working in an existing Xcode project or needs Apple-platform execution after bootstrap.
  • Recommend apple-dash-docsets when the user needs Dash docset search, install, or generation work.

Single-Path Workflow

  1. Collect the required inputs:
    • name
    • type
    • destination
    • platform
    • version_profile
    • optional skip_validation
  2. Normalize aliases exactly as scripts/bootstrap_swift_package.sh does:
    • macos -> mac
    • ios -> mobile
    • both -> multiplatform
    • latest -> latest-major
    • minus-one -> current-minus-one
    • minus-two -> current-minus-two
  3. Run scripts/run_workflow.py so documented defaults are loaded from customization state and normalized into one JSON contract.
  4. Let the wrapper invoke the bundled script:
    scripts/bootstrap_swift_package.sh --name <Name> --type <library|executable|tool> --destination <dir> --platform <mac|macos|mobile|ios|multiplatform|both> --version-profile <latest-major|current-minus-one|current-minus-two|latest|minus-one|minus-two>
    
  5. Verify the generated repository:
    • Package.swift
    • .git
    • AGENTS.md
    • Tests/
    • swift build and swift test unless --skip-validation was requested
  6. Return one JSON execution summary with the created path, normalized options, and validation result.

Inputs

  • name: required; must start with a letter and contain only letters, numbers, _, or -.
  • type: library, executable, or advanced explicit tool.
  • destination: parent directory for the new package.
  • platform: mac, mobile, or multiplatform, with aliases normalized by the script.
  • version_profile: latest-major, current-minus-one, or current-minus-two, with aliases normalized by the script.
  • skip_validation: optional flag to skip swift build and swift test.
  • dry_run: optional flag to resolve defaults and emit the normalized command contract without creating files.
  • Defaults:
    • runtime entrypoint: executable scripts/run_workflow.py
    • type defaults to library
    • destination defaults to .
    • platform defaults to multiplatform
    • version_profile defaults to current-minus-one
    • validation runs unless --skip-validation is passed

Outputs

  • status
    • success: the package was created and verification succeeded
    • blocked: prerequisites or target-directory constraints prevented the run
    • failed: the script started but did not complete successfully
  • path_type
    • primary: the bundled script completed successfully
    • fallback: manual scaffold guidance is being used instead of the bundled script
  • output
    • resolved package path
    • normalized inputs
    • validation result
    • one concise next step

Guards and Stop Conditions

  • Stop with blocked if swift is missing.
  • Stop with blocked if git is missing.
  • Stop with blocked if assets/AGENTS.md is missing.
  • Stop with blocked if the target exists and contains non-ignorable files.
  • Stop with blocked if name is missing.

Fallbacks and Handoffs

  • Preferred path is always scripts/bootstrap_swift_package.sh.
  • Use manual swift package init guidance only when the script is unavailable or the user explicitly asks for the manual path.
  • tool is an advanced explicit passthrough, not a default branch of the workflow.
  • After a successful scaffold, hand off build, test, or Apple-platform execution tasks to apple-xcode-workflow.
  • Recommend apple-dash-docsets directly when the user’s next step is Dash docset or cheatsheet management.
  • scripts/run_workflow.py is the top-level runtime entrypoint and converts the shell script result into the documented JSON contract.

Customization

  • Use references/customization-flow.md.
  • scripts/customization_config.py stores and reports customization state.
  • scripts/run_workflow.py loads runtime-safe defaults from customization state before invoking the shell script.
  • scripts/bootstrap_swift_package.sh now honors the wrapper's git and AGENTS.md copy flags.

References

Workflow References

  • references/package-types.md

Contract References

  • references/automation-prompts.md
  • references/customization-flow.md

Support References

  • Recommend references/snippets/apple-swift-core.md when the new package repo should start with reusable Apple and Swift baseline policy content next to the generated AGENTS.md.
  • assets/AGENTS.md
  • references/snippets/apple-swift-core.md

Script Inventory

  • scripts/run_workflow.py
  • scripts/bootstrap_swift_package.sh
  • scripts/customization_config.py

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

apple-xcode-workflow

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

swift-package-agents-maintainer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

dash-docset-search

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

dash-docset-install-generate

No summary provided by upstream source.

Repository SourceNeeds Review