Privacy Policy
Last updated: 2026-05-12
The short version
- We don't see your code. The daemon only fetches news and music.
- We don't ask for your email or name. A random device ID is generated locally at install.
- Crypto payments go through your wallet (Phantom, Xaman, etc.). We never touch your private keys.
- Anonymous click-tracking trains our news ranker. Disable any time:
agentstream telemetry off.
- Uninstall removes everything:
agentstream uninstall. No traces.
What we collect (free tier)
Device ID
A random UUIDv4 is generated locally by the CLI at agentstream init time. It's stored in ~/.agentstream/config.json and sent in the X-Agentstream-Device HTTP header on every API call. We use it to:
- Enforce free-tier daily limits (50 headlines/day, 1 hour music/day)
- Attribute api_tokens after a paid upgrade
- Distinguish unique installs from total requests
Device IDs are not linked to IP, email, name, or any other personal identifier.
Headline click counts (telemetry)
When you run agentstream open (or click a headline in a terminal that supports OSC 8 hyperlinks), we record:
- Which headline ID was opened
- Which device ID opened it
- The timestamp
This signal trains the LLM ranker that scores news headlines. It's anonymous: no IP, no user agent, no content from the page.
To disable: agentstream telemetry off. The CLI gates the click POST locally — your daemon never sends the request.
Cloud Run access logs
The API runs on Google Cloud Run, which logs standard request metadata (timestamp, path, status, IP, user agent). These logs are retained per Google's default policy (30 days for the application log type) and used for debugging and rate-limit enforcement. They are not shared, sold, or correlated with device IDs.
What we collect (paid tier)
Stripe (card / Apple Pay / Google Pay / Link)
- Stripe collects your email and payment method directly. We receive a
stripe_customer_id and stripe_subscription_id.
- We store:
accounts.email (lowercased), accounts.stripe_customer_id, subscription period dates.
- Card numbers and CVV are NEVER seen or stored by us. PCI scope is fully offloaded to Stripe.
Solana (USDC)
- Your wallet (Phantom, Solflare, Backpack, etc.) signs and submits the SPL transfer. We never see your private key.
- We record: order ID, the Solana
tx_signature, amount, recipient (our receiving wallet), and the on-chain reference pubkey that links the tx to the order.
XRPL (RLUSD / XRP via Xaman)
- Xaman is a separate wallet app on your phone. It signs the payment and broadcasts to XRPL. We never see your seed.
- We record: order ID, the XRPL
tx_signature, amount, recipient.
What we don't collect
- The contents of your code, files, or directory structure.
- The contents of your chat / prompt history with Claude Code / Codex / Gemini.
- Your IP address linked to your device ID.
- Cookies. We don't set any cookies on the landing page or the API.
- Third-party tracking pixels. No Google Analytics, no Mixpanel, no Segment, no Datadog RUM.
Where data lives
- On your machine:
~/.agentstream/config.json, ~/.agentstream/ring.json (last 20 headlines + recent tracks), ~/.agentstream/news.json (cached headlines), ~/.agentstream/now-playing.json (current music). Logs at ~/.agentstream/daemon.{log,err}.
- Our servers: Google Cloud Run (us-central1) for the API. Supabase PostgreSQL (region: see Supabase project) for the database. Supabase Storage for music files.
Retention
- Device records: kept while you're using AgentStream. Pruned 12 months after last activity.
- Click records: aggregated weekly into ranker training data; individual records pruned at 90 days.
- Billing events: kept for 7 years per US tax + accounting requirements.
- Server logs: 30 days (Cloud Logging default).
Your rights
If you're in the EU, UK, or California, you can request:
- A copy of all data linked to your device ID or email (we'll export JSON within 30 days).
- Deletion of all data linked to your device ID or email. This terminates any active subscription. Note: billing records may be retained where legally required.
Email support@chainlore.dev with subject "data request" and your device ID or account email.
Uninstall
Run agentstream uninstall. This:
- Restores your editor's previous statusline config from the backup
- Removes the daemon service (launchd plist / systemd unit)
- Deletes
~/.agentstream/
- Removes the SKILL.md from
~/.claude/skills/agentstream/
It does NOT delete your account on our servers — request that separately via email if desired.
Contact
Privacy questions: support@chainlore.dev