What freegtm holds
This lists what is actually stored, read from the production schema on 7 September 2026. It is not a template: if a column is not named here, it is because there is no such column.
Who you are
Your identity is the provider you signed in with and that provider's id for you — Google's or GitHub's. Not your email. A person can change the address on a GitHub account, and two providers can return the same address for different people, so an address is a poor name for a person.
Your email is stored only if the provider says it is verified. An unverified address is stored as absent, because it is a claim the provider itself declines to stand behind.
We also hold the display name the provider returned, refreshed each time you sign in because the provider is the authority on it, and which workspaces you belong to with your role in each.
There is no password, because there is no password to have — sign-in is Google or GitHub. No payment details. No profile built from your IP address. Nothing from your assistant's conversations that an app did not explicitly record.
Your workspace
What you told apps about your business — what you sell, who you sell to, your sender name and voice, and the rest. What you told one app in particular. Corrections you made, and who made them. Which capabilities you said your assistant can reach. Leads you tracked and their timeline. Drafts and questions waiting on you. People you asked never to contact.
Every value carries its source — whether you told an app in conversation or typed it into a form. That is not bookkeeping for us. It is shown back to you, because knowing which is which is how you judge whether a value is still true.
Assistants you connect
Each assistant you connect gets one row: which workspace, which harness, when it was created, when it was last used, when it was revoked, and what it is allowed to do.
The token itself is never stored — only a digest. It exists once, in the response that created it, and nowhere afterwards. A revoked token keeps its row rather than being deleted, because "this was revoked on Tuesday" is a fact somebody investigating an access question needs, and a deleted row cannot say it.
What we do not do
- We hold no keys for your other systems. freegtm reaches nothing outward. Your assistant does the reaching, on your account, with the tools you connected to it.
- We run no model. An app is prose; your assistant reads it and does the work. There is no server-side model call — the binary in registry mode builds no model provider at all, so this is a property of what is deployed rather than a setting somebody could change.
- Nothing is sent on your behalf. A draft is staged and waits. Marking it sent records that you said so; we cannot see your mailbox.
- One workspace never sees another's values, rules or leads.
Usage
Tokens, turns and cost are counted per run. Here those counts are near-empty by construction: the model runs in your assistant, on your account, so there is nothing on this side to meter. The table exists because the same schema serves the commercial product.
What this page does not yet cover
Retention periods, deletion, your statutory rights and any processors we use are not described above, and their absence is not a claim that they do not apply. They are not written yet, and this page would rather be short and true than complete and guessed. It will grow.
Everything above is checkable: the apps are open, and the skills they think with are public under their authors' own names.