Summary
- JayJay has no accounts and does not collect your code, file names, repository names, commit messages, or commands.
- It sends anonymous build and OS statistics once a day. You can turn this off in Settings › Data & Privacy.
- Everything else it sends goes to services you chose to use: your Git remotes, your code forge, avatar services, and AI tools you run.
Anonymous usage statistics
At most once per day, JayJay sends a small request to jayjay.hewigovens.workers.dev containing the app version, the platform (macOS or Windows/Linux), the OS name and version, and the CPU architecture. It also sends two random identifiers, derived on your computer from a secret that never leaves it, that change every day and every month. They let us count daily and monthly active installs without a stable ID that could follow you over time.
The statistics service does not read or store your IP address and receives no repository, file, or command data. Statistics are on by default; turn them off in Settings › Data & Privacy › Share anonymous build and OS stats and nothing more is sent. Development builds never send them.
Services you use through JayJay
- Git remotes. Fetch, push, and clone talk to the remotes you configured, exactly as jj and Git would on the command line.
- Code forges. If you sign in to GitHub, GitLab, or Codeberg to work with pull requests, JayJay calls that forge's API with your token. Tokens are stored in your operating system's credential store (macOS Keychain, Windows Credential Manager, or the Linux Secret Service) and are sent only to the forge they belong to.
- Avatars. To show author pictures, JayJay requests avatars from GitHub, GitLab, or Gravatar. Gravatar receives a SHA-256 hash of the author's email address, not the address itself. Avatars are cached on your computer.
- AI writing tools. When you ask JayJay to draft a commit message or bookmark name, it passes a short excerpt of the diff to the AI tool you picked: the Codex or Claude command-line tool installed on your computer, which sends it to its own provider under that provider's terms, or Apple Intelligence on macOS, which runs on your device. JayJay has no AI service of its own and sends nothing unless you ask.
- Updates (macOS). The macOS app checks the update feed on GitHub. It does not send system profile information.
Data on your computer
Review marks and notes, settings, the avatar cache, and the statistics secret stay in JayJay's local application folders. You can clear review data from Settings › Data & Privacy.
Both shells also write a local jayjay.log, rotated after 2 MiB with one previous file retained. Debug mode in Settings › Data & Privacy adds snapshot and graph timings; GPUI also records main-thread stalls. Beta builds enable Debug mode by default unless you have saved a preference. Use Help › Reveal Logs to inspect the file.
With Debug mode enabled, Help › Send Feedback prepares an email draft with the log attached when Apple Mail is the default mail app on macOS. Other mail apps and GPUI reveal the file for you to attach. Logs can include local paths and error details; review the draft and log before sending them.
JayJay does not include crash reporting, advertising, or third-party analytics.
Contact
Questions or requests about privacy: open an issue at github.com/hewigovens/jayjay/issues. If this policy changes, the date above changes with it.