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 skills add markdavidgan/apple-dev-skills --skill architecture-fit-checkgit clone --depth 1 https://github.com/markdavidgan/apple-dev-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/markdavidgan/apple-dev-skills/architecture-fit-check)<a href="https://agentmods.dev/skills/markdavidgan/apple-dev-skills/architecture-fit-check"><img src="https://agentmods.dev/badge/skills/markdavidgan/apple-dev-skills/architecture-fit-check/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/markdavidgan/apple-dev-skills/architecture-fit-check"><img src="https://agentmods.dev/badge/skills/markdavidgan/apple-dev-skills/architecture-fit-check.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What 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.1 | $0.00146 | $0.01811 |
| Opus 5 | $0.00073 | $0.00905 |
| Sonnet 5 | $0.00029 | $0.00362 |
| Haiku 4.5 | $0.00015 | $0.00181 |
Grade A, and why
architecture-fit-check 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 10d 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 — 91 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Architecture Fit Check
One job: catch the wrong-primitive mistake before it costs weeks. The most expensive Apple-platform bugs are usually not bad code — they are the right code on the wrong primitive, where a powerful, opaque framework is bent to a job it was never built for, and the platform answers with failures you cannot observe.
The core principle
Match the primitive to the problem's actual shape, not to an elegant invariant. A property you want — privacy, safety, "it can't leak by construction" — that ordinary app logic keeps cheaply must not be bought with a heavyweight, unobservable mechanism. Prefer the simplest primitive that ships, is debuggable in production, and fails legibly. Build what Apple's own engineers would ship, not a purity machine that cannot deliver.
When to run this
- Before adopting a powerful or opaque Apple framework — the high-tax, hard-to-observe ones with a background reconciler: CloudKit sharing (
CKShare) +NSPersistentCloudKitContainermirroring,NSFileCoordinator/UIDocument,NSFileProviderExtension, Core Data persistent history, App Intents donation graphs, WidgetKit timeline orchestration. - When a subsystem has survived 3+ fixes and each fix surfaces a new break in a different place (the architectural-failure signal from systematic debugging).
- When the justification for a design is "this makes X structurally impossible" rather than "this does X."
- Reviewing any new sync / sharing / persistence / app-extension subsystem.
The five-question audit
For the framework or primitive under review, answer in writing:
- What is this primitive's ONE job? State it in a sentence. (e.g. "
CKShare= let multiple users co-edit one mutable record graph.") - What is my problem's actual shape? Append-only or mutable? One author per record or many? One-way delivery or true co-editing? Request/response or stream?
- Do (1) and (2) match? If you use under ~10% of the primitive's purpose, you pay full tax for a fraction of fit. Mismatch → stop.
- Am I adopting this to do a job, or to make something impossible? "Impossible by construction" is a red flag when ordinary app logic keeps the property for free.
- Can I observe and debug it in production, on a real device? If the failure mode is an opaque background reconciler with no log surface (mirroring delegate, file-coordinator deadlock), that is a deferred outage. Demand observability before adoption.
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.
- 10d ago First seen · 91 lines · 146 tokens per session scan A ed54b880849d
architecture-fit-check is a skill published in the GitHub repository markdavidgan/apple-dev-skills (5 stars, last pushed 11d ago), licensed MIT. It adds 146 tokens to every session and 1,811 once invoked, about $0.0007 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
asc-ppp-pricing
Set territory-specific pricing for subscriptions and in-app purchases using current asc setup, pricing summary, price import, and price schedule commands. Use when adjusting prices by country or implementing localized PPP strategies.
asc-revenuecat-catalog-sync
Reconcile App Store Connect subscriptions and in-app purchases with RevenueCat products, entitlements, offerings, and packages using asc and RevenueCat MCP. Use when setting up or syncing subscription catalogs across ASC and RevenueCat.
asc-apple-ads
Use when managing Apple Ads with asc, including OAuth profiles, ad-account discovery, Platform API v1 campaigns and targeting, reports, assets, recommendations, guarded mutations, raw requests, and Campaign Management API v5 migration.
asc-aso-audit
Run an offline ASO audit on canonical App Store metadata under ./metadata and surface keyword gaps using Astro MCP. Use after pulling metadata with asc metadata pull.
asc-localize-metadata
Automatically translate and sync App Store metadata (description, keywords, what's new, subtitle) to multiple languages using LLM translation and asc CLI. Use when asked to localize an app's App Store listing, translate app descriptions, or add new languages to App Store Connect.
asc-shots-pipeline
Orchestrate iOS screenshot automation with xcodebuild/simctl for build-run, AXe for UI actions, JSON settings and plan files, Koubou-based framing (asc screenshots frame), and screenshot upload (asc screenshots upload). Use when users ask for automated screenshot capture, AXe-driven simulator flows, frame composition…