Agent skill · Audited from source
asc-revenuecat-catalog-sync
skill · rorkai/app-store-connect-cli-skillsMIT licenceAudited 30 Oct 2026 · source 2b8a88b29324
Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 2b8a88b29324 and found no filesystem, network or shell access and no hard-coded secrets. What it does: 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…
Cite
Cite this page
ModelsAtlas. “asc-revenuecat-catalog-sync (rorkai/app-store-connect-cli-skills)”. Retrieved 30 Oct 2026. https://modelsatlas.com/skills/rorkai/asc-revenuecat-catalog-sync
2 skills are called “asc-revenuecat-catalog-sync”. You are viewing rorkai/app-store-connect-cli-skills.
- rorkai/app-store-connect-cli-skills★ 1.1k✓SAFE
- rudrankriyam/app-store-connect-cli-skills★ 1.1k✓SAFE
Trust audit
Audit 0.4.1 · source read 30 Oct 2026
SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 16,667 of 17,602 audited skills.
What the source does
- FilesystemNone observedNo reads or writes in the source
- NetworkNone observedNo outbound calls in the source
- ShellNone observedNo commands run in the source
- DependenciesPinnedNothing floats
- SecretsNone foundNo keys in source
Five audit layers
| Layer | What we check | Result | Findings |
|---|---|---|---|
L0 Provenance | Repo owner, licence, archive status, activity | PASS | 0 |
L1 Static source | Secrets, path traversal, supply chain, hidden code | NA | 0 |
L2 Instructions | Prompt injection, authority framing, hidden directives | PASS | 0 |
L3 Inventory | The files and declarations match the source | PASS | 0 |
L4 Sandbox | Run in isolation and watch behaviour | SKIPPED why | 0 |
Gates applied: no behavioural pass.
Findings (0)
No findings at any severity. We re-audit when the source changes.
Audit 0.4.1 · source sha 2b8a88b29324 · 30 Oct 2026Report an issue or request a re-scan
Provenance
Who published it, and what the verdict is pinned to
- Publisherrorkai GitHub organizationOwner of the repository this skill is read from
- Source folderrorkai/app-store-connect-cli-skills/skills/asc-revenuecat-catalog-syncThe exact folder we audited
- LicenceMITAs the repository states it
- Commit pinned for this verdict2b8a88b29324A new audit runs when the source changes
- Repository statusNot archivedLast push 3 days ago
- Sandboxed runNot runSkills are read, not executed; layer L4 is skipped
What it tells the agent
Full source on GitHub ↗Its description: 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…
--- name: asc-revenuecat-catalog-sync description: 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 RevenueCat catalog sync Use this skill to keep App Store Connect (ASC) and RevenueCat aligned, including creating missing ASC items and mapping them to RevenueCat resources. ## When to use - You want to bootstrap RevenueCat from an existing ASC catalog. - You want to create missing ASC subscriptions/IAPs, then map them into RevenueCat. - You need a drift audit before release. - You want deterministic product mapping based on identifiers. ## Preconditions - `asc` authentication is configured (`asc auth login` or `ASC_*` env vars). - RevenueCat MCP server is configured and authenticated. - In Cursor and VS Code, OAuth auth is available for RevenueCat MCP. API key auth is also supported. - You know: - ASC app ID (`APP_ID`) - RevenueCat `project_id` - target RevenueCat app type (`app_store` or `mac_app_store`) and bundle ID for create flows - Use a write-enabled RevenueCat API v2 key when applying changes. ## Safety defaults - Start in **audit mode** (read-only). - Require explicit confirmation before writes. - Never delete resources in this workflow. - Continue on per-item failures and report all failures at the end. ## Canonical identifiers - Primary cross-system key: ASC `productId` == RevenueCat `store_identifier`. - Keep `productId` stable once products are live. - Do not use display names as unique identifiers. ## Scope boundary - RevenueCat MCP configures RevenueCat resources; it does not create App Store Connect products directly. - Use `asc` commands to create missing ASC subscription groups, subscriptions, and IAPs before RevenueCat mapping. ## Modes ### 1) Audit mode (default) 1. Read ASC source catalog. 2. Read RevenueCat target catalog. 3. Build a diff with actions: - missing in ASC - missing in RevenueCat - mapping conflicts (identifier/type/app mismatch) 4. Present the plan. Audit-only requests finish with findings; apply requests require approval covering the complete current diff. Reuse prior approval if the refreshed diff is unchanged. ### 2) Apply mode (explicit) Execute approved actions in this order: 1. Ensure ASC groups/subscriptions/IAP exist. 2. Ensure RevenueCat app/products exist. 3. Ensure entitlements and product attachments. 4. Ensure offerings/packages and package attachments. 5. Verify and print a final reconciliation summary. ## Step-by-step workflow ### Step A - Read current ASC catalog ```bash asc subscriptions groups list --app "APP_ID" --paginate --output json asc iap list --app "APP_ID" --paginate --output json # for each subscription group: asc subscriptions list --group-id "GROUP_ID" --paginate --output json ``` ### Step B - Read current RevenueCat catalog (MCP) Use these MCP tools (with `project_id` and pagination where applicable): - `mcp_RC_get_project` - `mcp_RC_list_apps` - `mcp_RC_list_products` - `mcp_RC_list_entitlements` - `mcp_RC_list_offerings` - `mcp_RC_list_packages` ### Step C - Build mapping plan Map ASC product types to RevenueCat product types: - ASC subscription -> RevenueCat `subscription` - ASC IAP `CONSUMABLE` -> RevenueCat `consumable` - ASC IAP `NON_CONSUMABLE` -> RevenueCat `non_consumable` - ASC IAP `NON_RENEWING_SUBSCRIPTION` -> RevenueCat `non_renewing_subscription` Suggested entitlement policy: - subscriptions: one entitlement per subscription group (or explicit map provided by user) - non-consumable IAP: one entitlement per product - consumable IAP: no entitlement by default unless user asks ### Step D - Ensure missing ASC items (if requested) Resolve every parent and version before writing. Match groups by exact reference name and products by `productId`; never treat a display name as identity. Reuse the canonical ID when the resource already exists, and run a create command only when the fully paginated read proves it is missing. A RevenueCat product mapping is not proof that the corresponding ASC subscription is review-ready. ```bash # Resolve GROUP_ID by exact referenceName. asc subscriptions groups list --app "APP_ID" --paginate --output json # If and only if the fully paginated list has zero exact matches: asc subscriptions groups create --app "APP_ID" --reference-name "Premium" --output json # For one match, reuse its ID. For more than one, stop and require an explicit GROUP_ID. # Resolve SUB_ID by exact productId within GROUP_ID. Run setup only for a missing # parent or an explicitly approved reconciliation of that same product ID. asc subscriptions list --group-id "GROUP_ID" --paginate --output json # If and only if the fully paginated list has zero exact matches, run setup: asc subscriptions setup \ --app "APP_ID" \ --group-id "GROUP_ID" \ --reference-name "Monthly" \ --product-id "com.example.premium.monthly" \ --subscription-period ONE_MONTH \ --review-screenshot "./review.png" \ --price "3.99" \ --price-territory "USA" \ --territories "USA" \ --no-verify \ --output json # For one match, reuse its ID. For more than one, stop and require an explicit SUB_ID. # Re-run setup for an existing SUB_ID only for an explicitly approved reconciliation. # Resolve the unique mutable group version for this review lifecycle. asc subscriptions groups versions list --group-id "GROUP_ID" --state PREPARE_FOR_SUBMISSION --paginate --output json # If and only if the list has zero matches: asc subscriptions groups versions create --group-id "GROUP_ID" --output json # For one match, reuse .data[0].id. For more than one, stop and require an explicit GROUP_VERSION_ID. # Resolve the en-US localization on GROUP_VERSION_ID. Create it only when # missing; update the resolved localization ID when its values differ. asc subscriptions groups versions localizations list --version-id "GROUP_VERS
Excerpt, first 6,000 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.
Install
Pinned to the audited commit 2b8a88b
git clone https://github.com/rorkai/app-store-connect-cli-skills git -C app-store-connect-cli-skills checkout 2b8a88b29324
The author documents no install command, so this uses the repository directly. Our verdict covers commit 2b8a88b29324 only.
Works in which agents?
What its own text says, not a test
| Agent | Status | More |
|---|---|---|
| Cursor | Mentioned in its text, not tested | Skills for Cursor · About Cursor |
Audit history
Every audit, every source change
- ✓SAFE B 89 / 100
first audit · source
2b8a88b29324
README badge
For maintainers · shows the latest audit
[](https://modelsatlas.com/skills/rorkai/asc-revenuecat-catalog-sync/)
The badge shows our verdict and grade for this skill, and links back to this page. It changes when the audit does.
Similar skills
All automation skills →rorkai/app-store-connect-cli-skills
Bulk-localize subscription, subscription-group, and in-app purchase display names across App Store locales using asc, including API 4.4.1 version-scoped v2 resources. Use when filling or updating subscription/IAP names…
rorkai/app-store-connect-cli-skills
Orchestrate TestFlight distribution, groups, testers, and What to Test notes using asc. Use when rolling out betas.
rudrankriyam/app-store-connect-cli-skills
Orchestrate TestFlight distribution, groups, testers, and What to Test notes using asc. Use when rolling out betas.
rudrankriyam/app-store-connect-cli-skills
Submit or update a Wall of Apps entry in the App-Store-Connect-CLI repository using `asc apps wall submit`. Use when the user says "submit to wall of apps", "add my app to the wall", or "wall-of-apps".
rorkai/app-store-connect-cli-skills
Resize and validate App Store screenshots with current asc screenshot-size data and macOS sips. Use when preparing or fixing screenshots for App Store Connect submission.
rudrankriyam/app-store-connect-cli-skills
Resize and validate App Store screenshots with current asc screenshot-size data and macOS sips. Use when preparing or fixing screenshots for App Store Connect submission.
Add this badge to your README
[](https://modelsatlas.com/skills/rorkai/asc-revenuecat-catalog-sync/)
<a href="https://modelsatlas.com/skills/rorkai/asc-revenuecat-catalog-sync/"><img src="https://modelsatlas.com/skills/rorkai/asc-revenuecat-catalog-sync/badge.svg" alt="ModelsAtlas: SAFE B"></a>
Questions about asc-revenuecat-catalog-sync
What does the asc-revenuecat-catalog-sync skill do?
Is asc-revenuecat-catalog-sync safe to install?
What can asc-revenuecat-catalog-sync access on my machine?
Which assistants does asc-revenuecat-catalog-sync work with?
How current is this page?
Sources
- github.com/rorkai/app-store-connect-cli-skills/tree/main/skills/ — the audited source at commit 2b8a88b29324 and every finding aboveObserved · 30 Oct 2026
Spotted something wrong? Report a correction · Methodology
Keep going in your AI
Opens with this page as the source. We add nothing else to the prompt.
- What does the asc-revenuecat-catalog-sync skill do?
- Is asc-revenuecat-catalog-sync safe to install?
- What can asc-revenuecat-catalog-sync access on my machine?