When anything is sent
Only when you press the key, or run v8-prompt improve, /v8:prompt, status or login. There is no background service. Everything goes over HTTPS to v8labs.app and nowhere else.
What is sent
Your text, and a context pack collected on your computer from git and your manifests in a fraction of a second, capped at 4,000 bytes in all:
| Field | What it holds |
|---|---|
| Repository | The folder's name, the branch, whether there are uncommitted changes (yes or no). |
| Stack | Languages and frameworks read from manifests such as package.json, pyproject.toml, Cargo.toml, go.mod. |
| Commands | The test, build, lint, typecheck and run commands from those manifests, and a command that runs only the matched test file. |
| Instruction files | Which of CLAUDE.md, AGENTS.md, .cursor/rules, .github/copilot-instructions.md exist (names only), and the rule files that apply to the matched files. |
| File paths | Up to 8 paths that match your request by name or content, their test files, up to 2 files to follow as a pattern, up to 2 documentation files, and a file that usually changes together with the top match. |
| Names | Up to 8 function, method and class names from each of up to 4 of those files and their first test file. Names only, never code. |
| CI commands | Up to 4 test, lint, typecheck or build commands your CI runs, with URLs, host names, variables and secrets removed. |
| Recent commits | The subject lines of the last 5 commits. |
| Remembered answers | Answers you confirmed for this repository earlier. |
Every request also carries this terminal's random key (so the service can apply your plan), your computer's time zone (we keep only the country it implies) and whether it runs Windows, macOS or Linux (so run and verify steps fit your machine; not stored). For a follow-up in Claude Code, up to 4,000 characters of the agent's last reply go too, when Claude Code shows it in the editor. Without git or a manifest, only the folder name is sent.
What is never sent
No file contents leave your computer: not your code and not your .env. File contents are searched on your computer to rank the paths, and only the paths and names are sent. Files ignored by git are never searched or included; binary files and files over 512 KB are not searched.
The only text quoted from files in your repository: up to four command lines that look like test, build or lint commands, taken from CLAUDE.md or AGENTS.md when your manifests define no commands, and the redacted CI commands above. Text that looks like a password or API key is removed before anything reaches an AI provider.
Commit subjects, file paths and function names can contain personal data, such as a name. Check them with v8-prompt context show before you use v8 on a sensitive repository.
See it, turn it off
v8-prompt context show # exactly what would be sent from this folder
v8-prompt context show fix the login form # ...including the files that match that request
v8-prompt context off # send the prompt alone from now on
v8-prompt context on # send the repository facts again
v8-prompt context symbols off # keep paths and commands, drop function and class names
v8-prompt context preview # show the preview before the next send again
Setting V8_PROMPT_NO_CONTEXT=1 in your environment does the same as context off. Both also stop Claude Code's last reply from being sent. For one send only, press n in the preview, or use improve --no-context.
On our servers
- Prompt text, repository context and the agent's reply are processed in memory and never stored on our servers. Our AI provider does not use them for model training.
- For each terminal we keep a keyed hash of its random key (never the key itself), a keyed hash of the network address it first connected from, when it was first and last used, its usage counts, its country, and the account it is linked to, if any.
- Counts of rewrites and of rewrites changed back, by day, compiler version, language, plan and kind of task. They contain no text, file names or identifiers.
The Privacy Policy lists every category, its purpose and how long it is kept. Trust & security covers how the service is protected.
On your computer
v8 keeps its files in ~/.v8-prompt, readable only by you where the system allows it:
| Path | What it is |
|---|---|
device.json | This terminal's random key. A Pro link hangs on it, so keep it unless you want a new terminal. |
config.json | Your choices: context on or off, questions, telemetry, motion, the editor you had before setup. |
rewrites/ | Your recent originals and their rewrites (at most 20, usable for one hour) for undo. Replaced by the next rewrite. |
projects/ | Answers you confirmed, one file per repository (at most 8 each). v8-prompt forget clears them. |
pending/ | A question round started by a program (the plugin), until it is answered, 90 minutes at most. |
cache/ | Names of the files changed in each repository's last 300 commits, to find files that change together. Never sent. |
v8-prompt.mjs, edit.cmd or edit.sh | The copy of the CLI and the launcher that setup made. |
To remove everything, run v8-prompt uninstall, uninstall the package and delete ~/.v8-prompt (see Uninstall).
The one outcome signal
Only while the service asks for outcome counts does the CLI report one thing: that you pressed the key again to get your original back, with the compiler version, your request's two-letter language code and the kind of task (build, change, debug, review, question, plan or other). It never sends text or file names. v8-prompt telemetry off stops it.