Privacy
IntentiAI reads your code on your machine. This page lists every field that can leave it, and when. The code that builds each upload is open source, so you can check this page against it.
The short version
- Your source code is never uploaded by either command.
- The cost audit uploads its findings by default.
--localuploads nothing. - Ship Check uploads nothing unless you add
--shareto that run. - Results nobody claims are deleted automatically. Claimed ones stay until you delete them.
- No analytics, no advertising trackers, no selling or sharing of data.
The cost audit
npx intentiai scans on your machine, then uploads a report so it can print a link to it. The report contains, and only contains:
- the folder name of the repository (not its path, which would include your username), the languages found with a file count and which rules ran for each, and the current commit hash;
- for each model call: file path, line number, provider, method name, model name, and whether it runs in a loop, a request handler or a scheduled job;
- for each finding: rule, severity, file path, line number, a summary, why it costs money, the estimate and its assumptions, the fix, and the research citation;
- the scanner version and when the scan ran.
No line of your code is included. A finding about a committed API key shows the key masked. Run with --local and nothing is uploaded; the summary prints in your terminal and that is all. The payload is built in one function, toUploadPayload in packages/report.
Ship Check
npx intentiai check reviews uncommitted work, so it uploads nothing by default. Its report is an HTML file in .intentiai/ in your repository, which is ignored by git automatically.
With --share, it prints exactly what it is about to send, then sends:
- the folder name, the ref it compared against, and the counts of files and lines changed;
- the list of changed file paths with their line counts;
- each finding with its file path, line, explanation and fix, and up to four quoted lines of evidence per finding, each cut at 200 characters.
It never sends whole files, the diff, or your git history. Because evidence lines are quoted from your code, only share checks of code you are allowed to share. The payload is built in one function, toSharePayload in packages/diff-check.
The agent pass
--agent runs a coding agent you have already installed (Claude Code, Codex or Gemini CLI) on your own machine and your own account. That agent reads the change and sends it to its provider under the terms you agreed to with that provider. Nothing about that exchange passes through IntentiAI.
If you also add --share, the shared result includes what the agent wrote: its plain-English summary, its per-file summaries, its verdict on each claim, the findings it ruled out with its reasons, any findings it reported itself that passed the quoted-line check (with the same limits as every other finding: at most four quoted lines of up to 200 characters each; proposals that failed the check are counted, never uploaded), and what the run cost.
Your account
You do not need an account to run either command. You need one only to keep a report. Signing in takes an email address and nothing else: we send a one-time link, and the address is used for signing in and for nothing else. Accounts and reports are stored in a Postgres database hosted by Supabase.
How long it is kept
| If nobody claims it | Once you claim it | |
|---|---|---|
| Cost audit report | Deleted after 7 days | Kept until you delete it |
| Shared Ship Check | Deleted after 2 days | Kept until you delete it |
A claimed report is visible only to your account. Unclaimed ones can be opened only with the private link the command printed.
Deleting your data
Open any report or check from your reports and choose Delete. It is removed immediately and permanently.
To delete your account and everything in it, use Delete account on your Account page. Your account, every cost audit and every Ship Check are removed immediately and permanently, and any computer you connected with npx intentiai login stops uploading to it.
If that does not work for you, email happynishan30@gmail.com from the address you sign in with.
This website
The site sets only the cookies it needs to keep you signed in. It runs no analytics and no advertising scripts. The host keeps standard request logs, such as IP addresses, for security and debugging.
Last updated September 2026.