Privacy Policy
The app sends no session telemetry by default. The public website uses privacy-first, aggregate Cloudflare Web Analytics.
Yep Anywhere is published by Graehl Arts. This policy covers the Yep Anywhere Android and iOS apps, desktop app, self-hosted server, and website. Ordinary use connects to your own server without a hosted product account. Your server state and provider sessions stay on the machines you control, except for the network services and separate review demo described below.
Network Requests
The application makes minimal network requests:
- Yep Anywhere update service — The app periodically checks
updates.yepanywhere.comfor version information, and opening Settings → About or using the manual update check triggers a fresh check. These requests include the running app version and an installation identifier so we can maintain relay compatibility, monitor rollout reliability, and support backwards compatibility. - Your AI provider — When you run sessions, requests go directly to your configured AI provider (Anthropic, OpenAI, etc.) using your own API keys.
- Optional remote-access and browser notification services — Enabling the public relay or browser push creates the connections needed for those features. They are not required for local use.
- Native mobile notification registration — The published Android app registers with Google Firebase Cloud Messaging and the Yep Anywhere push broker when it starts. Registration can happen before you enable notifications for a host. The broker uses Firebase installation identifiers and its own installation and subscription identifiers to route notifications. Native notification data is described below.
We do not send session contents, prompts, or files to the update service. Cloud AI providers receive the content needed to run their agents under their own terms.
Local Data Storage
Your self-hosted server stores application data on your machine:
- Session transcripts (managed by the Claude SDK in
~/.claude/projects/) - Server state including logs, uploads, and settings (npm/source:
~/.yep-anywhere/on macOS/Linux or%USERPROFILE%\.yep-anywhere\on Windows; desktop app:~/.yep-anywhere-desktop/on macOS or%USERPROFILE%\.yep-anywhere-desktop\on Windows) - Push notification VAPID keys (generated locally, no third-party service)
- Optional password hash if you enable authentication
The mobile apps also store saved host addresses, authentication and resume credentials, device pairing records, and notification bindings on your phone. Android protects saved secrets with the Android Keystore; iOS uses the Keychain. Removing a saved host removes its local profile. This does not delete transcripts or files from the server.
Review Demo Server
Graehl Arts operates a separate demo server for app-store evaluation, using fictional projects and a mock AI provider. If you use that supplied demo login, content and activity you enter are processed on our demo server and may remain there until we reset the demo. The supplied account is shared for evaluation, so other reviewers may see changes made with it. Use sample content only. You can contact graehlarts@gmail.com about deleting identifiable demo data.
Native Mobile Notifications
Android notification delivery uses Google Firebase Cloud Messaging and push.yepanywhere.com, operated by Graehl Arts. The broker stores a delivery identifier, generated installation and subscription identifiers, hashed authorization secrets, and registration and usage timestamps. Google processes Firebase installation identifiers and technical service data, such as IP addresses, to operate its messaging service. See Firebase's privacy and security information for Google's processing and retention practices.
Notifications for each saved host are optional. When enabled, your server sends a fixed event type, such as approval required or session completed, and opaque session/event identifiers through the broker and Google. These identifiers support notification routing and deduplication. The current native notification service does not accept prompt text, project names, transcript contents, or arbitrary notification titles and bodies. The broker and Google can read this notification metadata; it is separate from the end-to-end encrypted application connection.
The broker retains installation registrations and subscription records to support future delivery. Disabling notifications or removing a host attempts to revoke its subscription; an offline phone may need to reconnect to complete server-side revocation. This does not automatically erase the installation registration or Google's records. Notification payloads are not stored as a transcript by the broker. The native apps do not include Firebase Analytics or Crashlytics.
Your Choices and Deletion Requests
Yep Anywhere server administrators can create username-and-password accounts on their own server. To request deletion of one of these accounts and its associated data, contact that server's administrator and identify the server and username. Administrators can delete the account in Settings → Users, which removes its login credentials, grants, usage history, and saved drafts and revokes its logins. Session transcripts, uploaded files, and server audit records are separate server data; ask the administrator to remove associated content too. The server administrator controls any remaining retention and backups. Graehl Arts cannot access or erase data on independently operated servers.
You control transcripts, files, and settings on your own server. You can remove saved hosts from the mobile app, disable host notifications, and revoke paired devices in your server's settings. Clearing the app's local storage or uninstalling it removes local app data; it does not automatically delete data on your server or in notification services.
For privacy questions or a request to delete an identifiable push-broker registration, contact graehlarts@gmail.com. We may need the relevant installation or subscription identifier to locate the registration and verify the request. Do not send passwords, authentication secrets, prompts, or private project files. Google controls deletion and retention of data within Firebase under its own terms.
For the Graehl Arts review demo, email graehlarts@gmail.com with the sample session or file identifiers you want removed. We can remove identifiable demo content without deleting the shared evaluation login. The shared login is not a personal account, and we retain its connection configuration so other reviewers can complete their evaluation. Demo content otherwise remains until the demo is reset.
End-to-end encrypted public relay
The optional public relay enables remote access without requiring a VPN or port forwarding. If you enable it:
- Application messages are end-to-end encrypted; the relay cannot read their contents or your password.
- The relay can observe connection metadata such as the username, timing, and traffic sizes.
- The feature is opt-in. You can continue locally, use another direct-access method, or self-host the relay.
Public Session Shares
Public sharing is opt-in because it has a different privacy boundary. No session is shared until you deliberately create a read-only link. Anyone with the secret link can read the shared content until access is revoked or the live share ends, and the current public-share relay path is not private from a relay operator. Review session content before enabling a share.
This Website
The public marketing, news, and documentation pages use Cloudflare Web Analytics to understand aggregate page traffic and page-load performance. The beacon receives page and referrer information, browser and device categories, approximate geography, and performance measurements. Cloudflare states that Web Analytics does not collect or use visitors' personal data and does not use cookies or local storage for usage metrics.
The hosted /remote/ application does not include the marketing analytics beacon. Prompts, files, approvals, session contents, and product actions are not sent as marketing analytics events.
The website also loads Inter from Google Fonts, so a page view makes font requests to Google.
Choosing a desktop installer contacts updates.yepanywhere.com, which redirects your browser to the current Stable installer hosted by GitHub. The download link does not add download-counting analytics.
Open Source
Yep Anywhere is 100% open source under the MIT license. You can inspect the code to verify these claims.
We publish to npm using trusted publishing with provenance attestation directly from GitHub Actions. Every published package links back to the exact source commit and CI workflow run, so you can verify that the code on npm matches the code on GitHub.
Last updated: October 5, 2026