Simfleet
entropyconquers/simfleet
Operate a simfleet device fleet: slimmed iOS simulators and Android emulators, parallel React Native worktree lanes with leased Metro ports, the native build cache, and per-agent device claims.
Evaluates code against Apple's App Store Review Guidelines. An agent skill from safaiyeh/app-store-review-skill.
$ npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install safaiyeh/app-store-review-skill app-store-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
Claude Code skills documentation · loads skills from .claude/skills/
Install the "app-store-review" agent skill from https://github.com/safaiyeh/app-store-review-skill/tree/main into .claude/skills/app-store-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "app-store-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install safaiyeh/app-store-review-skill app-store-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "app-store-review" agent skill from https://github.com/safaiyeh/app-store-review-skill/tree/main into .agents/skills/app-store-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "app-store-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install safaiyeh/app-store-review-skill app-store-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "app-store-review" agent skill from https://github.com/safaiyeh/app-store-review-skill/tree/main into .cursor/skills/app-store-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "app-store-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install safaiyeh/app-store-review-skill app-store-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "app-store-review" agent skill from https://github.com/safaiyeh/app-store-review-skill/tree/main into .gemini/skills/app-store-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "app-store-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install safaiyeh/app-store-review-skill app-store-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "app-store-review" agent skill from https://github.com/safaiyeh/app-store-review-skill/tree/main into .github/skills/app-store-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "app-store-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install safaiyeh/app-store-review-skill app-store-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "app-store-review" agent skill from https://github.com/safaiyeh/app-store-review-skill/tree/main into .opencode/skills/app-store-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "app-store-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
app-store-reviewEvaluates code against Apple's App Store Review Guidelines. An agent skill from safaiyeh/app-store-review-skill.
App Store Review is an agent skill from safaiyeh/app-store-review-skill. 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.
Its SKILL.md is about 3.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 23 other files (for example `.agents/plugins/marketplace.json`, `.claude-plugin/marketplace.json` and `.claude-plugin/plugin.json`).
It sits in Mobile, covering App store release and Cross-platform mobile apps. It works with Expo, React Native, Objective-C and iOS. The repository describes itself as: Skill to validate your codebase against Apple App Review. The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 7535ac5. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
stripe.comAlso links to:
developer.apple.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
App Store Review loads about 3.4k tokens when it runs. Until then it costs about 94 tokens; SKILL.md has 1,260 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from safaiyeh/app-store-review-skill at commit 7535ac5, republished under its MIT licence (© safaiyeh). 1,260 words, ~3,379 tokens.
.claude/skills/app-store-review/SKILL.md (or your agent's skills folder). This skill also uses 15 other files; get the full folder from GitHub.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 June 8, 2026 App Review Guidelines update (verified still current as of August 29, 2026). Also incorporates post-June policy announcements: social media age-rating questions (mandatory September 2026), Republic of Korea age rating changes (August/October 2026), and Brazil/EU alternative payment and distribution terms.
Use this skill when:
Read individual rule files for detailed explanations, checklists, and code examples:
| Section | File | Key Topics |
|---|---|---|
| 1. Safety | rules/1-safety.md | Objectionable content, UGC moderation, Kids Category, physical harm, data security |
| 2. Performance | rules/2-performance.md | App completeness, metadata accuracy, hardware compatibility, software requirements |
| 3. Business | rules/3-business.md | In-app purchase, subscriptions, cryptocurrencies, other business models |
| 4. Design | rules/4-design.md | Copycats, minimum functionality, spam, extensions, Apple services, login |
| 5. Legal | rules/5-legal.md | Privacy, data collection, intellectual property, gambling, VPN, MDM, developer code of conduct |
| Risk Level | Category | Section | Common Rejection Reasons |
|---|---|---|---|
| CRITICAL | Privacy & Data | 5.1 | Missing privacy policy, unauthorized data collection |
| CRITICAL | Payments | 3.1 | Bypassing in-app purchase, unclear pricing |
| HIGH | Safety | 1.x | Objectionable content, inadequate UGC moderation |
| HIGH | Performance | 2.x | Crashes, incomplete features, deprecated APIs |
| MEDIUM | Design | 4.x | Copycat apps, minimum functionality issues |
| MEDIUM | Legal | 5.x | IP violations, gambling without license |
For ATT findings, verify the SDK's configuration and actual data use. For account deletion, verify the destination and flow. For logging, inspect the data exposed and any redaction. If that evidence is unavailable, report what needs verification instead of declaring a rejection based on an API call, SDK import, or URL alone.
Swift:
// 🔴 Private API usage
let selector = NSSelectorFromString("_privateMethod")
// 🔴 Hardcoded secrets
let apiKey = "sk_live_xxxxx"
// 🔴 External payment for digital goods
func purchaseDigitalContent() {
openStripeCheckout() // Use StoreKit instead
}React Native / Expo:
// 🔴 Hardcoded secrets in JS bundle
const API_KEY = 'sk_live_xxxxx'; // REJECTION
// 🔴 External payment for digital goods
Linking.openURL('https://stripe.com/checkout'); // Use react-native-iap
// 🔴 Dynamic code execution
eval(downloadedCode); // REJECTION
// 🔴 Major feature changes via CodePush/expo-updates
// OTA updates for bug fixes only, not new features!Swift:
// 🟡 Starting Apple-defined tracking without ATT authorization
// Illustrative helper: links user data across companies for ad targeting
enableCrossCompanyAdTracking() // Called before ATT authorization
// 🟡 Account creation without deletion
func createAccount() { } // But no way to initiate deletion in the appReact Native / Expo:
// 🟡 Starting Apple-defined tracking without ATT authorization
// Illustrative helper: SDK links user data across companies for ad targeting
initializeTrackingAdSDK(); // Called before ATT authorization
// ✅ First-party analytics alone does not require ATT
// Assumes no IDFA access, cross-company advertising use, or data broker sharing
import analytics from '@react-native-firebase/analytics';
analytics().logEvent('event');
// 🟡 Delete Account button opens instructions with no deletion flow
Linking.openURL('https://example.com/help'); // Verified instructions-only page
// ✅ An in-app button may link directly to a page that completes deletion
Linking.openURL('https://example.com/delete-account');
// 🟡 Sensitive data exposed in production logs (1.6 / 5.1)
console.log('Access token:', accessToken); // Remove the secret or redact it
// 🟡 Social login without a privacy-preserving alternative (4.8)
<GoogleSigninButton /> // Also offer a login meeting 4.8 criteria
// (Sign in with Apple is the simplest option)
// 🟡 Pre-permission button that asks for the grant (5.1.1(iv))
<Button title="Enable Location" onPress={requestLocation} /> // Use "Continue" or "Next"
// 🟡 Custom review prompts (5.6.1)
showCustomAlert('Rate us 5 stars!'); // Use StoreReview.requestReview()// 🟠 Vague purpose strings in Info.plist
"This app needs camera access" // Be specific!
// 🟠 WebView-only app (insufficient native functionality)
const App = () => <WebView source={{ uri: 'https://site.com' }} />;
// 🟠 References to Android in iOS app
const text = "Also available on Android"; // REJECTIONThis skill improves through user reports. If during a session you observe that this skill failed the user, offer — once per session — to report it to the maintainer.
Offer feedback when you observe any of these. Classify with the category name — it goes in the issue title as [Feedback] <category>: <short description>.
Accuracy
Usefulness
Coverage
Behavior
Softer signals count too: if the user repeatedly dismisses the same kind of finding, overrides the skill's advice and turns out to be right, or visibly works around a checklist item, that is feedback worth offering to file — micro-friction is as valuable as a wrong rule.
Consent rules — all mandatory, no exceptions:
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: https://github.com/safaiyeh/app-store-review-skill/issues/new?template=skill-feedback.ymlIssue content: skill version (from the frontmatter above), the feedback category, the rule section involved (e.g. "3.1.1"), what the skill said or did, what should have happened instead, and today's date. Nothing else unless the user adds it.
© safaiyeh, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 15 other files in the repository root of safaiyeh/app-store-review-skill.
Open the folder on GitHubat commit 7535ac5
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in safaiyeh/app-store-review-skill, which our catalogue first saw on October 7, 2026.
App Store Review next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| App Store Review this skillsafaiyeh/app-store-review-skill | 368 | 1 repos | ~3.4k | Automated safety check: Pass | MIT | |
| Simfleetentropyconquers/simfleet | 118 | — | ~1.5k | Automated safety check: Pass | MIT | |
| Iapkit E2E Martiehyodotdev/openiap | 155 | — | ~5.4k | Automated safety check: Notes | MIT | |
| Eas App Storesexpo/skills | 2.7k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Limrun Xcodesuperset-sh/superset | 15k | — | ~6.5k | Automated safety check: Notes | Custom licence | |
| Eas App Storessickn33/agentic-awesome-skills | 47k | 1 repos | ~1.9k | Automated safety check: Pass | MIT |
entropyconquers/simfleet
Operate a simfleet device fleet: slimmed iOS simulators and Android emulators, parallel React Native worktree lanes with leased Metro ports, the native build cache, and per-agent device claims.
hyodotdev/openiap
Run IAPKit local receipt-validation E2E with the dev.hyo.martie React Native or Expo examples, the compiled packages/kit server, real Convex, and Apple or Google sandbox purchases.
expo/skills
Build and submit iOS and Android apps with EAS to TestFlight, the App Store, or Google Play.
superset-sh/superset
Build an iOS / Apple app on remote Xcode with lim xcode build instead of local xcodebuild, run project commands with lim xcode run, or run its XCTest suites with lim xcode test, from any environment…
sickn33/agentic-awesome-skills
Curated upstream guidance for Eas App Stores; use when the workflow matches the user goal.
happycapy-ai/Happycapy-skills
End-to-end mobile app development and publishing using Expo + EAS.
Works with
Categories
Evaluates code against Apple's App Store Review Guidelines. An agent skill from safaiyeh/app-store-review-skill. App Store Review is an agent skill from safaiyeh/app-store-review-skill. Evaluates code against Apple's App Store Review Guidelines.
App Store Review fits situations like: visionOS app code (Swift; expo) to identify potential App Store rejection issues before submission; tasks involving app review preparation; compliance checking.
Run `npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a claude-code`. Or copy the skill folder (the safaiyeh/app-store-review-skill repository) into .claude/skills/app-store-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a codex`. Or copy the skill folder (the safaiyeh/app-store-review-skill repository) into .agents/skills/app-store-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add safaiyeh/app-store-review-skill --skill app-store-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/app-store-review, .gemini/skills/app-store-review, .github/skills/app-store-review and .opencode/skills/app-store-review in your project.
Going by SKILL.md and its folder, App Store Review needs the command-line tools its instructions call (gh) and credentials named API_KEY. Our summary lists: A credential in API_KEY.
SKILL.md names 2 domains. In commands or code: stripe.com; the agent is likely to contact it when it follows the instructions. As links in the text: developer.apple.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
App Store Review is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.4k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with App Store Review: Simfleet (entropyconquers/simfleet, 118 stars), Iapkit E2E Martie (hyodotdev/openiap, 155 stars), Eas App Stores (expo/skills, 2.7k stars) and Limrun Xcode (superset-sh/superset, 15k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
safaiyeh (a GitHub user) maintains it in safaiyeh/app-store-review-skill, which has 368 GitHub stars. The repository was last updated on October 6, 2026.
Source: safaiyeh/app-store-review-skill on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.