Not in the top 1,000 by GitHub stars
safaiyeh/app-store-review-skill
Skill to validate your codebase against Apple App Review
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
7197cff00372 → 7197cff00372
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 7197cff00372
No earlier version was observed for comparison.
skills/app-store-review/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
7197cff00372 → 7197cff00372
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 7197cff00372
No earlier version was observed for comparison.
Verified commit 7197cff003728b660542b37d6b6d0167fe2ec1ed
git clone --filter=blob:none --no-checkout https://github.com/safaiyeh/app-store-review-skill.git .hotskills/safaiyeh-app-store-review-skill && git -C .hotskills/safaiyeh-app-store-review-skill checkout --detach 7197cff003728b660542b37d6b6d0167fe2ec1ed
# Copy each selected skill directory from .hotskills/safaiyeh-app-store-review-skill into .claude/skills/<skill-name>/Heat
5.5- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- app-store-review
/ - app-store-review
skills/app-store-review
How it works
app-store-review
When your agent uses it
Evaluates code against Apple's App Store Review Guidelines. Use this skill when reviewing iOS, macOS, tvOS, watchOS, or visionOS app code (Swift, Objective-C, React Native, or Expo) to identify potential App Store rejection issues before submission. Triggers on tasks involving app review preparation, compliance checking, or App Store submission readiness.
What it loads into context
Frontmatter
104 tokensAlways available to the agent
SKILL.md
3,902 tokensWhen the skill is activated
Reference documents
34,994 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Apply
- Guideline Sections
- Risk Levels by Category
- Quick Reference: High-Risk Rejection Patterns
- Pre-Submission Checklist
- Reporting Skill Issues (Feedback)
- References
Files
.agents/plugins/marketplace.jsonasset364 bytes.claude-plugin/marketplace.jsonasset619 bytes.claude-plugin/plugin.jsonasset494 bytes.codex-plugin/plugin.jsonasset1,198 bytes.github/ISSUE_TEMPLATE/skill-feedback.ymlasset2,274 bytes.gitignoreasset255 bytesLICENSEasset1,065 bytesREADME.mddoc8,330 bytesSKILL.mdcore16,899 bytesagents/openai.yamlasset219 bytesmetadata.jsonasset2,549 bytesrules/1-safety.mddoc30,375 bytesrules/2-performance.mddoc37,295 bytesrules/3-business.mddoc21,578 bytesrules/4-design.mddoc19,603 bytesrules/5-legal.mddoc37,818 bytes
Read SKILL.md
# App Store Review Guidelines Checker
Comprehensive guide for evaluating iOS, macOS, tvOS, watchOS, and visionOS app code against Apple's App Store Review Guidelines. This skill covers EVERY guideline point to identify potential rejection issues before submission.
**Supports:** Swift, Objective-C, React Native, and Expo apps
**Guidelines current through:** Apple's [October 16, 2026 App Review Guidelines update](https://developer.apple.com/news/?id=92th7e5i), verified against the current English guidelines. Includes AI content creation and nonconsensual intimate imagery safeguards (1.2), creative assets (2.3.14), hidden features (2.5.19), revised purchase-link entitlements (3.1.1(a)), and alternative-distribution enforcement (5). Also covers social media age-rating questions, Republic of Korea age rating changes, and Brazil/EU alternative payment and distribution terms.
## When to Apply
Use this skill when:
- Preparing an app for App Store submission
- Reviewing code for compliance issues
- Implementing features that may trigger review concernsView the complete source on GitHubapp-store-review
When your agent uses it
Review Apple platform app code for App Store rejection risks before submission.
What it loads into context
Frontmatter
24 tokensAlways available to the agent
SKILL.md
77 tokensWhen the skill is activated
Reference documents
3,902 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
Files
../../SKILL.mddoc16,899 bytesSKILL.mdcore386 bytes
Read SKILL.md
# App Store Review
Read the [full review workflow](../../SKILL.md) and its [guideline files](../../rules/) before assessing an app. Verify time-sensitive rules against current Apple guidance and report findings supported by evidence from the app.View the complete source on GitHubSkills included
- app-store-review
- app-store-review
Repository facts
- License
- MIT
- Created
- Jan 21, 2026
- Last pushed
- Oct 17, 2026
- Forks
- 24
- Open issues
- 0
- Project activity
- Active
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 7, 2026
- No broad tool permissions
- 3 dangerous shell commandsin 2 files: SKILL.md:83 rules/2-performance.md:619
- 155 network referencesin 10 files: SKILL.md:16 metadata.json:5 rules/2-performance.md:23 and 7 more
- No hidden or obfuscated text
- No instruction overrides
- No executable scripts
- 23 references to secretsin 7 files: rules/1-safety.md:676 rules/5-legal.md:385 SKILL.md:77 and 4 more
- No requests to vote in Hot
Show all 181 signals by file
.claude-plugin/plugin.json
- Network accessline 6
"name": "safaiyeh" }, "homepage": "https://github.com/safaiyeh/app-store-review-skill", - Network accessline 7
}, "homepage": "https://github.com/safaiyeh/app-store-review-skill", "repository": "https://github.com/safaiyeh/app-store-review-skill", - Network accessline 8
"homepage": "https://github.com/safaiyeh/app-store-review-skill", - Network accessline 9
"repository": "https://github.com/safaiyeh/app-store-review-skill",
.codex-plugin/plugin.json
- Network accessline 5
"author": { "name": "safaiyeh", "url": "https://github.com/safaiyeh" - Network accessline 6
"name": "safaiyeh", "url": "https://github.com/safaiyeh" }, - Network accessline 7
"url": "https://github.com/safaiyeh" - Network accessline 8
}, "homepage": "https://github.com/safaiyeh/app-store-review-skill", "repository": "https://github.com/safaiyeh/app-store-review-skill", - Network accessline 9
"homepage": "https://github.com/safaiyeh/app-store-review-skill", - Network accessline 10
"repository": "https://github.com/safaiyeh/app-store-review-skill", - Network accessline 31
"Read" ], "websiteURL": "https://github.com/safaiyeh/app-store-review-skill", - Network accessline 32
], "websiteURL": "https://github.com/safaiyeh/app-store-review-skill", "defaultPrompt": [ - Network accessline 33
"websiteURL": "https://github.com/safaiyeh/app-store-review-skill",
.gitignore
- Access to secretsline 29
[Credential-related source omitted]
README.md
- Network accessline 7
**Current through:** Apple's official [October 16, 2026 App Review Guidelines update](https://developer.apple.com/news/?id=92th7e5i) - Network accessline 42
- [Codex](https://openai.com/codex/) - Network accessline 43
- [Claude Code](https://claude.ai/code) - Network accessline 44
- [Cursor](https://cursor.sh) - Network accessline 45
- [Windsurf](https://codeium.com/windsurf) - Network accessline 76
All feedback is welcome, big or small: false positives, findings the skill missed, guidance that was too aggressive, too noisy, too vague, or outdated, wrong section citations, bad suggested fixes, missing coverage, or the skill triggering - Access to secretsline 168
[Credential-related source omitted]
SKILL.md
- Network accessline 16
**Guidelines current through:** Apple's [October 16, 2026 App Review Guidelines update](https://developer.apple.com/news/?id=92th7e5i), verified against the current English guidelines. Includes AI content creation and nonconsensual intimate - Network accessline 16
**Guidelines current through:** Apple's [October 16, 2026 App Review Guidelines update](https://developer.apple.com/news/?id=92th7e5i), verified against the current English guidelines. Includes AI content creation and nonconsensual intimate - Access to secretsline 77
[Credential-related source omitted] - Access to secretsline 77
[Credential-related source omitted] - Network accessline 79
// 🔴 External payment for digital goods where IAP is required Linking.openURL('https://stripe.com/checkout'); // Use react-native-iap - Network accessline 79
// 🔴 External payment for digital goods where IAP is required Linking.openURL('https://stripe.com/checkout'); // Use react-native-iap - Network accessline 80
Linking.openURL('https://stripe.com/checkout'); // Use react-native-iap - Network accessline 80
Linking.openURL('https://stripe.com/checkout'); // Use react-native-iap - Dangerous shell operationline 83
eval(downloadedCode); // REJECTION - Dangerous shell operationline 83
eval(downloadedCode); // REJECTION - Network accessline 112
// 🟡 Delete Account button opens instructions with no deletion flow Linking.openURL('https://example.com/help'); // Verified instructions-only page - Network accessline 112
// 🟡 Delete Account button opens instructions with no deletion flow Linking.openURL('https://example.com/help'); // Verified instructions-only page - Network accessline 113
Linking.openURL('https://example.com/help'); // Verified instructions-only page - Network accessline 113
Linking.openURL('https://example.com/help'); // Verified instructions-only page - Network accessline 115
Linking.openURL('https://example.com/delete-account'); - Network accessline 115
Linking.openURL('https://example.com/delete-account'); - Network accessline 143
// 🟠 WebView-only app (insufficient native functionality) const App = () => <WebView source={{ uri: 'https://site.com' }} />; - Network accessline 143
// 🟠 WebView-only app (insufficient native functionality) const App = () => <WebView source={{ uri: 'https://site.com' }} />; - Network accessline 144
const App = () => <WebView source={{ uri: 'https://site.com' }} />; - Network accessline 144
const App = () => <WebView source={{ uri: 'https://site.com' }} />; - Network accessline 255
2. **Show the full draft** (exact title and body) before anything is sent. 3. **Never include the user's code, app name, bundle IDs, file paths, credentials, or proprietary details.** The report is about this skill's rules, not the user's a - Network accessline 255
2. **Show the full draft** (exact title and body) before anything is sent. 3. **Never include the user's code, app name, bundle IDs, file paths, credentials, or proprietary details.** The report is about this skill's rules, not the user's a - Network accessline 256
3. **Never include the user's code, app name, bundle IDs, file paths, credentials, or proprietary details.** The report is about this skill's rules, not the user's app. Only include such details if the user explicitly writes them into the d - Network accessline 256
3. **Never include the user's code, app name, bundle IDs, file paths, credentials, or proprietary details.** The report is about this skill's rules, not the user's app. Only include such details if the user explicitly writes them into the d - Network accessline 257
4. **Send only after the user approves the exact text**, using `gh issue create --repo safaiyeh/app-store-review-skill --title "..." --body "..."`. If `gh` is unavailable or unauthenticated, give the user this link to file it themselves: ht - Network accessline 257
4. **Send only after the user approves the exact text**, using `gh issue create --repo safaiyeh/app-store-review-skill --title "..." --body "..."`. If `gh` is unavailable or unauthenticated, give the user this link to file it themselves: ht - Network accessline 266
- [App Store Review Guidelines](https://developer.apple.com/app-store/review/guidelines/) - Network accessline 266
- [App Store Review Guidelines](https://developer.apple.com/app-store/review/guidelines/) - Network accessline 267
- [Apple Developer Program License Agreement](https://developer.apple.com/support/terms/apple-developer-program-license-agreement/) - Network accessline 267
- [Apple Developer Program License Agreement](https://developer.apple.com/support/terms/apple-developer-program-license-agreement/) - Network accessline 268
- [October 16, 2026 App Review Guidelines update](https://developer.apple.com/news/?id=92th7e5i) - Network accessline 268
- [October 16, 2026 App Review Guidelines update](https://developer.apple.com/news/?id=92th7e5i) - Network accessline 269
- [Nonconsensual intimate imagery and bait-and-switch clarification (October 2026)](https://developer.apple.com/news/?id=vvzx6cul) - Network accessline 269
- [Nonconsensual intimate imagery and bait-and-switch clarification (October 2026)](https://developer.apple.com/news/?id=vvzx6cul) - Network accessline 270
- [June 8, 2026 App Review Guidelines update](https://developer.apple.com/news/?id=a233fmpw) - Network accessline 270
- [June 8, 2026 App Review Guidelines update](https://developer.apple.com/news/?id=a233fmpw) - Network accessline 271
- [Age rating questionnaire: social media questions (July 2026)](https://developer.apple.com/news/?id=tlur8uvi) - Network accessline 271
- [Age rating questionnaire: social media questions (July 2026)](https://developer.apple.com/news/?id=tlur8uvi) - Network accessline 272
- [Age rating updates for the Republic of Korea (August 2026)](https://developer.apple.com/news/?id=oj3r9pvw) - Network accessline 272
- [Age rating updates for the Republic of Korea (August 2026)](https://developer.apple.com/news/?id=oj3r9pvw) - Network accessline 273
- [Changes for apps in the European Union (August 2026)](https://developer.apple.com/news/?id=gmws0jgp) - Network accessline 273
- [Changes for apps in the European Union (August 2026)](https://developer.apple.com/news/?id=gmws0jgp) - Network accessline 274
- [Changes to iOS in Brazil (June 2026)](https://developer.apple.com/news/?id=dhwadr2x) - Network accessline 274
- [Changes to iOS in Brazil (June 2026)](https://developer.apple.com/news/?id=dhwadr2x) - Network accessline 275
- [Human Interface Guidelines](https://developer.apple.com/design/human-interface-guidelines/) - Network accessline 275
- [Human Interface Guidelines](https://developer.apple.com/design/human-interface-guidelines/) - Network accessline 276
- [App Store Connect Help](https://developer.apple.com/help/app-store-connect/) - Network accessline 276
- [App Store Connect Help](https://developer.apple.com/help/app-store-connect/) - Network accessline 277
- [App Review Help (submission preparation, status, rejections, and appeals)](https://developer.apple.com/help/app-review/) - Network accessline 277
- [App Review Help (submission preparation, status, rejections, and appeals)](https://developer.apple.com/help/app-review/) - Network accessline 278
- [App Store asset best practices](https://developer.apple.com/app-store/asset-best-practices/) - Network accessline 278
- [App Store asset best practices](https://developer.apple.com/app-store/asset-best-practices/) - Network accessline 279
- [Apple Developer Documentation](https://developer.apple.com/documentation/) - Network accessline 279
- [Apple Developer Documentation](https://developer.apple.com/documentation/)
metadata.json
- Network accessline 5
"abstract": "Exhaustive guide for evaluating iOS, macOS, tvOS, watchOS, and visionOS app code against Apple's App Store Review Guidelines, current through Apple's October 16, 2026 update. Covers ALL 5 major sections with EVERY guideline poi - Network accessline 6
"references": [ "https://developer.apple.com/app-store/review/guidelines/", "https://developer.apple.com/support/terms/apple-developer-program-license-agreement/", - Network accessline 7
"https://developer.apple.com/app-store/review/guidelines/", - Network accessline 8
"https://developer.apple.com/support/terms/apple-developer-program-license-agreement/", - Network accessline 9
"https://developer.apple.com/news/?id=92th7e5i", - Network accessline 10
"https://developer.apple.com/news/?id=vvzx6cul", - Network accessline 11
"https://developer.apple.com/news/?id=a233fmpw", - Network accessline 12
"https://developer.apple.com/news/?id=tlur8uvi", - Network accessline 13
"https://developer.apple.com/news/?id=oj3r9pvw", - Network accessline 14
"https://developer.apple.com/news/?id=gmws0jgp", - Network accessline 15
"https://developer.apple.com/news/?id=dhwadr2x", - Network accessline 16
"https://developer.apple.com/design/human-interface-guidelines/", - Network accessline 17
"https://developer.apple.com/documentation/storekit", - Network accessline 18
"https://developer.apple.com/documentation/apptrackingtransparency", - Network accessline 19
"https://developer.apple.com/documentation/localauthentication", - Network accessline 20
"https://developer.apple.com/documentation/networkextension/nevpnmanager", - Network accessline 21
"https://developer.apple.com/help/app-store-connect/", - Network accessline 22
"https://developer.apple.com/help/app-review/", - Network accessline 23
"https://developer.apple.com/app-store/asset-best-practices/", - Network accessline 24
"https://developer.apple.com/documentation/storekit/external-purchase", - Network accessline 25
"https://developer.apple.com/documentation/healthkit", - Network accessline 26
"https://developer.apple.com/documentation/callkit", - Network accessline 27
"https://developer.apple.com/documentation/classkit", - Network accessline 28
"https://developer.apple.com/documentation/arkit"
rules/1-safety.md
- Network accessline 97
// FLAG: Links to weapon retailers Linking.openURL('https://gunbroker.com'); // REJECTION - Network accessline 98
Linking.openURL('https://gunbroker.com'); // REJECTION - Network accessline 182
Under Apple's [October 16, 2026 clarification](https://developer.apple.com/news/?id=vvzx6cul), moderation must proactively prevent and remove nonconsensual intimate imagery, including AI-generated imagery. Review creation and generation flo - Network accessline 230
const filterContent = async (content: string): Promise<FilterResult> => { // Use a service like OpenAI Moderation, Perspective API, or custom ML const response = await fetch('https://api.example.com/moderate', { - Network accessline 231
// Use a service like OpenAI Moderation, Perspective API, or custom ML const response = await fetch('https://api.example.com/moderate', { method: 'POST', - Network accessline 232
const response = await fetch('https://api.example.com/moderate', { - Network accessline 257
// REQUIRED: Support contact - expose in app const SUPPORT_EMAIL = 'support@example.com'; const SUPPORT_URL = 'https://example.com/support'; - Network accessline 259
const SUPPORT_URL = 'https://example.com/support'; - Network accessline 287
App Review may request a physical-device recording as evidence after a 1.2 rejection, as in [this reported rejection](https://github.com/safaiyeh/app-store-review-skill/pull/24#issuecomment-6055102790). Provide it when requested; it is not - Access to secretsline 676
[Credential-related source omitted] - Access to secretsline 696
[Credential-related source omitted] - Access to secretsline 697
[Credential-related source omitted] - Access to secretsline 703
[Credential-related source omitted] - Access to secretsline 706
[Credential-related source omitted] - Access to secretsline 708
[Credential-related source omitted] - Access to secretsline 712
[Credential-related source omitted] - Access to secretsline 722
[Credential-related source omitted] - Access to secretsline 726
[Credential-related source omitted] - Network accessline 735
// REQUIRED: HTTPS for all network requests // Ensure no HTTP endpoints in your app // Check fetch() calls, axios baseURL, etc. - Network accessline 736
// Ensure no HTTP endpoints in your app // Check fetch() calls, axios baseURL, etc. const api = axios.create({ - Network accessline 737
// Check fetch() calls, axios baseURL, etc. - Network accessline 738
const api = axios.create({ baseURL: 'https://api.example.com', // Must be HTTPS }); - Network accessline 739
baseURL: 'https://api.example.com', // Must be HTTPS - Access to secretsline 762
[Credential-related source omitted]
rules/2-performance.md
- Network accessline 23
**Logging:** Routine production diagnostics are not a rejection issue by themselves. Flag exposed tokens, credentials, or personal information under [1.6 Data Security](1-safety.md#16-data-security) / [5.1 Privacy](5-legal.md#51-privacy), a - Network accessline 355
Inspect the supplied asset files or App Store Connect metadata. If unavailable, identify the assets requiring verification. See [Apple's asset best practices](https://developer.apple.com/app-store/asset-best-practices/). - Network accessline 464
Do not flag `GCSupportsControllerUserInteraction = false` alone as "the wrong controller key," lack of game controller support, or a violation of 2.4.3 or 2.3.1. [Issue #14](https://github.com/safaiyeh/app-store-review-skill/issues/14) repo - Network accessline 466
Check App Store metadata separately. If it omits or contradicts the controller requirement, flag the disclosure under [2.4.3](https://developer.apple.com/app-store/review/guidelines/#hardware-compatibility) and recommend correcting the meta - Network accessline 470
[`GCRequiresControllerUserInteraction`](https://developer.apple.com/documentation/bundleresources/information-property-list/gcrequirescontrolleruserinteraction) is a **dictionary**, with only the documented platform keys below. Do not recom - Network accessline 617
// FLAG: Executing downloaded JavaScript const downloadedCode = await fetch('https://example.com/code.js'); - Network accessline 618
const downloadedCode = await fetch('https://example.com/code.js'); - Dangerous shell operationline 619
eval(downloadedCode); // REJECTION - Network accessline 708
// ❌ BAD: Hardcoded IPv4 addresses const API_URL = 'http://192.168.1.1:3000'; // REJECTION RISK - Network accessline 709
const API_URL = 'http://192.168.1.1:3000'; // REJECTION RISK - Network accessline 711
// ✅ GOOD: Use hostnames const API_URL = 'https://api.example.com'; - Network accessline 712
const API_URL = 'https://api.example.com'; - Network accessline 714
// Check all fetch() calls and API configurations - Network accessline 715
const api = axios.create({ baseURL: 'https://api.example.com', // Hostname, not IP }); - Network accessline 716
baseURL: 'https://api.example.com', // Hostname, not IP - Network accessline 744
const MyWebView = () => ( <WebView source={{ uri: 'https://example.com' }} - Network accessline 745
<WebView source={{ uri: 'https://example.com' }} // Uses WKWebView on iOS - compliant! - Network accessline 746
source={{ uri: 'https://example.com' }} - Access to secretsline 912
[Credential-related source omitted]
rules/3-business.md
- Access to secretsline 59
[Credential-related source omitted] - Network accessline 73
const purchasePremiumFeatureBad = () => { // REJECTION for digital content! Linking.openURL('https://stripe.com/checkout'); - Network accessline 74
// REJECTION for digital content! Linking.openURL('https://stripe.com/checkout'); Linking.openURL('https://paypal.com/checkout'); - Network accessline 75
Linking.openURL('https://stripe.com/checkout'); - Network accessline 76
Linking.openURL('https://paypal.com/checkout'); - Network accessline 80
const purchasePhysicalProduct = () => { // Physical goods CAN use external payment Linking.openURL('https://yourstore.com/checkout'); - Network accessline 81
// Physical goods CAN use external payment Linking.openURL('https://yourstore.com/checkout'); }; - Network accessline 82
Linking.openURL('https://yourstore.com/checkout'); - Network accessline 192
Apple's [October 16, 2026 update](https://developer.apple.com/news/?id=92th7e5i) incorporates Music Streaming Services Entitlements into the StoreKit External Purchase Link guidance. Verify the current [external purchase documentation](http - Access to secretsline 493
[Credential-related source omitted]
rules/4-design.md
- Network accessline 38
// ❌ BAD: Pure WebView wrapper (REJECTION) const App = () => ( <WebView source={{ uri: 'https://mywebsite.com' }} /> - Network accessline 39
const App = () => ( <WebView source={{ uri: 'https://mywebsite.com' }} /> ); - Network accessline 40
<WebView source={{ uri: 'https://mywebsite.com' }} /> - Network accessline 44
const App = () => ( <SafeAreaView> <WebView source={{ uri: 'https://mywebsite.com' }} /> - Network accessline 45
<SafeAreaView> <WebView source={{ uri: 'https://mywebsite.com' }} /> </SafeAreaView> - Network accessline 46
<WebView source={{ uri: 'https://mywebsite.com' }} /> - Network accessline 69
<View> <NativeHeader /> <WebView source={{ uri: 'https://mywebsite.com' }} /> - Network accessline 70
<NativeHeader /> <WebView source={{ uri: 'https://mywebsite.com' }} /> <NativeTabBar /> - Network accessline 71
<WebView source={{ uri: 'https://mywebsite.com' }} />
rules/5-legal.md
- Network accessline 9
- [ ] Apps must comply with ALL legal requirements in any location where they are made available — it's the developer's obligation to understand and conform to local laws - [ ] Apps that solicit, promote, or encourage criminal or clearly re - Network accessline 11
- [ ] Apps facilitating human trafficking or exploitation of children, including child sexual abuse material, trigger notification of appropriate authorities, App Store removal, and a block from alternative distribution (see Apple's [Octobe - Network accessline 297
Apple's [privacy guidance for pre-alert screens](https://developer.apple.com/design/human-interface-guidelines/privacy#Pre-alert-screens-windows-or-views) requires a single action that opens the system permission alert. A neutral "Continue" - Network accessline 342
Apple's [account deletion guidance](https://developer.apple.com/support/offering-account-deletion-in-your-app/) permits direct web completion and reasonable identity verification or confirmation steps. Apps outside highly regulated industri - Access to secretsline 385
[Credential-related source omitted] - Network accessline 412
// This page lets the user complete deletion, with reauthentication if needed const deleteAccountOnWeb = () => { return Linking.openURL('https://example.com/delete-account'); - Network accessline 413
const deleteAccountOnWeb = () => { return Linking.openURL('https://example.com/delete-account'); }; - Network accessline 414
return Linking.openURL('https://example.com/delete-account'); - Network accessline 417
// ❌ BAD: The destination only gives instructions, with no deletion flow const openDeletionInstructions = () => { return Linking.openURL('https://example.com/help/delete-account'); - Network accessline 418
const openDeletionInstructions = () => { return Linking.openURL('https://example.com/help/delete-account'); }; - Network accessline 419
return Linking.openURL('https://example.com/help/delete-account'); - Network accessline 454
**When ATT applies:** [Apple defines tracking](https://developer.apple.com/app-store/user-privacy-and-data-use/) as linking app user/device data with data from other companies' apps, websites, or offline properties for targeted advertising - Access to secretsline 796
[Credential-related source omitted] - Access to secretsline 822
[Credential-related source omitted] - Access to secretsline 859
[Credential-related source omitted] - Access to secretsline 861
[Credential-related source omitted] - Access to secretsline 862
[Credential-related source omitted] - Network accessline 870
<Button title="Privacy Policy" onPress={() => Linking.openURL('https://example.com/privacy')} - Network accessline 871
title="Privacy Policy" onPress={() => Linking.openURL('https://example.com/privacy')} /> - Network accessline 872
onPress={() => Linking.openURL('https://example.com/privacy')}
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 143 facts
- Network access in prose of documentationREADME.md:7Low confidence
- Network access in prose of documentationREADME.md:42Low confidence
- Network access in prose of documentationREADME.md:43Low confidence
- Network access in prose of documentationREADME.md:44Low confidence
- Network access in prose of documentationREADME.md:45Low confidence
- Network access in prose of documentationREADME.md:76Low confidence
- Access to secrets in prose of documentationREADME.md:168Low confidence
- Network access in prose of the SKILL.mdSKILL.md:16Low confidence
- Network access in prose of the SKILL.mdSKILL.md:16Low confidence
- Access to secrets in code of the SKILL.mdSKILL.md:77High confidence
- Access to secrets in code of the SKILL.mdSKILL.md:77High confidence
- Network access in code of the SKILL.mdSKILL.md:79High confidence
- Network access in code of the SKILL.mdSKILL.md:79High confidence
- Network access in code of the SKILL.mdSKILL.md:80High confidence
- Network access in code of the SKILL.mdSKILL.md:80High confidence
- Dangerous shell operation in code of the SKILL.mdSKILL.md:83High confidence
- Dangerous shell operation in code of the SKILL.mdSKILL.md:83High confidence
- Network access in code of the SKILL.mdSKILL.md:112High confidence
- Network access in code of the SKILL.mdSKILL.md:112High confidence
- Network access in code of the SKILL.mdSKILL.md:113High confidence
- Network access in code of the SKILL.mdSKILL.md:113High confidence
- Network access in code of the SKILL.mdSKILL.md:115High confidence
- Network access in code of the SKILL.mdSKILL.md:115High confidence
- Network access in code of the SKILL.mdSKILL.md:143High confidence
- Network access in code of the SKILL.mdSKILL.md:143High confidence
- Network access in code of the SKILL.mdSKILL.md:144High confidence
- Network access in code of the SKILL.mdSKILL.md:144High confidence
- Network access in prose of the SKILL.mdSKILL.md:255Low confidence
- Network access in prose of the SKILL.mdSKILL.md:255Low confidence
- Network access in prose of the SKILL.mdSKILL.md:256Low confidence
- Network access in prose of the SKILL.mdSKILL.md:256Low confidence
- Network access in prose of the SKILL.mdSKILL.md:257Low confidence
- Network access in prose of the SKILL.mdSKILL.md:257Low confidence
- Network access in prose of the SKILL.mdSKILL.md:266Low confidence
- Network access in prose of the SKILL.mdSKILL.md:266Low confidence
- Network access in prose of the SKILL.mdSKILL.md:267Low confidence
- Network access in prose of the SKILL.mdSKILL.md:267Low confidence
- Network access in prose of the SKILL.mdSKILL.md:268Low confidence
- Network access in prose of the SKILL.mdSKILL.md:268Low confidence
- Network access in prose of the SKILL.mdSKILL.md:269Low confidence
- Network access in prose of the SKILL.mdSKILL.md:269Low confidence
- Network access in prose of the SKILL.mdSKILL.md:270Low confidence
- Network access in prose of the SKILL.mdSKILL.md:270Low confidence
- Network access in prose of the SKILL.mdSKILL.md:271Low confidence
- Network access in prose of the SKILL.mdSKILL.md:271Low confidence
- Network access in prose of the SKILL.mdSKILL.md:272Low confidence
- Network access in prose of the SKILL.mdSKILL.md:272Low confidence
- Network access in prose of the SKILL.mdSKILL.md:273Low confidence
- Network access in prose of the SKILL.mdSKILL.md:273Low confidence
- Network access in prose of the SKILL.mdSKILL.md:274Low confidence
and 93 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.