usage-description-audit

Audit Info.plist for missing or vague NSUsageDescription keys in iOS/macOS apps.

13|1|Updated Mar 29, 2026
One-click install
npx skills add https://github.com/cruisediary/apple-app-review-skills --skill usage-description-audit
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: usage-description-audit
Source: https://github.com/cruisediary/apple-app-review-skills/tree/main/skills/permissions/usage-description-audit
Command: npx skills add https://github.com/cruisediary/apple-app-review-skills --skill usage-description-audit

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

NSUsageDescription keys in Info.plist must be descriptive and present; missing or vague keys can trigger app store rejections under Guideline 5.1.1(ii), especially when third-party SDKs introduce permissions. This skill helps identify missing or insufficiently descriptive keys, guiding you to precise remediation.

Core Features & Use Cases

  • Automated checks of Info.plist for required NS*UsageDescription keys and their descriptive values.
  • Cross-reference with code usage patterns to confirm keys align with actual permissions requested by the app.
  • Generate prioritized findings with actionable remediation notes for iOS/macOS apps preparing for App Store submission.

Quick Start

Run the audit on your iOS project to verify all required NS*UsageDescription keys are present and descriptive.

Frequently Asked Questions about usage-description-audit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I audit Info.plist for missing NSUsageDescription keys to avoid App Store rejection?

To audit Info.plist for missing NSUsageDescription keys, scan your iOS project entries and cross-reference code usage patterns to verify required permission keys exist with meaningful descriptions. This identifies inadequate values that trigger App Store rejections under Guideline 5.1.1(ii).

Why does my iOS app get rejected for vague permission descriptions in Info.plist?

Your iOS app gets rejected for vague permission descriptions because App Store Guideline 5.1.1(ii) requires NSUsageDescription keys to be present and highly descriptive. Third-party SDKs often introduce permissions silently, making automated audits necessary to find insufficient entries.

What is the best way to check Info.plist usage descriptions against actual code permission requests?

The best way to check Info.plist usage descriptions against code is to cross-reference Info.plist entries with common code paths. This verifies that declared NSUsageDescription keys align with the actual permissions requested by your app and its SDKs.

Do I need to scan code paths to find missing NSUsageDescription keys introduced by third-party SDKs?

Yes, you need to scan common code paths to find missing NSUsageDescription keys introduced by third-party SDKs. Cross-referencing code usage patterns confirms required keys exist and ensures their descriptive values match the actual permissions requested.

Can I generate prioritized remediation findings for iOS app store compliance before submission?

Yes, you can generate prioritized remediation findings for iOS App Store compliance before submission. Auditing your Info.plist produces actionable notes detailing exactly which missing or insufficiently descriptive NSUsageDescription keys require updates.

When should I run an Info.plist audit for macOS and iOS permission keys?

You should run an Info.plist audit for macOS and iOS permission keys before App Store submission. Checking early ensures all required NSUsageDescription keys are present and descriptive, preventing last-minute rejections from missing or vague permission strings.