Mana network verification guide =============================== This guide is the expected answer reference for checking the real Mana binary with your own tools. BEGIN GENERATED: egress-allowlist Complete allowlist - api.anthropic.com [credentialReachable]: Claude usage API (Bearer) - platform.claude.com [credentialReachable]: Claude OAuth token refresh - chatgpt.com [credentialReachable]: Codex/ChatGPT usage API (Bearer) - auth.openai.com [credentialReachable]: Codex OAuth token refresh - cloudcode-pa.googleapis.com [credentialReachable]: Gemini Code Assist quota (Bearer) - oauth2.googleapis.com [credentialReachable]: Gemini OAuth token refresh - cursor.com [credentialReachable]: Cursor usage summary (Cookie) - license.silent-spell.com [noCredential]: License activate/refresh/reset/trial-sync Sent field categories: - license: Gumroad license key supplied by the user - device_id: Per-device identifier used for license binding - device_public_key: Public key for this device's license proof - app_version: Mana app version - device_model: Coarse Mac model identifier when readable - device_check_token: Apple DeviceCheck token for trial sync - progress: Coarse trial progress bucket - nonce: Device-proof nonce - device_proof: Device-proof signature - token: Signed Mana license token Negative declaration: Never contains provider credentials, user prompts, or usage body content. - downloads.silent-spell.com [noCredential]: App auto-updates: the Sparkle updater fetches the appcast and DMG here. Sparkle uses its own networking, not Mana's guarded HTTP client, so this host is listed for firewall completeness but is not enforced by the egress guard. Sent field categories: - sparkle_update_request: Sparkle HTTPS GET request metadata only; no Mana request body Negative declaration: Never contains provider credentials, user prompts, or usage body content. Official endpoints: Official vendor endpoints use your own token to call the official API. Mana does not send provider credentials to Silent Spell or Mana infrastructure. END GENERATED: egress-allowlist Redirects --------- HTTP redirects cannot move a request to a new host: the guard blocks every cross-host redirect outright (no Mana endpoint legitimately redirects to a different host). Same-host redirects are re-checked against the full allowlist — scheme, port, and credential-tier — exactly like the original request. So a credential can never follow a redirect to a host other than the one it started on, regardless of whether it lives in a header, the URL, or the request body. Non-HTTPClient egress (disclosed, not allowlisted) -------------------------------------------------- Payment flow: Mana's only payment-related network request is the Gumroad license key sent to license.silent-spell.com (verified server-side against Gumroad). The purchase itself is a browser hand-off to silentgumroad.gumroad.com opened in your system browser — Mana never contacts Gumroad through its own HTTPClient, so it is disclosed here but not in the enforced allowlist. The x.com share link and Apple's DeviceCheck attestation are likewise not Mana HTTPClient egress and carry no provider credentials, prompts, or usage content. Antigravity quota is read from the locally-installed agy CLI's own server on 127.0.0.1 (loopback), not from a remote host. Mana issues no outbound network request for Antigravity — the agy process contacts Google itself — so Antigravity carries no Mana egress host and is not in the enforced allowlist. Grok billing is read through the locally-installed official xAI Grok Build CLI's ACP stdio interface. Mana does not read Grok credentials or contact a remote xAI/Grok billing host; the CLI owns authentication and its upstream traffic. Grok therefore carries no Mana egress host and is not in the enforced allowlist. Expected answer reference ------------------------- Provider credentials may appear only in HTTPS requests to credentialReachable official vendor hosts. They must never appear in requests to license.silent-spell.com or downloads.silent-spell.com. Firewall usage -------------- Little Snitch paid option: subscribe to https://downloads.silent-spell.com/mana.lsrules, or download https://downloads.silent-spell.com/mana.lsrules. Free option: use https://downloads.silent-spell.com/mana-hosts.txt as the host list for LuLu, pf, or manual firewall rules. Permit only the listed hosts for the Mana process and log blocked attempts. Packet-capture steps -------------------- 1. Quit Mana. 2. Start your firewall logging or run tcpdump/Wireshark with HTTPS host/SNI visibility where your system allows it. 3. Launch the real Mana binary you installed. 4. Trigger provider refreshes and license/trial actions. 5. Compare observed hosts with the complete allowlist above. The host is the primary check: credentials live in Authorization/Cookie headers, the URL, or an OAuth refresh POST body, so confirming WHERE a request goes matters more than which field carries the secret. 6. Confirm provider credentials (Authorization/Cookie headers, and the OAuth refresh request bodies) appear only on official vendor hosts, never on license.silent-spell.com or downloads.silent-spell.com. Evidence rule ------------- The evidence is your firewall or packet capture observing the real Mana binary. Application logs are convenience diagnostics, not proof.