Privacy Policy
Last updated: 2026-10-29
What we collect
By default, Claudictive collects nothing. The app runs entirely on your machine. No telemetry, analytics, or crash reports are sent without explicit opt-in.
What stays on your machine
- Conversation transcripts (in
%APPDATA%/Claudictive/transcripts/) - Images you paste into the in-game chat (in
%APPDATA%/Claudictive/pasted-images/), so Claude Code can open them. They go only to your own Claude Code session, like the rest of your message, and are deleted after 7 days. - Game screenshots from the snapshot button in the in-game chat. Claudictive captures your game screen only when you press that button. The picture is added to your message like a pasted image, you can remove it before sending, and once you send it, it is stored and deleted exactly like a pasted image.
- Session metadata (game name, duration, message counts)
- Match summaries (from v0.9.0, in
%APPDATA%/Claudictive/match-summaries.json). When a game closes, Claudictive reads the Claude Code transcripts already on your machine for the time you played and stores what Claude finished: the first line of each of Claude's final replies, the names of the files it changed (not their contents or full paths), the project folder name, file and commit counts, and times. Only your last 30 games are kept. They are shown in the desktop hub and never sent anywhere. Delete my local data in Settings erases them with the rest of your local data. - Settings (hotkeys, preferences)
- Debug logs (rotating, capped at 1MB)
Changes Claudictive makes to your Claude Code setup
Claudictive asks before writing anything to your Claude Code home directory (~/.claude/). The first time you connect the overlay to an existing Claude Code session, a consent screen lists exactly what it wants to add. Nothing is written until you choose Allow.
If you allow it, Claudictive writes:
- Hook scripts, and the small status files they exchange with Claudictive, in
~/.claude/hooks/, so tool-approval prompts can be answered from inside a game - Hook registrations and a status line in
~/.claude/settings.json, so the overlay can show what your session is doing - Its own instructions file,
~/.claude/CLAUDICTIVE.md - One import line,
@CLAUDICTIVE.md, added to~/.claude/CLAUDE.md- nothing else in that file is touched - A handoff file,
~/.claude/overlay-session.md, describing your last in-game session, which is consumed and cleared when read - When the overlay takes over a session in a project, the same status line is also added to that project's own
.claude/settings.json - A small Claude Code mod, the live mirror, in
~/.claude/claudictive-mirror/, and that folder's name added toenv.CLAUDE_CODE_PLUGIN_DIRSin~/.claude/settings.json(your own entries there are kept). It lets a message you send in game run inside your open Claude Code session. While it runs, it keeps small per-session files in the same folder: a status file (session id, project folder, model, which Claude Code app, its version), the text of in-game messages on their way into the session, their delivery status, and questions Claude asks you in game with your answers. Message, status and question files are deleted once handled. From v0.9.0 it also keeps a usage file per session (usage.json) for the desktop hub's Live board: how full the context window is, your plan's usage limits and reset times, the session's cost, and the names of the skills it has. Names and numbers only, no conversation text. It gets these from Claude Code itself on your machine, without any extra request, and nothing is sent anywhere. It is on by default once you choose Allow
If you choose not to allow it, none of the above is written. Overlay chat still works either way - only handing a session back to your terminal, and answering terminal permission prompts from the overlay, depend on saying yes.
If you installed an earlier version of Claudictive, it may already have written some of this without asking. That old content is moved into ~/.claude/CLAUDICTIVE.md the next time you open the app, and you are asked once to confirm you want to keep it.
Claudictive also reads files from the project directory of the session you are working in, because that is what you are asking Claude about. None of this leaves your machine.
You can reverse most of it: open the desktop hub, go to Settings → Privacy & Data, and use Remove Claude Code integration. Do this before uninstalling: uninstalling Claudictive on its own leaves these files in place. This does not remove a status line added to an individual project's .claude/settings.json - delete that yourself if you want it gone. It also leaves the ~/.claude/claudictive-mirror/ folder, which does nothing once its entry in settings.json is removed; you can delete it yourself.
What goes to Anthropic (Claude API)
Your messages are sent to Anthropic via the Claude API using your own API key. Anthropic's privacy policy applies to that data. Claudictive does not see, intercept, or store your API key beyond passing it to the local Claude Code CLI process.
What goes to Riot Games (if applicable, future feature)
Game-state detection (e.g., reading in-game / queue / lobby state via Riot's API for League of Legends or Valorant) is a planned opt-in feature. If and when it ships, Claudictive will query the Riot API only for match state and only with your explicit permission. Data will not be stored, aggregated, or transmitted anywhere except your local machine.
Opt-in analytics (v0.2.0+)
Analytics are off by default. We ask you once during onboarding (a checkbox you can leave unchecked) and you can flip the toggle any time in Settings > Privacy & Data.
What we collect when you opt in:
- An anonymous install ID (random hex, never tied to your name, email, or API key)
- Event names from a fixed allowlist (e.g.,
message_sent,game_injected,onboarding_step_completed) - Counts and durations (e.g., "session lasted 24 minutes", "message was in the medium length bucket", "a match summary listed 3 tasks in 2 projects")
- App version and current game name
- Your Windows display scaling (e.g., 125%) and the game's screen resolution (e.g., 1920x1080), once per game session
- The user agent of the app's built-in browser, cut to 64 characters. This is the field we label "OS": it names your Windows version and the browser and Overwolf versions the app runs on
What our server adds to each event: your country, as reported by Cloudflare, and a daily rate-limit key. We do not store your IP address.
When you turn analytics off: the app sends one last event, analytics_opt_out, so we can count how many people opt out. It carries no install ID. It contains only the event name, the time, which part of the app sent it, the app version and the user agent, and our server adds your country and the rate-limit key as above. After that, nothing more is sent.
What we never collect (even with analytics on):
- Message content - what you type to Claude, what Claude responds
- API keys (Anthropic, OpenAI, etc.)
- File paths, project directory names, code content
- Your name, email, username, machine name
- Usernames from games or other apps
Where the data goes: our Cloudflare D1 database. Never sold, never shared with third parties. Used only to improve the product. You can request deletion of your install ID's data by emailing hello@claudictive.com.
Opt-in crash reports (v0.2.0+)
Also off by default. When the app crashes, we send a sanitized stack trace (file paths replaced with [path], UUIDs truncated, API keys redacted) so we can fix the underlying bug. The sanitization happens client-side before anything leaves your machine.
What a crash report contains:
- The error class, the sanitized error message and the sanitized stack trace
- Which part of the app crashed
- The app version and the user agent of the app's built-in browser (cut to 64 characters, as above)
- The game name, if the report includes one
- Your anonymous install ID, but only if analytics are also on. With crash reports on and analytics off, the report is sent without it
- Added by our server: the daily rate-limit key. Crash reports do not store your country or your IP address
Bug reports
A bug report is sent only when you press send in the hub's bug report form, whether or not analytics are on. You choose explicitly whether to attach the app's recent log or a session transcript. Nothing is included without your check, and both are scrubbed of file paths, keys and similar details before they leave your machine. What you type in the description is sent as you wrote it.
What we store when you send one:
- Your description, and the log or transcript if you ticked them
- Your email, only if you give one, so we can reply
- Whether a log and a transcript were attached
- Your anonymous install ID, only if analytics are on
- The user agent of the app's built-in browser and your country, as reported by Cloudflare
- The daily rate-limit key. We do not store your IP address
A copy of each report also stays on your machine, in %APPDATA%/Claudictive/.
Contact form and uninstall survey
The contact form and the uninstall survey on claudictive.com send something only when you press send. When you uninstall the app, it opens the uninstall survey in your browser; filling it in is optional, and closing the tab sends nothing.
What we store when you send one:
- What you write, and the reasons you pick in the uninstall survey (including a game name, if you type one)
- Your email, only if you give one, so we can reply
- The app version, when the app opened the survey
- Your browser's user agent and your country, as reported by Cloudflare
- The daily rate-limit key
What we do not store: your IP address. It is used only while your message is being received, to run Cloudflare Turnstile (the spam check on the form, which is processed by Cloudflare) and to compute the rate-limit key above.
Submissions go to our Cloudflare D1 database. Never sold, never shared with third parties, used only to answer you and improve the product. To have a submission deleted, email hello@claudictive.com.
The rate-limit key
Analytics events, crash reports, bug reports, contact messages and uninstall surveys are all stored with a rate-limit key, so we can stop one address from flooding our database. Our server makes it from your IP address and the current date (UTC): it computes an HMAC-SHA256 of the two, using a secret key that only our server has, and keeps the first 32 hex characters. Your IP address itself is not stored.
Because the date is part of the input, the key changes every day, so it cannot link what you send on different days. Without our secret it cannot be turned back into your IP address. Someone who had the secret could check whether a guessed IP address matches a key, which is why the secret never leaves our server and is not part of the app.
Data deletion
Almost all Claudictive data lives in %APPDATA%/Claudictive/ on your machine. The one exception is described under Scratch files below. Open the desktop hub and go to Settings → Privacy & Data, where there are two separate actions:
- Delete my local data - erases conversation transcripts, session history, coding stats, bug reports, queued telemetry, the diagnostic log and pasted images. Your preferences on that page are deliberately kept, so that turning analytics off is not undone by deleting your data.
- Remove Claude Code integration - reverses most of the changes described above in your
~/.claude/directory (a project's own status line and the inactive~/.claude/claudictive-mirror/folder are left - see that section for how to remove them).
Both are irreversible and ask for confirmation first. You can also uninstall the app and remove the folder manually.
Scratch files (v0.6.0+)
If you use the Scratch tab, which lets you chat without opening a project, anything Claude writes during that conversation is saved to ~/.claude/scratch/. Those are your files, not app data, so neither action above deletes them and neither does uninstalling. We deliberately do not remove work you asked Claude to produce. Delete that folder yourself whenever you want it gone.
Contact
Questions: hello@claudictive.com