Support Coach is a Chrome extension that coaches support agents on a reply before the customer sees it. This page is written for IT and security reviewers. It sets out what the extension can access, what leaves the browser, what we store, and how to deploy it across a managed fleet.
Last updated: September 13, 2026
| Chrome permissions requested | Storage only |
| Sites it can run on | Five help-desk domains. Nothing else. |
| Customer messages transmitted | No. They never leave the browser. |
| Agent draft reply transmitted | Yes, over HTTPS, to our API and OpenAI |
| Draft reply stored in a database | No. Transient processing only. |
| Remote code execution | No. All code ships inside the extension package. |
| Works with no sign-in or no network | Yes. The local rules layer needs neither. |
| SOC 2 or SSO | Not available today. See section 7. |
Chrome enforces an extension's permissions from its manifest. Ours requests a single permission, and access to five help-desk domains. This is the complete list, as published:
"permissions": ["storage"], "host_permissions": [ "*://*.zendesk.com/*", "*://*.intercom.com/*", "*://*.intercom.io/*", "*://*.salesiq.zoho.com/*", "*://*.zohosalesiq.com/*" ]
It does not request tabs, cookies, webRequest, scripting, downloads, clipboard access, or <all_urls>. It cannot read other tabs, cannot see browsing history, and cannot run on any site outside the five domains above.
The storage permission holds the agent's session token and their coaching preferences, in Chrome's extension-local storage.
All executable code ships inside the extension package and is reviewed by Google before publication. The extension does not fetch or evaluate remote code.
When an agent pauses typing, or clicks Check before sending, the extension sends four fields to our API over HTTPS. This is the entire payload:
| draft_text | The reply the agent has typed and not yet sent. |
| triggered_rules | Rule family names and numeric weights. No message text. |
| local_score | A number from 0 to 100 produced on the agent's machine. |
| draft_hash | A non-reversible hash used to avoid processing the same draft twice. |
What is never transmitted
The customer's messages, the conversation history, attachments or files shared in the chat, customer contact records, and ticket metadata all stay in the browser. The coaching model analyses the agent's own draft in isolation and has no visibility of the conversation it belongs to.
The instant feedback layer, which flags blame language and abrupt closings as the agent types, runs entirely on the agent's machine and makes no network request at all. It keeps working with no sign-in and no internet connection.
Draft reply text is not stored in our database. It is processed in memory to produce the coaching response. A short-lived cache, up to 60 seconds and keyed by a non-reversible hash, prevents the same draft being processed twice while an agent edits it. After that it is discarded.
What we do retain is account information (name, email address, organisation name) and aggregate coaching statistics: which categories of coaching rule were triggered, and counts of suggestions shown, accepted, or dismissed. These statistics contain no message content, no draft text, and no customer data.
We also record product analytics in PostHog so we can see how the service is used — that a check completed, that a suggestion was accepted, that a sign-in happened, that a check failed. These events identify an organisation and an agent by internal identifiers, and carry the organisation name, counts, durations, rule-family names and the extension version. They never carry draft text, customer messages, agent names or email addresses: those field names are refused by a deny list, values longer than 200 characters are dropped, and nested objects are discarded whole rather than inspected. Location is not derived — GeoIP is switched off on every event.
Full detail on retention, deletion, and the Chrome Web Store Limited Use requirements is in our Privacy Policy, section 9.
| Provider | Purpose | Receives |
|---|---|---|
| OpenAI | Analyses the draft and returns coaching feedback | The agent's draft reply text |
| Railway | Hosts our API | The draft reply in transit |
| Supabase | Database for accounts and aggregate statistics | Account details, aggregate counts |
| Vercel | Hosts the admin console and this site | Account details |
| Resend | Sends transactional and weekly summary email | Name, email address |
| Paddle | Merchant of record for billing | Billing details you enter at checkout |
| PostHog | Product analytics on how the service is used | Account identifiers, organisation name, usage events. No message or draft text |
OpenAI processes the draft through its API. As of the date above, OpenAI does not use API inputs or outputs to train its models.
Agents do not create their own accounts. An administrator at your organisation creates the organisation and invites agents to it. Removing an agent from the organisation revokes their access.
Sessions are token based. The token is held in the extension's own storage, is not readable by web pages, and expires. Signing out clears it from the device.
Administrators manage the team, coaching sensitivity, and billing at admin.supportcoach.io.
If your organisation manages Chrome centrally, you can deploy Support Coach to agents rather than having them install it individually. It is published on the Chrome Web Store, so it works with the standard Chrome Enterprise policies.
Extension ID
kfmbekgngkgbcejoinohlalmbmkegnbi
Add this to ExtensionInstallForcelist to deploy it, or to ExtensionInstallAllowlist if your policy blocks extensions by default and you would rather agents opt in.
Domains to allow
If you filter outbound traffic or run split DNS, these two hostnames need to resolve and be reachable over HTTPS from agent machines:
api.supportcoach.io coaching requests from the extension admin.supportcoach.io administrator console
We have seen corporate DNS filtering block the API hostname before. If agents report that coaching never loads while the rest of the help desk works normally, that is the first thing to check.
We would rather you learn these here than discover them during a review.
The compensating control is the scope of the data itself. No customer conversation content is stored anywhere in our systems, because none of it is ever sent. The most sensitive thing that reaches us is a reply an agent was about to send to a customer, and we do not keep it.
If your review needs something that is not covered here, write to support@supportcoach.io and we will answer directly.