build-swift-apps-216ddf — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited build-swift-apps-216ddf (Plugin) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
<p align="center"> <img src="assets/icon.png" width="128" alt="Build Swift Apps logo"> </p>
<h1 align="center">Build Swift Apps</h1>
<p align="center"> Agent skills for building, debugging, profiling, testing, refactoring, and shipping Swift apps across Apple platforms. </p>
<p align="center"> <b>Codex</b> · <b>Claude Code</b> · <b>Cursor</b> · <b>pi</b> · <b>Manual skill installs</b> </p>
Build Swift Apps is the Swift-focused plugin from Plug'n Skills. Use this repository when you want only the Swift, iOS, macOS, Xcode, simulator, and App Store workflows. Use Plug'n Skills when you want the full multi-plugin collection.
Build Swift Apps is a multi-agent skill pack for practical Apple-platform development. It focuses on the workflows that usually decide whether an AI coding session is useful in a real Swift repository: building the app, running it on a simulator, understanding failures, improving SwiftUI and AppKit code, profiling performance, auditing Xcode build times, and preparing apps for release.
The deepest coverage is for iOS and macOS, but the skills are written for Apple-platform Swift work in general. They are intentionally generic: no private project names, no private workflows, and no assumptions about one app architecture.
This repository is intentionally still active. It is the focused public entrypoint and install surface for Swift developers. The broader hub is Xopoko/plug-n-skills, where this same plugin lives under plugins/build-swift-apps alongside other focused agent skill packs.
For users, both install paths are valid:
For most users, the simplest install path is to paste this prompt into the coding agent they already use:
Install the Build Swift Apps plugin from https://github.com/Xopoko/build-swift-apps on this computer. Follow the repository installation instructions for the agent you are running in, install required dependencies, ask before installing optional tools, run the doctor checks, and report what was installed.If you want the whole plugin collection instead, ask your agent to install Plug'n Skills from <https://github.com/Xopoko/plug-n-skills>.
mkdir -p "$HOME/.agents/plugins/plugins"
git clone https://github.com/Xopoko/build-swift-apps.git \
"$HOME/.agents/plugins/plugins/build-swift-apps"
cd "$HOME/.agents/plugins/plugins/build-swift-apps"
./scripts/install-local-plugin.sh
./scripts/doctor.sh --profile core --profile mcpThen start a new Codex thread and ask for a focused workflow:
Use the iOS debugger skill to build and run this app on a simulator, inspect the first screen, and summarize any runtime failures.
This repository includes Claude Code plugin metadata under .claude-plugin/. After the repository is public or accessible to your GitHub account:
/plugin marketplace add Xopoko/build-swift-apps
/plugin install build-swift-apps@build-swift-apps
/reload-pluginsIf you use the appstore-screenshot-studio skill in Claude Code, install its local Node helper dependency after the plugin is installed:
cd "$HOME/.claude/plugins/marketplaces/build-swift-apps"
./scripts/install-deps.sh --profile screenshots --yesClaude Code namespaces plugin skills, so invoke them as /build-swift-apps:<skill-name> when calling skills explicitly.
This repository includes Cursor plugin metadata under .cursor-plugin/. Use Cursor's plugin install or local testing flow once the repository is available to your Cursor workspace. The same skills/ directory is packaged for Cursor, and AGENTS.md provides repository-level guidance for agents that read the open instruction format.
The skills can run with partial dependencies. Check the current machine first:
./scripts/doctor.sh --allInstall only the tool groups you need:
./scripts/install-deps.sh --profile core --profile mcp
./scripts/install-deps.sh --profile tuist --profile performance --dry-run
./scripts/install-deps.sh --all --skip ettrace --skip ipswSee docs/INSTALL.md for full install instructions, dependency profiles, and manual setup notes.
Build Swift Apps is designed to keep startup context small. In Codex-style skill loading, the agent starts with lightweight skill metadata: the skill name, description, and file pointer. The full SKILL.md body is loaded only when that skill is selected for the current task.
These estimates are generated with scripts/token-report.py using tiktoken and the o200k_base encoding. Different agents may format metadata slightly differently, but the split is the important part: small always-visible routing metadata, larger instructions on demand.
| Metric | Tokens | Notes |
|---|---|---|
| Startup metadata | 4,194 | Name, description, and file pointer for all 61 skills. |
| On-demand skill bodies | 35,699 | Full body text loaded only when a skill is selected. |
| Skill | Startup metadata | On-demand body |
|---|---|---|
app-icon-studio | 61 | 984 |
apple-dev-research | 58 | 503 |
apple-firmware-inspector | 78 | 676 |
appstore-ads-operator | 63 | 843 |
appstore-archive-uploader | 64 | 800 |
appstore-aso-auditor | 71 | 687 |
appstore-build-monitor | 51 | 334 |
appstore-connect-cli | 56 | 521 |
appstore-crash-insights | 60 | 494 |
appstore-id-resolver | 56 | 318 |
appstore-metadata-localizer | 87 | 425 |
appstore-metadata-sync | 76 | 436 |
appstore-notary-runner | 73 | 485 |
appstore-pricing-planner | 66 | 402 |
appstore-record-creator | 59 | 570 |
appstore-release-director | 79 | 726 |
appstore-release-notes-writer | 79 | 688 |
appstore-release-planner | 84 | 722 |
appstore-revenuecat-sync | 72 | 784 |
appstore-review-readiness | 79 | 440 |
appstore-screenshot-pipeline | 63 | 1,013 |
appstore-screenshot-studio | 64 | 653 |
appstore-screenshot-validator | 58 | 420 |
appstore-signing-setup | 56 | 646 |
appstore-subscription-localizer | 73 | 402 |
appstore-testflight-coordinator | 55 | 346 |
appstore-wall-publisher | 79 | 373 |
appstore-workflow-runner | 65 | 793 |
build-swift-apps | 82 | 758 |
ios-ettrace-profiler | 60 | 1,034 |
ios-intents-architect | 69 | 556 |
ios-liquid-glass-designer | 69 | 452 |
ios-memgraph-inspector | 62 | 581 |
ios-rocketsim-operator | 68 | 486 |
ios-simulator-browser | 82 | 805 |
ios-simulator-debugger | 83 | 532 |
ios-swiftui-architect | 71 | 708 |
macos-appkit-bridge | 87 | 566 |
macos-liquid-glass-designer | 78 | 593 |
macos-notarization-packager | 80 | 305 |
macos-runtime-debugger | 75 | 770 |
macos-signing-inspector | 69 | 428 |
macos-swiftpm-runner | 76 | 280 |
macos-swiftui-architect | 69 | 821 |
macos-telemetry-probe | 63 | 412 |
macos-test-diagnoser | 74 | 323 |
macos-view-architect | 61 | 500 |
macos-window-architect | 67 | 799 |
swiftpm-build-inspector | 62 | 536 |
swiftui-performance-inspector | 61 | 543 |
swiftui-view-architect | 60 | 481 |
tuist-flaky-test-stabilizer | 74 | 554 |
tuist-generation-doctor | 68 | 629 |
tuist-migration-planner | 66 | 577 |
tuist-workspace-navigator | 71 | 500 |
xcode-build-baseline | 57 | 550 |
xcode-build-strategist | 69 | 959 |
xcode-build-tuner | 68 | 749 |
xcode-compile-profiler | 61 | 494 |
xcode-project-auditor | 59 | 483 |
xcode-ui-test-stabilizer | 88 | 451 |
Measured with exact token counting and the o200k_base encoding. Regenerate the report after skill edits:
python3 scripts/token-report.pyThe skill IDs follow a deliberate naming system:
app-icon-studio for cross-platform Apple app icon generation and export.appstore-* for App Store Connect, TestFlight, screenshots, metadata, pricing, and release operations.ios-* and macos-* for platform-specific runtime, UI, packaging, and debugging work.swiftui-*, xcode-*, swiftpm-*, tuist-*, and apple-* for framework, build, package, project-generation, and research workflows.architect, inspector, strategist, tuner, director, studio, operator, coordinator, and runner.| Skill | Purpose |
|---|---|
build-swift-apps | Route broad or ambiguous Swift and Apple-platform work to the right focused skill. |
macos-runtime-debugger | Build, launch, log, and debug local macOS apps and desktop executables. |
macos-swiftpm-runner | Build, run, and test SwiftPM-first macOS packages and command-line tools. |
macos-test-diagnoser | Triage failing Xcode or SwiftPM test runs and separate real regressions from setup issues. |
xcode-ui-test-stabilizer | Create, stabilize, and run Xcode UI tests with focused failure evidence. |
macos-telemetry-probe | Add lightweight Logger instrumentation and verify events through runtime logs. |
| Skill | Purpose |
|---|---|
ios-simulator-browser | Preferred user-facing Simulator surface: mirror an iOS app into the Codex browser and render SwiftUI package previews with hot reload. |
ios-simulator-debugger | Use XcodeBuildMCP to build, run, inspect, and debug iOS simulator apps; hand off to ios-simulator-browser for visible proof. |
ios-rocketsim-operator | Use RocketSim's bundled agent skill and CLI for visible simulator UI interaction. |
ios-ettrace-profiler | Capture and interpret symbolicated ETTrace profiles for iOS simulator flows. |
ios-memgraph-inspector | Capture, inspect, and compare simulator memory graphs with leaks evidence. |
swiftui-performance-inspector | Audit SwiftUI performance from code structure before asking for profiling evidence. |
| Skill | Purpose |
|---|---|
ios-swiftui-architect | Build iOS SwiftUI screens with navigation, layout, state, forms, sheets, and media patterns. |
macos-swiftui-architect | Build macOS SwiftUI scenes, commands, toolbars, settings, split views, and menu bar extras. |
swiftui-view-architect | Refactor SwiftUI views into stable, testable, dependency-explicit components. |
macos-view-architect | Refactor macOS SwiftUI scenes and sidebar/detail structures. |
macos-appkit-bridge | Bridge SwiftUI to AppKit only where native macOS behavior needs it. |
macos-window-architect | Tune macOS 15+ SwiftUI windows, placement, restoration, and scene behavior. |
ios-intents-architect | Design App Intents, entities, queries, and shortcuts for Siri, Spotlight, widgets, and controls. |
macos-liquid-glass-designer | Adopt modern macOS SwiftUI design and Liquid Glass conventions. |
ios-liquid-glass-designer | Implement and review iOS 26+ Liquid Glass SwiftUI features. |
| Skill | Purpose |
|---|---|
xcode-build-strategist | End-to-end recommend-first build optimization: benchmark, analyze, prioritize, approve, fix, verify. |
xcode-build-baseline | Produce repeatable clean and incremental Xcode build baselines with artifacts. |
xcode-compile-profiler | Find Swift compile and type-checking hotspots with compiler diagnostics. |
xcode-project-auditor | Audit build settings, schemes, target dependencies, and script phases. |
swiftpm-build-inspector | Analyze Swift Package Manager graph shape, plugins, pins, and module variants. |
xcode-build-tuner | Apply approved build optimizations and re-benchmark to prove impact. |
| Skill | Purpose |
|---|---|
macos-signing-inspector | Diagnose existing macOS app signing, entitlements, sandboxing, hardened runtime, Gatekeeper, and trust-policy issues. |
macos-notarization-packager | Prepare or diagnose Developer ID distribution artifacts, bundle structure, and notarization readiness. |
appstore-release-director | Orchestrate an end-to-end iOS App Store release from local repo state through App Store Connect review readiness. |
app-icon-studio | Create, evaluate, export, and install iOS AppIcon asset catalogs or macOS .icns bundle icons. |
appstore-screenshot-studio | Generate, revise, translate, scrape, and crop App Store marketing screenshot panels. |
asc CLI)These skills use the public asc command from rorkai/App-Store-Connect-CLI. They cover auth and command discovery, ID resolution, Xcode archive/export, TestFlight, submission readiness, metadata and localization, screenshots, signing, notarization, subscriptions/IAP pricing, crash triage, Apple Ads, and workflow automation.
Skills: appstore-connect-cli, appstore-id-resolver, appstore-archive-uploader, appstore-build-monitor, appstore-testflight-coordinator, appstore-release-planner, appstore-review-readiness, appstore-metadata-sync, appstore-metadata-localizer, appstore-release-notes-writer, appstore-aso-auditor, appstore-screenshot-validator, appstore-screenshot-pipeline, appstore-signing-setup, appstore-notary-runner, appstore-record-creator, appstore-ads-operator, appstore-pricing-planner, appstore-subscription-localizer, appstore-revenuecat-sync, appstore-crash-insights, appstore-workflow-runner, appstore-wall-publisher.
| Skill | Purpose |
|---|---|
tuist-migration-planner | Move an existing Xcode project toward a Tuist-generated workspace. |
tuist-workspace-navigator | Work effectively in Tuist-generated Xcode workspaces. |
tuist-generation-doctor | Reproduce and triage generation or post-generation build failures. |
tuist-flaky-test-stabilizer | Use Tuist test insights to investigate and fix flaky test cases. |
| Skill | Purpose |
|---|---|
apple-dev-research | Search Apple Dev Search for Swift, SwiftUI, Xcode, iOS, and macOS community writing. |
apple-firmware-inspector | Use the ipsw CLI for Apple firmware, dyld shared cache, Mach-O, entitlements, and private API research. |
The same repository is packaged for several agent ecosystems:
| Agent/tool | Files | Notes |
|---|---|---|
| Codex | .codex-plugin/plugin.json, .mcp.json, agents/openai.yaml, skills/*/agents/openai.yaml | Native Codex plugin metadata, MCP server definitions, and OpenAI agent manifests. |
| Claude Code | .claude-plugin/plugin.json, .claude-plugin/marketplace.json | Claude Code plugin and marketplace metadata. Skills live at the plugin root, not inside .claude-plugin/. |
| Cursor | .cursor-plugin/plugin.json | Cursor plugin metadata with the same skill directory list. |
| pi | package.json | pi.skills points at every packaged skill. |
| Generic agents | AGENTS.md | Repository-level instructions for agents that support the open AGENTS.md convention. |
The plugin does not hide host requirements. Skills that need external tools preflight them and fail clearly when missing. Dependency profiles are:
| Profile | Main tools |
|---|---|
core | Xcode, Swift, xcodebuild, xcrun, git, python3, signing and plist tools. |
mcp | Node.js, npm, and npx for bundled MCP servers and browser-preview helpers. |
github | gh for GitHub-oriented publishing and issue or PR workflows. |
tuist | mise and tuist@latest. |
app-store | asc, notarytool, stapler, signing tools, and App Store Connect credentials. |
screenshots | AXe (axe) for asc screenshots capture/run, plus Node.js and the bundled appstore-screenshot-studio script dependency: sharp. |
performance | ettrace, Xcode tools, Python helper scripts, and dSYM utilities. |
firmware | ipsw. |
simulator | RocketSim.app with its bundled Agent Skill and CLI, plus Node/npx for serve-sim browser mirroring. |
.
├── .codex-plugin/ # Codex plugin manifest
├── .claude-plugin/ # Claude Code plugin and marketplace manifests
├── .cursor-plugin/ # Cursor plugin manifest
├── agents/ # OpenAI/Codex agent metadata
├── assets/ # Plugin icon assets
├── commands/ # Short command entrypoints
├── docs/ # Installation and operational documentation
├── NOTICE # Required copyright and permission notices
├── references/ # Plugin-level audits, ledgers, and routing notes
├── scripts/ # Install, dependency, doctor, and validation helpers
├── shared/ # Shared scripts, references, schemas, and support docs
└── skills/ # Installable Agent Skills, one directory per workflowAGENTS.md surfaces together../scripts/validate-package.sh
./scripts/doctor.sh --allvalidate-package.sh checks JSON manifests, script syntax, skill frontmatter, multi-agent manifest coverage, and accidental private/work-specific terms.
MIT. See LICENSE. Additional required notices are preserved in NOTICE.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.