Gmail CRM that fills itself in
Connect Gmail with one read-only permission. The Vrge desktop app reads new mail on your machine and proposes the clients, projects, invoices and payments it finds. You approve each one in the Inbox. Nothing is saved until you do, and an accept can be undone for 24 hours.
Northwind Studio
- Dana Okafor
- inferred · signature block
- dana@northwind.studio
- Site refresh
- inferred · the brief
- The inquiry email, filed with the client
One inbound brief becomes one bundled proposal: client, project and note, accepted or rejected together. Nothing is saved until you accept it.
What Vrge reads from Gmail
- Inbound messages from the last 7 days, then whatever is newThe first scan covers the past week by default. The History to scan setting on the connection widens that window, and a deep scan re-reads it. After that each run reads what arrived since the last one, up to 200 messages at a time. Spam, trash and sent mail are left out of this pass.
- Headers, the plain-text body and Gmail’s own snippetFrom, To, Subject and Date; the plain-text body, or the text of an HTML-only message; the short preview Gmail already computes; the thread id and the labels. That is the whole record.
- Whether a message has an attachment — never the attachmentVrge records a yes or no and uses it as one weak signal among several. It does not download attachments, so an invoice sent as a PDF is not read.
- Your sent mail, for Open Loops onlyA separate, smaller pass reads what you sent in the last 30 days, up to 50 messages a run, so Vrge can tell which threads are waiting on you and which are waiting on them. Sent mail never enters the client and invoice extraction path, so your own signature cannot become a proposed client. One narrow exception is read by the AI: a sent message to someone already in your CRM or contacts that is phrased as a promise — “I’ll send the quote by Friday” — is checked for a commitment worth tracking. Today that check produces nothing in the inbox.
- Your addressOne profile call returns the email address of the account. It labels the connection in Settings and lets Vrge recognise its own messages.
Two Gmail accounts? Connect both. Each is watched on its own, and there is no extra charge for a second account.
What Gmail turns into
Email extraction uses the AI you chose in Settings → AI & Intelligence: your own Anthropic, OpenAI or Google key, Ollama on your machine, or the optional Managed AI subscription. Every proposal shows the message it came from and the signals that made the case.
| Kind | Proposal | Evidence |
|---|---|---|
| NEW CLIENT | A new client, bundled with the project they described and a note holding the inquiry | An inbound email the AI reads as a new inquiry, plus at least one hard signal: a business domain, a signature block, a reply on a thread with you, engagement language, a budget or amount, or an attachment. With none of those the bundle is held back from the inbox. |
| TASK | Tasks from a project update, with a meeting note | An email about work in progress that names a project. Action items become tasks under the matched project; the email itself is kept as a note. |
| INVOICE | An invoice draft | A reply from a client already in Vrge about an invoice you sent. |
| PAYMENT | A payment matched to an open invoice, or recorded on its own | A payment notification — a processor payout or a direct confirmation. The amount is matched against your open invoices; if none fits, the payment is proposed by itself, with a new client when the payer is unknown. |
| EXPENSE | A business expense | A vendor bill or receipt with a usable amount. If no amount can be read, nothing is proposed. |
The Open Loops you see come from the same mail with no AI: a reply you owe and a reply you are waiting on are computed from who spoke last in each thread, and they close themselves when the reply arrives. Only people already in your CRM or contacts can open a loop by writing in, so cold senders and newsletters never appear.
What Vrge never does with Gmail
- Send, reply to, or forward an email.The permission Vrge asks for cannot send.
- Mark anything read, apply a label, archive, or delete.Every call Vrge makes to Gmail is a read. Your unread count is what it was before you connected.
- Create a draft.Drafts are outside the scope, along with sending and labels.
- Download an attachment.It notes that one exists and stops there.
- Propose a client or project from your own sent mail.Outbound mail is read for Open Loops and never enters the client and invoice extraction path.
- Save anything to your CRM on its own.Every record starts as a proposal you approve, and an accept can be undone for 24 hours.
The mailbox guarantees are Google’s to enforce, not ours to promise: gmail.readonly does not permit sending, labelling, drafting or deleting, so Vrge could not do those things if it tried. The scope is restricted, which is why Vrge’s app went through Google’s verification and an independent security assessment before it could ask for it.
Your mail goes from Google to your laptop. Nowhere else, unless you choose.
Vrge is a desktop app. When you connect Gmail it opens Google’s own sign-in page in your browser, and Google hands the token straight back to the app on your machine. The token is stored there. There is no Vrge server in that exchange — not for the sign-in, not for renewing it, and not for the messages. Every message is fetched by the app, from Google, over TLS.
What can leave the machine is the extraction step, and you decide that. With Ollama, nothing leaves. With your own Anthropic, OpenAI or Google key, the headers and body of each message Vrge extracts from go to your own provider account, under the redaction mode you set. With Managed AI the message is always redacted or summarised locally before it reaches Vrge’s proxy, which stores no content. Settings → AI & Intelligence shows a sample of what the mode in force would send.
Every AI call is logged — when, which provider, how many tokens, whether it was redacted — and the log never stores the content itself. One button, Pause AI, stops scanning and cancels any call in flight. No confirmation dialog.
How to connect Gmail
Settings → Connected Sources → Gmail → Connect Gmail. Your browser opens Google’s sign-in, you approve the read-only permission, and the first scan starts within a minute. Workspace admins who want the OAuth perimeter inside their own Google Cloud project can supply their own client from the Advanced section.
Try it with your own Gmail
Download it and run it for 14 days free — no account, no card. Connect Gmail from Settings → Connected Sources and watch the inbox.
Solo licence $79, once. All 1.x updates forever. 14-day free trial, no card. Mac and Windows.