Kabir is a Chrome side-panel tutor that pairs with the Kabir desktop app running on your own computer. The extension has no server of its own — its only configured API base is http://localhost:4800, your own machine. Everything it does is either local to your browser, sent to that local desktop app, or one direct connection to Deepgram for live speech-to-text.
Page title, up to 20 headings, up to 40 form-field labels, your current text selection, and up to 4,000 characters of visible body text. Never page HTML, never script contents, and never a form field's typed value — only its label, so a password or API key field is excluded by how the code reads the page, not by a filter that has to remember which fields to skip. Sent only to your own local desktop app.
Title, URL, favicon, and active/discarded state for every tab you have open, while a lesson is actively running — not limited to the lesson's own site. Sent only to your own local desktop app, debounced, only while a lesson session is active.
Taken periodically while guiding a step, so the tutor can point at the right element on screen. Sent only to your own local desktop app. Only taken on the extension's declared lesson sites, or a page you've explicitly granted access to.
Only while you turn the mic on. Streamed live to Deepgram's speech-to-text service (wss://api.deepgram.com/v1/listen) directly from your browser — not through the desktop app, and not stored by the extension. Deepgram is a sub-processor; see Deepgram's own privacy policy.
Entered once by you, stored in Chrome's local extension storage on this device, sent to your local desktop app to authenticate the connection between them.
Which step is active, a sequence number, and when a lesson tab was last active. Stored in Chrome's session storage, cleared automatically when the browser restarts. Never leaves your device.
A fixed, schema-checked set of metadata events — for example a lesson starting or ending, a step being checked, timing numbers, and error codes. The schema rejects any field not on this list, so no speech text, screenshot, or page content can ever be included in an event.
Local browser storage persists until you uninstall the extension or clear its data. Session storage clears automatically when you restart the browser. Kabir does not retain microphone audio; retention on Deepgram's side is governed by Deepgram's own policy.
You can turn the microphone off at any time from the side panel. You can uninstall the extension from chrome://extensions, which removes all locally stored data for it. Some pages outside the extension's declared lesson sites require you to grant Kabir access explicitly, one click at a time, before it can read or capture them.
Questions about this policy: animesh@freedomwithai.com