Privacy
What we collect, and what we never do.
Last updated
This explains what Agentfly collects, what it does not, and why. It covers the Agentfly editor and this website.
The short version
- Agentfly's advertising, earnings, and analytics services never receive file contents, file paths, or project names.
- AI features may send source text and prompts to the provider you select. Agentfly explains and limits that separate path below.
- Ads are targeted using a fixed list of 45 generic tags describing the language or framework you have open.
- You are identified by an anonymous account created automatically, with no email, name, or password, unless you choose to add one.
- We do not sell personal data, and there are no third-party advertising trackers in the editor or on this site.
What the editor sends
To serve an ad
A request contains three things: the tags for what you have open, whether your theme is light or dark, and how many cards to return.
Tags come from a closed vocabulary compiled into the editor — values like lang:rust, fw:react, tool:docker, platform:backend. There are 45 of them. The server cannot add to the list, and any tag the editor does not recognise is never sent.
There is no field in this request for a filename, a path, a repository, a symbol, or a line of code.
To record that you saw an ad
A receipt contains an identifier for the card, how long it was on screen, whether you clicked or dismissed it, and your theme. This is what your earnings are calculated from.
Invites
When you open Invite & earn, the editor asks the service for your invite code, and the service makes one for your account the first time. The code is random and says nothing about you.
When Agentfly first opens, and when you open Invite & earn on a new account, the editor looks at your clipboard once, on your computer, for an Agentfly invite: exactly the line an invite page copies (Agentfly invite: and a code) or an Agentfly invite link. If the clipboard holds anything else, nothing is sent and nothing is kept. If it holds an invite, only the code is sent, to connect your account to whoever invited you.
With a claim, the editor also sends the identifiers of other Agentfly accounts this computer has used, so that resetting the editor cannot be used to invite yourself. It keeps that list on your computer.
When you send feedback
If you use the feedback button, we receive what you typed, the app version, and your operating system name. Nothing else about your machine or your work is attached.
AI features
You choose included AI when available, a provider using your own API key, or a local model. Chat and agent tools can send your prompt, relevant source text, and tool results to the chosen provider so it can answer or edit your project. Automatic inline completion sends bounded text around the cursor (up to 6,000 characters before it and 2,000 after it), the language, and a small output allowance; it does not send the file path. You can turn inline completion off in Settings.
With your own key, AI traffic goes directly from the desktop app to the selected provider. With included AI, prompts, source context and tool results pass through Agentfly's dedicated AI relay to the provider identified on the selected model (Tagflow AI, Heabsy, OpenAI, Gemini, Groq, OpenRouter, or another provider named on that model), under that provider's terms and privacy policy. This route uses a server-side provider key and requires a verified account. The relay stores daily request and token counts, estimated spending, reservations for active requests, and allowance settings by account so it can enforce shared limits. Administrators can view those counts and change allowances. It does not store prompts or replies in the server database, and AI content is not used by the advertising pipeline.
For included AI reporting, the relay also records the account identifier, request identifier, model and provider revision, request times, token counts, estimated cost, workload type, response speed, generated tool-call counts, outcome and a fixed error category. It does not record tool arguments, file paths or raw provider errors. Administrators use this metadata to prepare aggregate reports on demand, usage, reliability and performance for model providers. Those reports exclude account identifiers and conversation content.
Audience reports include the approximate country of an AI request's network connection, supplied by Cloudflare. This is not verified residence and can be affected by VPNs or proxies. This reporting system does not store IP addresses or precise location. The desktop also reports its operating system and a fixed assistant category (such as Reviewer or Tester), with custom agents grouped as Custom agent. Custom agent names, instructions and conversation text are not used to classify audience or purpose.
In AI usage → About your AI use, you can optionally provide your role, coding experience and main purpose for using included AI, and expressly choose to include these in aggregate provider reports. These fields are not inferred from your work. Your current choices classify your account in reports, including historical periods. You can update them or remove your profile in the same form; future generated reports then reflect the change. Copies already downloaded cannot be recalled. Missing information is reported as unknown.
You can voluntarily rate an included AI response and submit a category and comment. Feedback is linked to that response and your account so a rating can be updated or removed. Ratings contribute to aggregate statistics. Comments are shared in provider reports only when you explicitly check the sharing option; it is off by default. No conversation or project files are attached to model feedback. Avoid including private information in a comment you choose to share.
Agentfly keeps task sandboxes, rollback checkpoints, schedules, and operational traces locally. Traces describe actions and outcomes rather than storing a provider's private reasoning, and common credential shapes are redacted. Agentfly also skips inline completion for common credential files, but you should still review what you ask any AI provider to read. Clearing local AI usage history does not clear your server-enforced Tagflow allowance.
Identity
On first launch the editor creates an anonymous account through Firebase Authentication. It has no email address, no name, and no password. Its only purpose is to have somewhere to credit your earnings.
If you later choose to withdraw money, you can attach an email address to that same account — an address the provider has confirmed, which is a condition of being paid. Your existing balance carries over because it is the same account, not a new one.
What we store
- Your anonymous account identifier, and when it was created.
- Your ledger: one row per credit, reversal, adjustment, or withdrawal, with the amount and a short description.
- Records of ads served to you, kept briefly, so a receipt can be checked against a real serve.
- Feedback you send, if you send any.
- Included AI usage counts, account allowances and model-level operational metadata, if you use that service; no AI prompt or reply text is stored in its accounting or reporting tables.
- If you use invites: your invite code, which code you joined with and when, and who joined with yours - the record your invite earnings are worked out from. Your invite page shows your first name only if you allow it, which you can turn off in Invite & earn. People you invite see that name, if shown; you see how many people joined and used Agentfly, never who they are.
- If, and only if, you ask to be paid: the payout details you enter — the full name on the receiving account, the country and currency, and either the email address on your Wise account or the bank details you give us. We store them so a person can make the transfer, and a copy is attached to each request so that editing your details later cannot redirect a payment already in progress. You can change or clear them at any time from the Payouts tab.
Cookies and analytics
This website runs no third-party analytics or advertising scripts. Fonts are served from this site's own domain rather than a font CDN.
If you allow website analytics, we send measurements to our own service: page paths without query strings, traffic source or referring hostname, campaign labels, broad device category, page speed, visible engagement time, scroll milestones, browser error counts, and actions such as copying an install command, signing in, or creating a campaign. We do not collect form contents, passwords, payment details, account identifiers, error messages, or session recordings through analytics. Admin pages are excluded.
Your choice is saved in local storage. An anonymous session identifier and campaign attribution are saved in session storage, with a new session after 30 minutes of inactivity. Analytics sets no cookies. You can change your choice using Analytics preferences at the bottom of the site. Declining stops future collection and clears the session identifier; previously collected events are not linked to your account. We also respect Do Not Track and Global Privacy Control browser signals.
Website measurements are stored in our Supabase database and shown as aggregate reports to authorised administrators. Our hosting infrastructure necessarily receives network requests; the analytics event records do not contain IP addresses or full user-agent strings.
An invite page remembers its code in this browser's local storage for 30 days, so that signing in to the dashboard or signing up as an advertiser credits whoever invited you. It is removed once it has been used. It is not analytics and is not sent anywhere until you sign in or sign up.
The signed-in areas — the dashboard, advertiser portal, and admin panel — use a session cookie strictly to keep you signed in.
Sharing
We share personal data with nobody for advertising purposes.
Advertisers receive aggregate reporting: how many times their campaign was served, viewed, and clicked. They never receive your identifier, your tags, or anything that identifies you individually.
We use Google Cloud and Firebase to run the service, Dodo Payments to take payment from advertisers, and Wise to send withdrawals. Each receives only what it needs to do its part — Wise receives your payout details and the amount, and nothing about how you earned it.
Your choices
- Turn ads off. Settings has a cadence control with an off position. The editor is otherwise identical, with no reduced features and no prompts to turn it back on.
- Ask for your data or its deletion. Write to adcode.support@gmail.com. Deleting your account removes your identifier and your ledger. Records we must keep for accounting are retained where the law requires.
Retention
Ledger rows are kept as long as the account exists, because they are the record of what you were paid. Serve records expire automatically within hours. General support feedback is kept until it is resolved. Included AI reporting metadata is retained for usage and reliability reporting; it has no automatic expiry at present. Model feedback remains until its rating is removed or you request its deletion. You can request deletion of included AI reporting metadata through the contact below.
Children
Agentfly is not directed at children under 13, and we do not knowingly create accounts for them. Earning or withdrawing money requires being 18 or older; see the terms.
Changes
If this policy changes in a way that affects what is collected, the date at the top of this page changes and the change is announced in the release notes rather than made quietly.
Contact
For anything about your data - a copy of it, a correction, or its deletion - write to adcode.support@gmail.com.