Summary
- Recordings stay local by default. Sessions are stored in your browser (IndexedDB) and exported as a ZIP file you save yourself. Recording and export need no account.
- Integrations are optional. Transcription, AI summaries, report publishing and GitHub issues send data only after you configure them.
- Two ways to configure them. In standalone mode you enter your own provider keys and Cloudflare account, and data goes directly to those services. If you connect a Proofline account (in preview), the features you use through Proofline send data to Proofline instead.
What the extension accesses
To record a session, the extension captures, on the tabs you are actively recording:
- Network requests and responses (via
chrome.debugger/ CDP), including bodies and headers - Console logs, exceptions, and failed requests
- Clicks, inputs, scrolls, keystrokes, and page navigations
- Screenshots of the recorded tab
- Microphone audio, when you start voice narration
- Files you upload to the app or attach yourself
All of this is written to local browser storage. You can export a local ZIP or explicitly publish the selected report.
Redaction
Redaction is on by default. Before anything is written to storage, the extension masks authorization headers, token-like JSON and form fields, sensitive URL parameters, and password inputs. You can add rules or disable redaction per session on the options page.
Annotation dictation (optional)
Annotation comments use the recording microphone and your configured transcription provider. With the mic on, speech fills the active comment; its mic button starts or stops the recording microphone. The audio remains part of the session's voice recording. Deepgram and ElevenLabs provide live results; OpenAI uses audio segments. Typing does not start the microphone.
When an annotation is selected and an AI model is configured, a bounded excerpt of visible headings, navigation and interface labels is sent to that model to identify unusual vocabulary. Input values, editable fields and hidden content are excluded. The resulting short dictionary is sent to the transcription provider to improve recognition. Page context and dictionaries are kept in memory, not saved with the session or published. No API keys are exposed to the recorded page. If extraction fails, ordinary transcription continues.
Transcription with your own key (optional, off by default)
If you enter an API key on the options page, recorded audio is streamed or uploaded to the provider you selected in order to transcribe it:
- Deepgram: deepgram.com/privacy
- OpenAI: openai.com/policies/privacy-policy
- ElevenLabs: elevenlabs.io/privacy
Your API key is stored locally in chrome.storage.local and is sent only to that provider. In standalone mode, Proofline does not receive, proxy or store your key or your audio. Your use of a provider is governed by that provider's privacy policy and terms. Provider fees apply; ElevenLabs charges extra for keyterm prompting.
Publishing and AI summaries with your own accounts
Publishing uploads the selected report, session data, transcripts and included screenshots, recordings and files directly to your Cloudflare account. You configure who can sign in with Cloudflare Access. The deployed report also validates Access tokens before serving any file. Reports remain hosted until you delete them with Unpublish report or in Cloudflare. Deleting a local recording does not unpublish it.
Filing an issue with a configured model, or choosing Regenerate summary, sends up to 60,000 characters of text evidence directly to OpenAI, Anthropic, Google or the OpenAI-compatible endpoint you configure. With a configured model, stopping a recording also sends this bounded text evidence to generate its session-list title automatically. Media bytes are not sent to the model. Provider terms and retention policies apply. Review the generated summary before sharing.
Filing a GitHub issue sends its title, summary and report link to GitHub. The extension creates it using your configured GitHub token. The summary follows repository visibility; Access protects the report, not the issue text. Drafts, deployment references and issue recovery markers are saved locally.
API keys remain in extension storage, separate from recordings, and are sent only to the configured service. They are never included in exports or published pages. Review screenshots, voice and attachments before publishing; redaction does not remove all sensitive information.
Connected Proofline mode (preview, optional)
You can connect the extension to a Proofline account. This mode is in preview. Sign in, then choose Proofline for the features you want it to handle. When it is on, the features you run through Proofline send data to Proofline rather than to your own provider accounts:
- AI features (summaries, session titles, page vocabulary and transcription) send the same evidence described above, text evidence and recorded audio, to Proofline. Proofline processes it with its model and transcription providers and records the credits each request uses.
- Hosted reports upload the selected report, session data, transcripts and included media to Proofline. Only the workspace members you select and people you invite can open it after signing in to Proofline. A report stays hosted until you delete it, within your workspace's storage quota.
- GitHub issues are created through the Proofline GitHub App installed on your repositories. Proofline sends the issue title, summary and report link to GitHub.
You can switch any feature back to your own keys, and recording and export keep working locally whether or not you connect.
Data the extension collects
In standalone mode, none. The extension has no analytics, no telemetry and no ads, and Proofline does not receive your recordings, transcripts, keys or usage data. In connected mode, Proofline receives only the data described in the previous section for the features you use.
Data sharing and sale
We do not sell user data. In standalone mode we never receive it. In connected mode, Proofline sends text evidence and audio to its model and transcription providers, and issue content to GitHub as described above.
Contact
Questions: open an issue on GitHub or email hello@proofline.sh.
Record your next bug instead of describing it
Session Recorder is free and open source under the AGPL-3.0. Recording and ZIP export need no account. AI, transcription and publishing are optional: use your own providers, whose charges apply, or use credits with the optional Proofline connection preview when it reaches your installed version.