mobile-privacy
Skill8 starsChanged 58 days agoMITView on GitHub
Implements and reviews mobile data privacy across Flutter, Android, iOS, React Native and Kotlin Multiplatform. Use for consent withdrawal, SDK collection controls, account and data deletion, retention, privacy manifests or store data disclosures. Covers the app and backend handoff; security exploits belong to mobile-security.
In this repository27 other files it gives its agents.
- AGENTS.mdAGENTS.md
- mobile-accessibilitySkill
- mobile-analyticsSkill
- mobile-androidSkill
- mobile-architectureSkill
- mobile-authSkill
- mobile-billingSkill
- mobile-ciSkill
- mobile-code-reviewSkill
- mobile-debugSkill
- mobile-detect-stackSkill
- mobile-firebaseSkill
- mobile-flutterSkill
- mobile-hardwareSkill
- mobile-iosSkill
- mobile-kmpSkill
- mobile-migrationSkill
- mobile-networkingSkill
- mobile-notificationsSkill
- mobile-observabilitySkill
- mobile-offline-syncSkill
- mobile-performanceSkill
- mobile-releaseSkill
- mobile-rnSkill
- mobile-securitySkill
- mobile-testSkill
- mobile-ui-uxSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 34
Test the network behavior, not just the settings toggle.
- Distinctive: line 41
Document server/processor retention and backup expiry with the responsible owner.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Mobile Privacy
Trace personal data from collection to deletion. Reuse the project brief, then inspect initialization, SDK configuration, local stores and backend contracts before changing a flow. Preserve the requested operation: an audit produces findings; implementation changes the scoped flow and verifies it.
Pick the reference
| Project | Read |
| Flutter | references/flutter.md |
| Android | references/android.md |
| iOS | references/ios.md |
| React Native / Expo | references/react-native.md |
| Kotlin Multiplatform | references/kotlin-multiplatform.md |
Cross-platform apps also need native references for SDK startup, permissions and store declarations. Confirm installed SDK versions and current destination-store policies; do not infer legal obligations from a permission flag or invent retention periods.
Build the data inventory
Record each data category, collection call/site, purpose, recipient SDK/backend, local storage, retention owner, deletion mechanism and declaration. Include automatic collection before the first screen, native SDKs, extensions, queued telemetry and backups. Mark inaccessible server/console evidence as unknown.
Consent is a lifecycle
- Distinguish OS permission, tracking authorization and purpose-specific app consent. Granting camera access does not authorize analytics or tracking.
- Define unknown, granted and withdrawn states for the purposes the product actually uses. Apply required defaults before collection starts; SDK initialization with collection disabled is valid when the SDK supports it.
- Persist the choice and restore it before relevant collectors run after a cold start. Define whether a choice belongs to an installation or account; do not silently inherit it across users.
- On withdrawal, stop relevant producers, cancel sends and discard queued data where required by the verified policy. An in-flight completion must not enqueue more data or re-enable collection. Use the SDK's supported deletion/reset controls and report their limits.
- Test the network behavior, not just the settings toggle. Confirm the denied/withdrawn path after relaunch and offline reconnection.
Deletion and retention
- Bind deletion to the authenticated account and require appropriate confirmation/reauthentication. Use the backend's deletion contract; erasing local preferences or signing out is not account deletion.
- Model requested, pending, completed and failed states according to the real API. A timeout has an unknown outcome: query status or retry idempotently with server support, never display completed without evidence.
- Inventory removal from caches, databases, files, search indexes, telemetry identifiers and push bindings. Stop account work before clearing local state so late callbacks cannot recreate it.
- Document server/processor retention and backup expiry with the responsible owner. Explain verified exceptions and timelines; do not promise immediate global erasure if the backend cannot prove it.
- Account deletion and subscription cancellation are distinct operations. Preserve access to the store's management flow and explain the actual billing consequences using billing guidance.
Verify and deliver
Exercise first launch without a choice, grant, withdrawal with queued uploads, restart, account switch, deletion reauthentication cancellation, network failure and confirmed deletion. Inspect sanitized traffic and local storage; use test accounts for server-side destructive checks within the task's authorization.
Return the data inventory with path:symbol evidence, implemented state transitions, test results and any unverified backend/store declaration. Use mobile-security for storage/transport threats, mobile-observability for telemetry and mobile-release for submission readiness.
Official sources
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

