Install
$ agentstack add skill-gaelic-ghost-socket-bootstrap-swift-package ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Bootstrap Swift Package
Purpose
Create a new Swift package repository with one top-level entry point, a simplicity-first Swift baseline, and a local-first maintainer surface. scripts/run_workflow.py is the runtime wrapper, and scripts/bootstrap_swift_package.sh is the deterministic implementation core for scaffold creation, testing-mode selection, validation, and maintain-project-repo installation with the swift-package profile.
Companion Plugin Requirement
This skill can be discovered from a standalone apple-dev-skills install, but its mutating bootstrap path installs repo-maintenance files through the companion productivity-skills plugin. If the companion maintain-project-repo runner is missing, tell the user to install productivity-skills alongside apple-dev-skills, or add the socket marketplace with codex plugin marketplace add gaelic-ghost/socket and then install or enable both apple-dev-skills and productivity-skills from the Socket catalog.
When To Use
- Use this skill for new Swift package scaffolding.
- Use this skill when the user wants consistent package defaults,
AGENTS.mdgeneration, 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.
- Do not use this skill as the default path for guidance sync inside an already-existing Swift package repo.
- Recommend
swift-package-build-run-workfloworswift-package-testing-workflowwhen the user is doing ordinary package development after bootstrap. - Recommend
xcode-build-run-workflowwhen the user is working in an existing Xcode project or needs Xcode-managed Apple-platform build, run, toolchain, Metal, or mutation work after bootstrap. - Recommend
xcode-testing-workflowwhen the user needs Xcode-managed Apple-platform test execution after bootstrap. - Recommend
sync-swift-package-guidancewhen an existing Swift package repo needsAGENTS.mdor workflow-guidance alignment rather than fresh bootstrap. - Recommend
explore-apple-swift-docswhen the user needs Apple or Swift docs exploration, Dash-compatible lookup, or Dash follow-up work.
Single-Path Workflow
- Collect the required inputs:
nametypedestinationplatformversion_profile- optional
testing_mode - optional
skip_validation
- Normalize aliases exactly as
scripts/bootstrap_swift_package.shdoes:
macos -> macios -> mobileboth -> multiplatformlatest -> latest-majorminus-one -> current-minus-oneminus-two -> current-minus-two
- Run
scripts/run_workflow.pyso documented defaults are loaded from customization state and normalized into one JSON contract. - Select testing mode before scaffold creation:
- require Swift
6.2or newer before bootstrap planning continues because the generated manifest uses PackageDescription package traits for the defaultswift-configurationdependency; treat6.2as the current minimum floor, not as a ceiling - prefer
swift-testingon supported toolchains that exposeswift package init --enable-swift-testing - use explicit XCTest-selection flags when
xctestis requested and the active toolchain exposes them - fall back to the toolchain's default XCTest template only when
xctestis requested and the activeswift package initcommand exposes no testing-selection flags at all - stop with
blockedwhen the local toolchain is older than6.2or when the activeswift package initcommand cannot guarantee the requested testing mode
- Let the wrapper invoke the bundled script:
``bash scripts/bootstrap_swift_package.sh --name --type --destination --platform --version-profile --testing-mode ``
- Verify the generated repository:
Package.swift.swiftformat- explicit
swiftLanguageModes: [.v6]inPackage.swift - default
swift-configurationdependency inPackage.swiftwith theConfigurationproduct on the primary target and package traitsReloading,YAML, andCommandLineArguments // swift-tools-version:remains6.2or newer when the generated manifest keeps trait-enabled dependencies.gitAGENTS.md.codex/environments/swift-package.tomlscripts/repo-maintenance/hooks/pre-commit.samplescripts/repo-maintenance/validate-all.shscripts/repo-maintenance/release.shTests/swift buildandswift testunless--skip-validationwas requested- branch protection, when enabled, requires the GitHub Actions check context
validate; do not require the display-style stringValidate Repo Maintenance / validate - when a GitHub remote is created or already exists, route repository
settings audit or mutation through productivity-skills:maintain-github-repository instead of embedding a separate Apple-specific baseline
- Ensure the generated guidance encodes the shared Swift policy:
- apply the detailed local policy in
references/snippets/apple-swift-package-core.md - keep the generated repo aligned with the simplicity-first, shape-preserving, and anti-ceremony Swift guidance in that snippet
- keep the generated repo aligned with the checked-in
.swiftformatplus format-then-verify pre-commit-hook baseline in that snippet - keep the generated Apple and Swift docs-source guidance aligned with the Xcode MCP, Dash, source-repository, and readable-web fallback order in that snippet
- verify the generated guidance does not treat generic no-JS web search/open results, snippets, metadata shells, or bare Apple Developer URLs as evidence that Apple docs were read
- keep the generated manifest aligned with the explicit Swift 6 default language-mode declaration
swiftLanguageModes: [.v6] - keep the generated manifest aligned with the default
swift-configurationdependency, using theConfigurationproduct and package traits.defaults,Reloading,YAML, andCommandLineArguments - treat the generated
// swift-tools-version:as a starting point that can be lowered to match the real package compatibility target, but never below the current6.2floor while trait-enabled dependencies remain in the manifest - preserve the project-appropriate logging and telemetry guidance from that snippet
- Hand off package execution guidance cleanly:
- use
swift buildandswift testby default - recommend
sync-swift-package-guidancewhen a later repo-guidance refresh or merge is needed for the created package repo - recommend
swift-package-build-run-workfloworswift-package-testing-workflowfor ordinary package development after bootstrap - recommend
xcode-build-run-workflowfor package builds that need Xcode-managed toolchain behavior, such as package builds that depend on Xcode-provided Metal or other Apple-managed build assets
- 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 explicittool.destination: parent directory for the new package.platform:mac,mobile, ormultiplatform, with aliases normalized by the script.version_profile:latest-major,current-minus-one, orcurrent-minus-two, with aliases normalized by the script.testing_mode:swift-testingorxctest.skip_validation: optional flag to skipswift buildandswift 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 typedefaults tolibrarydestinationdefaults to.platformdefaults tomultiplatformversion_profiledefaults tocurrent-minus-onetesting_modedefaults toswift-testing- validation runs unless
--skip-validationis passed - supported and validated Swift toolchain floor is Swift
6.2; newer stable Swift toolchains are allowed and preferred when validation passes - generated manifests should preserve an explicit Swift 6 language-mode declaration with
swiftLanguageModes: [.v6]when the active manifest surface supports it - generated manifests include
swift-configurationby default with theConfigurationproduct on the primary target and traits.defaults,Reloading,YAML, andCommandLineArguments - generated manifests may lower
// swift-tools-version:from the scaffold default when the package should support the previous supported Swift minor, but they should never go below the current6.2floor while trait-enabled dependencies remain in the manifest - Codex GUI local environments are installed from
templates/codex-local-environments/swift-package.tomlinto.codex/environments/swift-package.toml maintain-project-repoinstallsscripts/repo-maintenance/on successful mutating runs
Outputs
statussuccess: the package was created and verification succeededblocked: prerequisites, unsupported toolchains, unsupported testing-mode selections, or target-directory constraints prevented the runfailed: the script started but did not complete successfullypath_typeprimary: the bundled script completed successfullyfallback: manual scaffold guidance is being used instead of the bundled scriptoutput- resolved package path
- normalized inputs
- resolved
testing_strategy - detected
swift_toolchainon real runs - installed
.codex/environments/swift-package.toml - installed
maintain-project-repopaths - validation result
- one concise next step
Guards and Stop Conditions
- Stop with
blockedifswiftis missing. - Stop with
blockedifswift --versioncannot be parsed into a supported toolchain version. - Stop with
blockedif the local Swift toolchain is older than6.2. - Stop with
blockedifgitis missing. - Stop with
blockedifassets/AGENTS.mdis missing. - Stop with
blockedif the target exists and contains non-ignorable files. - Stop with
blockedifnameis missing. - Stop with
blockedif the requested testing mode cannot be honored or guaranteed by the activeswift package initcommand.
Fallbacks and Handoffs
- Preferred path is always
scripts/bootstrap_swift_package.sh. - Use manual
swift package initguidance only when the script is unavailable or the user explicitly asks for the manual path. toolis an advanced explicit passthrough, not a default branch of the workflow.- Within the supported Swift
6.2or newer floor, prefer currentswift package inittesting flags when the active toolchain exposes them; only rely on the older default XCTest template whenxctestis requested and the activeswift package initcommand exposes no testing-selection flags at all. - After a successful scaffold, hand off ordinary package execution tasks to
swift-package-build-run-workfloworswift-package-testing-workflow. - After a successful scaffold, hand off Xcode-managed package build or run tasks to
xcode-build-run-workflow. - After a successful scaffold, hand off Xcode-managed package test tasks to
xcode-testing-workflow. - After a successful scaffold, use
scripts/repo-maintenance/validate-all.shfor local maintainer validation andscripts/repo-maintenance/release.sh --mode standard --version vX.Y.Zfrom a feature branch or worktree for protected-main releases. - After a successful scaffold, configure protected branches to require
validatefor the managed repo-maintenance workflow; GitHub exposes that job check context directly rather than the workflow title plus job string. - When the new package is published to GitHub, use
productivity-skills:maintain-github-repository to audit repository features, merge modes, security automation, sign-off policy, and branch protection.
- After a successful scaffold, hand off later repo-guidance alignment work to
sync-swift-package-guidance. - For ordinary package work, prefer
swift buildandswift test. - For package builds that need Xcode-managed SDK or toolchain behavior, use
xcode-build-run-workflowandxcodebuildguidance instead of stretching the bootstrap skill into an execution skill. - Recommend
explore-apple-swift-docsdirectly when the user’s next step is Apple or Swift docs exploration or Dash-compatible docs management. scripts/run_workflow.pyis 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.pystores and reports customization state.scripts/run_workflow.pyloads runtime-safe defaults from customization state before invoking the shell script.scripts/bootstrap_swift_package.shnow honors the wrapper's git andAGENTS.mdcopy flags.- Run the Python wrapper and customization entrypoints through
uv, because they rely on inlinePyYAMLscript metadata rather than a repo-global Python environment. - In consuming repos, the supported path is
uv run scripts/run_workflow.py ...anduv run scripts/customization_config.py ...; do not assume plainpythonorpython3will have the needed YAML dependency installed.
References
Workflow References
references/package-types.md
Contract References
references/automation-prompts.mdreferences/customization-flow.md
Support References
- Recommend
references/snippets/apple-swift-package-core.mdwhen the new package repo should start with reusable SwiftPM baseline policy content next to the generatedAGENTS.md. assets/AGENTS.mdreferences/snippets/apple-swift-package-core.md
Script Inventory
scripts/run_workflow.pyscripts/bootstrap_swift_package.shscripts/customization_config.py
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: gaelic-ghost
- Source: gaelic-ghost/socket
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.