Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/gaelic-ghost/socket/apple-developer-provisioning-workflownpx skills add gaelic-ghost/socket --skill apple-developer-provisioning-workflowgit clone --depth 1 https://github.com/gaelic-ghost/socketWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00085 | $0.02326 |
| Opus 5 | $0.00043 | $0.01163 |
| Sonnet 5 | $0.00017 | $0.00465 |
| Haiku 4.5 | $0.00009 | $0.00233 |
Grade A, and why
apple-developer-provisioning-workflow scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 126 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Apple Developer Provisioning Workflow
Purpose
Guide Apple Developer provisioning and CloudKit work without treating the Developer Portal as an undocumented API. The supported automation path is the App Store Connect REST provisioning API for bundle IDs, capabilities, certificates, devices, and profiles; xcrun cktool or CKTool JS for existing CloudKit containers; and local Xcode or xcrun mcpbridge discovery when a project-aware view improves safety.
The workflow never commits a .p8 key, CloudKit token, JWT, profile payload, or local signing material. It plans first, reads state before changing it, uses short-lived JWTs only in the invoking process, and requires an explicit confirmation immediately before every create, update, revoke, delete, reset, or schema/data apply operation.
When To Use
- Use this skill for App Store Connect API provisioning work involving registered bundle IDs, supported capabilities, certificates, devices, and provisioning profiles.
- Use this skill for a plan or dry run that compares an Xcode project’s bundle IDs, entitlements, signing settings, and installed profiles with Apple’s current state.
- Use this skill for existing CloudKit container schema export, schema apply, sandbox reset, or test-data workflows through
xcrun cktoolor the TypeScript-ready CKTool JS packages. - Use this skill when deciding whether an action remains official REST/CLI automation or must be completed in the Apple Developer Portal.
- Recommend
xcode-build-run-workflowfor target edits, entitlements, signing settings, build, device, or profile-install follow-through. - Recommend
xcode-coding-intelligence-workflowfor a running Xcode session or external access throughxcrun mcpbridge. - Recommend
explore-apple-swift-docswhen current Apple documentation is the primary need.
Single-Path Workflow
- Establish the account and credential boundary:
- confirm the selected team’s program type before choosing an API: this workflow’s App Store Connect path requires Apple Developer Program access; Apple Developer Enterprise Program accounts use Apple’s separate Enterprise Program API and must not be treated as App Store Connect team-key users;
- for App Store Connect provisioning endpoints, require a team API key with the least sufficient role; individual API keys cannot use provisioning endpoints. The Account Holder must request API access, and an Account Holder or Admin generates the team key;
- retain the issuer ID, key ID, and downloaded
.p8private key only in local secret storage such as Keychain or an approved local secret manager; never place them in the repo, project settings, CI logs, shell history, or agent transcript; - create a short-lived JWT locally for one invocation and avoid writing it to disk;
- for CloudKit, separately obtain a CloudKit management token from CloudKit Console and save it through
xcrun cktool save-token --type managementso macOS Keychain owns it.
- Discover before mutating:
- inspect the project’s bundle identifiers, entitlements, signing configuration, and existing profiles through Xcode-local tools or
xcrun mcpbridgewhen Xcode is open; - list the matching App Store Connect bundle IDs, capabilities, certificates, devices, and profiles with read-only REST requests;
- export the current CloudKit schema and identify the team ID, container ID, and development (Sandbox) versus production environment before selecting
cktoolor CKTool JS; - return a plan with exact proposed requests, affected IDs, expected profile relationships, and portal-only steps.
- inspect the project’s bundle identifiers, entitlements, signing configuration, and existing profiles through Xcode-local tools or
- Classify each requested operation:
- official REST: registered bundle IDs, supported bundle-ID capabilities, certificates, devices, provisioning profiles, and their documented relationships;
- official local CloudKit: schema export/apply, sandbox reset, and test-data work on an already registered container via
cktoolor CKTool JS; - portal-only: App Group registration or assignment, CloudKit container registration or assignment to an App ID, Service ID registration, and any identifier/capability action absent from the current REST resource set;
- unsupported or unclear: stop, preserve the plan, and link to the exact portal surface instead of guessing an endpoint.
- Require confirmation for mutations:
- show the exact create, update, revoke, delete, reset, schema-apply, or test-data command/request and name every affected team, identifier, certificate, device, profile, container, environment, and destructive consequence;
- default to dry-run/plan output; do not use a broad "yes" captured earlier in the conversation;
- re-read server state after a mutation and report the resulting IDs without emitting secrets.
- Choose the CloudKit adapter deliberately:
- use
xcrun cktoolfor interactive local, one-off, Keychain-backed work; - use CKTool JS in a TypeScript/pnpm project when schema or test-data operations belong in typed integration automation. Use
@apple/cktool.databasewith@apple/cktool.target.nodejs, inject the management token from local secret storage at runtime, and never commit it; - treat production schema deployment, schema resets, and data deletion as high-impact operations requiring a separate explicit confirmation and a backup/export plan.
- use
- Hand off project mutation and validation:
- make entitlement and signing changes through Xcode-aware workflows rather than hand-editing project state;
- regenerate or download a profile only after its certificate, device, and bundle-ID inputs are confirmed;
- validate with the narrowest appropriate build/signing or CloudKit sandbox test after state is updated.
What ships with it
5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 126 lines · 85 tokens per session scan A ca1d03f63efc
apple-developer-provisioning-workflow is a skill published in the GitHub repository gaelic-ghost/socket (7 stars, last pushed 6d ago), licensed Apache-2.0. It adds 85 tokens to every session and 2,326 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
xcode-disk-cleanup
Audit and safely clean Xcode-related developer storage on macOS. Use whenever a developer mentions low disk space, Xcode storage, DerivedData, simulator devices or runtimes, stale beta platforms in Xcode Settings, DeviceSupport, archives, dSYMs, CocoaPods caches, simulator dyld caches, project .build folders…
storescreens
Set up and run storescreens-cli to automate App Store screenshot capture for iOS apps: render captioned/framed App Store-ready screenshots with device bezels, markdown captions, and panoramic backgrounds; upload screenshots + per-locale metadata (name, subtitle, description, keywords, what's new, promotional text) to…
poll-github-work
Poll and rank open GitHub issues, RFCs, and pull requests for maintainer work, or start one explicitly selected item. Use when a user asks what to work on, requests backlog priorities, says "poll work," wants actionable issues or pull requests, or says "start.
test
Run tests. Use after code changes to validate. Arguments: unit (default, no GPU), e2e (with models), filter name, or all.
ddg-apple-feedback-review
Invoke ONLY when the user explicitly runs /ddg-apple-feedback-review or names this skill by name. Do NOT auto-invoke from symptom/intent matching. If the user asks about Apple feedback, iOS or macOS issues, user reports, or feedback triage without naming this skill, answer directly instead.
release
Build, sign, notarize, and publish a new DroidProxy release. Use when the user wants to cut a release, merge a PR and ship it, or asks to build/notarize/publish. Covers the full pipeline: PR merge, version bump, swift build, code signing, Apple notarization, Sparkle appcast update, and GitHub release creation.