🛡️ Our Privacy Pledge
- We do not sell your personal information
- We do not display ads in the App
- We do not track you across apps
- We do not access your GitHub password (OAuth only)
- We do not upload your AI API Keys to our servers
- We do not use your notes to train AI models
- Core data is stored only locally; iCloud sync is planned as a future Pro feature
- We follow the principle of data minimization
01Introduction
The App is a GitHub Star management tool for Apple platforms, built on a "local-first" philosophy. Unless you actively enable cloud sync or AI features, the vast majority of data processing happens on your local Apple device.
This policy applies when you use the Starcat macOS app or the Starcat Browser Plugin. The developer and operator of Starcat (hereinafter "we") is the "personal information controller" under this policy.
Note that this policy does not cover third-party services (such as GitHub, Apple, AI providers, etc.), each of which is governed by its own privacy policy.
02Core Principles
We adhere to the following principles when processing your personal information:
- Lawfulness, Fairness & Necessity: We only collect personal information when there is a clear legal basis and it is necessary for a specific business purpose;
- Data Minimization: We strictly limit the scope of collection and do not collect information unrelated to the App's functionality;
- Transparency: We inform you of our data processing practices in clear and understandable language;
- User Control: We provide convenient ways for you to access, modify, delete, export, and withdraw consent for your data;
- Security: We take necessary technical and organizational measures to protect your information.
03Information We Collect
The following table discloses all categories of data the App collects, following Apple App Store "App Privacy Details" classification standards:
| Data Type | Collected? | Purpose | Linked to User |
|---|---|---|---|
| Contact InfoName, email, etc. | Only when contacting support | Customer support | Yes |
| User ContentNotes, tags, status | Yes | Core functionality, cross-device sync | Yes |
| IdentifiersGitHub User ID, Apple ID | Yes | Authentication, sync, subscription | Yes |
| PurchasesSubscription / purchase records | Apple-processed only | Entitlement verification | Yes |
| Usage DataAllowlisted feature events | Opt-in, off by default | Anonymous analytics | No |
| DiagnosticsCrash logs, performance | Opt-in, off by default | Bug fixes, stability | No (de-identified) |
| Location | Not collected | — | — |
| Health, Financial, Contacts, Browsing History, Sensitive Info, Surroundings, Body Data | Not collected | — | — |
3.1 Information You Provide
- GitHub OAuth: Access token, username, avatar URL, email (if visible), user ID. We request
read:userandpublic_reposcopes — we cannot access your GitHub password or private repos. - User Content: Custom tags, private notes, read status, favorites, saved searches you create.
- AI Credentials (optional): When you choose "BYOK" mode, your AI provider API Key. This key is stored only in your local Apple Keychain and is never uploaded to our servers.
- Support Communications: Your email address and message content when contacting us.
3.2 Information from Third Parties
- GitHub Repository Data: Public repo metadata (name, description, language, license, stars, forks, update time, README, releases) fetched via GitHub API for Star management.
- Apple Purchase Receipts: Subscription or purchase receipts via StoreKit 2 for Pro entitlement verification.
- AI Service Responses: Summaries, tag suggestions, health assessments from your chosen AI provider when you enable AI features.
3.3 Automatically Collected Information
- Anonymous Telemetry (only after you opt in): Allowlisted event names, App version, and coarse value buckets are sent to Aptabase. Telemetry excludes your GitHub identity, repository names, search queries, README content, notes, AI prompts or responses, API keys, tokens, and local file paths.
- Device & Environment Info (only when a crash occurs and you've opted in): Device model, macOS version, App version, call stack, memory usage. Does not include your content data.
- IP Address: Only when communicating with our self-hosted AI proxy, temporarily logged for security auditing and abuse prevention — retained no longer than 30 days.
UserDefaults, File timestamp, System boot time, Disk space (Required Reason APIs). All usage is for compliant purposes. See the privacy details submitted to App Store Connect.
04How We Use Information
We use collected information only in the following contexts:
- Provide & maintain core functionality: Star sync, local full-text search, tag management, notes, and future CloudKit sync;
- Verify identity & subscription: Via GitHub OAuth and Apple StoreKit;
- Provide AI and knowledge-base RAG capabilities (requires configuration and user action): Summaries, tag suggestions, semantic search, Embedding, reranking, cited question answering, and optional live context;
- Provide External Search (optional): Send a generated search query and request options to the provider you selected, then use returned results as temporary evidence;
- Fix bugs & improve experience: Based on optional anonymous telemetry and voluntarily submitted diagnostics;
- Respond to support requests;
- Comply with legal obligations: Cooperate with lawful authority requests as required.
05Where Information Is Stored
The App follows a "local-first" layered storage design:
| Data | Storage Location | Encryption |
|---|---|---|
| GitHub OAuth Token | Device Keychain | Apple Secure Enclave |
| AI API Key (BYOK) | Device Keychain | Apple Secure Enclave |
| Star repo cache (rebuildable) | Local SQLite | FileVault full-disk encryption |
| User Content (tags, notes, status) | Local SQLite + iCloud (optional) | FileVault + iCloud E2E encryption |
| RAG index, conversations, citations & local audit metadata | Local SQLite | FileVault full-disk encryption |
| Remote AI / Embedding requests & responses | Selected AI provider | HTTPS (TLS 1.2+) |
| Anonymous telemetry (opt-in) | Aptabase | HTTPS (TLS 1.2+) |
| Payment receipts | Apple StoreKit | Managed by Apple |
5.1 CloudKit Sync
The current version of Starcat does not provide iCloud / CloudKit sync. This feature is planned for a future release as a Starcat Pro benefit. When iCloud sync becomes available and you enable it, your user content will be stored in your own iCloud private database (not our servers). We cannot access any content in your iCloud. Sync follows Apple's published end-to-end encryption. See Apple iCloud Security Overview.
5.2 Self-Hosted AI Proxy (optional)
When using our "Starcat Pro" AI proxy, requests transit through our server to the underlying AI provider. Our proxy: does not persist your request content; does not use your content for training; retains only necessary request time, quota count, error codes for quota management and troubleshooting.
5.3 RAG, Embedding & External Search
When you trigger knowledge-base RAG, Starcat may send your question, a limited window of conversation history, repository metadata, README text, AI summaries, retrieved knowledge chunks (including private notes), attachments selected for that turn, repository code context, and temporary GitHub or web context to the AI provider you configured. A remote Embedding or reranking provider receives the knowledge text needed to create vectors or rank evidence. Local models such as Ollama process data on your Mac.
When External Search is enabled for a turn, the selected provider receives a generated query and request options. Web result content is used only as temporary evidence and is not written to long-term RAG history. Starcat may retain local audit metadata such as provider name, query summary, result count, URLs, timing, and errors. Private repository names are excluded unless you enable the separate private-repository search setting.
06Sharing & Disclosure
We do not actively share your personal information with third parties except:
- With your explicit consent;
- To provide a feature you chose: e.g., forwarding AI, Embedding, reranking, or search requests to your selected provider;
- Legal obligations: In response to lawful requests from competent authorities;
- Protection of rights: As necessary to protect the safety, property, or rights of users, the public, or ourselves;
- Business transfers: In case of merger, acquisition, or asset transfer, we will notify you in advance and require the recipient to continue honoring this policy.
07Third-Party Services
The App integrates or may interact with the following third-party services, each independently operated under its own privacy policy:
- GitHub
- Account authentication, star/README sync, release notifications.
GitHub Privacy Statement ↗ - Apple iCloud / CloudKit
- Cross-device user content sync.
Apple Privacy Policy ↗ - Apple App Store / StoreKit
- App distribution and subscription payments.
- OpenAI
- Optional AI provider. OpenAI Privacy Policy ↗
- Anthropic
- Optional AI provider. Anthropic Privacy Policy ↗
- Google Gemini
- Optional AI provider. Google Privacy Policy ↗
- DeepSeek
- Optional AI provider. DeepSeek Privacy Policy ↗
- Ollama (local)
- Optional local model runtime — data never leaves your device.
- External Search providers
- Optional web context through AnySearch, Tavily, Exa, or Brave Search. The selected provider receives the query and request options needed to return results.
- Aptabase
- Optional anonymous telemetry, off by default. It receives only allowlisted product events after you opt in.
Aptabase Privacy Policy ↗
08Data Security
We implement industry-standard technical and organizational measures to protect your personal information:
- Transport Security: All network communication encrypted via HTTPS / TLS 1.2+;
- Storage Security: Sensitive credentials in Apple Keychain with Secure Enclave hardware encryption; local database protected by macOS FileVault full-disk encryption;
- Access Control: Strict ACL on credentials — only the App process can access;
- Least Privilege: Only requests system permissions necessary for functionality; no location, contacts, camera, or microphone access;
- Sandbox Isolation: Apple App Sandbox enabled to restrict system resource access;
- Regular Audits: Periodic security review of code, dependencies, and network communications.
09Data Retention & Deletion
- Local SQLite Data
- Retained until you delete it or uninstall the App
- Keychain Credentials
- Retained until you log out or uninstall
- iCloud / CloudKit Data
- Controlled by your iCloud settings; can be cleared via iCloud settings panel
- AI Proxy Logs
- Maximum 30 days, only for troubleshooting & quota
- Support Emails
- Retained 12 months, periodically purged after resolution
- Payment Receipts
- Retained by Apple per their policies
When you uninstall the App: Local SQLite and config files are automatically removed with the sandbox by macOS; Keychain credentials may persist (macOS behavior) — manually remove "Starcat" items in Keychain Access if needed; iCloud data can be deleted in Settings → Apple ID → iCloud → Manage Account Storage.
10Your Rights
Under applicable laws, you have the following rights over your personal information:
- Right to be informed: Understand our data practices via this policy;
- Right of access: All your data is directly viewable in-app; partial export in JSON format;
- Right to rectification: Edit your notes, tags, etc. at any time;
- Right to erasure: Delete items individually, wipe local database, or uninstall;
- Right to data portability: Export all user content in JSON format, compatible with OhMyStar / Astral;
- Right to withdraw consent: Disable AI, revoke GitHub authorization, turn off iCloud sync, disable diagnostics at any time;
- Right to object to automated decisions: No automated decisions with significant impact exist; AI suggestions are advisory and require manual confirmation;
- Right to complain: Lodge complaints with supervisory authorities (e.g., EU DPA).
To exercise these rights, contact us via Section 16. We will respond within 15 business days. We will verify your identity through reasonable means to protect account security.
11Cross-Border Data Transfers
As third-party services (GitHub, Apple iCloud, AI providers) may be headquartered or have servers outside your country, enabling certain features will involve cross-border data transfers:
- GitHub API: Data transferred to GitHub servers (primarily US);
- Apple iCloud: Operated by Apple's global data centers (or local equivalents where available);
- Non-EU AI Providers: Data transferred to OpenAI (US), Anthropic (US), Google (global), etc.;
We use contractual clauses and select compliant service providers to reasonably safeguard cross-border transfers. By enabling AI features or iCloud sync, you consent to such necessary transfers. If you have concerns, use local-only features or switch to Ollama local models.
12Children's Privacy
The App is not directed at children under 14. We do not knowingly collect personal information from children under 14. If you are a parent or guardian and discover your child has used the App without consent, contact us via Section 16 — we will promptly delete the information and cease processing.
For minors aged 14+, we recommend reviewing this policy with a parent or guardian before use.
13Tracking & Advertising
The App integrates no third-party ad SDKs, displays no ads, and shares no data with advertisers.
Under Apple's App Tracking Transparency (ATT) framework, the App does not perform any "tracking": does not collect IDFA; does not combine your information with third-party data for targeted advertising; does not share data with data brokers.
Therefore, the App will not prompt you with an ATT authorization request.
14Cookies & Similar Technologies
As a native macOS app, the App itself does not use browser cookies. However, system components may involve similar mechanisms in the following scenarios:
- README-rendering WebView: May use temporary cookies for GitHub resource loading, cleared when the app closes;
- GitHub OAuth flow: Handled by Apple
ASWebAuthenticationSessionin a fully isolated browser session, completely separate from your system browser cookies.
The App does not use these mechanisms for tracking or behavioral analysis.
15Policy Updates
We may update this policy from time to time. For material changes (including: expanded data collection scope, changed use purposes, changed sharing or transfer rules, changed rights or exercise procedures), we will notify you through one or more of:
- Prominent notice on first app launch;
- In-app notification;
- Announcement on the official website.
If you disagree with an updated policy, you may stop using the App before the changes take effect. Continued use constitutes acceptance. Historical versions are archived on our website.
16Contact Us
If you have any questions, feedback, complaints, or wish to exercise your data subject rights, please contact us:
- Support
- dong4j@gmail.com
- Website
- https://starcat.ink
- App Store
- Submit feedback or a review on our App Store page
If you believe our processing infringes on your legal rights and remains unresolved after contacting us, you may lodge a complaint with the competent data protection supervisory authority.
17Starcat Browser Plugin
The Starcat Browser Plugin is a local companion for the Starcat macOS app. It displays repository context on GitHub repository pages and on supported Google Search result pages that contain GitHub repository links.
17.1 Page data processed locally
- On GitHub, the extension reads the current repository URL and the minimum rendered page structure needed to place Starcat controls.
- On supported Google Search pages, it identifies GitHub repository links in up to eight visible results.
- This page data is used only to provide visible extension features. The extension does not retain complete page content or browsing history.
17.2 Pairing and local communication
- The local Starcat service URL and Local API Key are stored in
chrome.storage.localfor pairing. - The key is sent only as a Bearer credential to the Starcat Companion service on
127.0.0.1orlocalhost. - When you save a private note, its content is sent only to the Starcat app running on the same Mac. The extension does not retain note content in extension storage.