PRIVACY POLICY
Version 1.3.10 — last updated 14 August 2026
Peter Joseph Reply Helper prepares user-selected YouTube, X, Reddit and Facebook context for a manually controlled reply-drafting workflow. The extension has no developer-controlled server, analytics, advertising, automatic posting or extension account system. It prefers source-platform captions and local processing. When captions are unavailable, compatible desktop Chrome installations can process the selected video's directly available media/audio with Chrome's built-in on-device multimodal AI. Full-duration normal-speed page-playback and browser speech-recognition transcript routes are not used.
The extension may handle the following information solely to build the user-requested clipboard package:
Personally identifiable information in selected content: author names, display names, usernames or other identifiers visible on the selected page or entered by the user.
Website content and resources: post text, titles, visible publication information, quoted or shared content, media indicators, images, links and available caption or transcript files.
Limited browsing activity: the URL, page title and platform of the active tab explicitly selected by the user, used only to identify and capture the requested post.
Selected video media/audio: when a video has no usable complete English transcript, the extension may temporarily retrieve the selected platform's own directly available media/audio resource for local overlapping-window transcription. If that route cannot run, the extension stops; it does not listen through the full video or send tab audio to a speech-recognition service.
YouTube authentication information: when a token-free YouTube media request is insufficient, the extension may use the already-open YouTube page's current signed-in session. Authentication-cookie values are read transiently inside that page only to derive normal YouTube session-authorisation headers for a request concerning the selected video. Cookie values and derived headers are not saved, copied into diagnostics or sent to the extension developer.
User-provided content: pasted reply targets, thread context, username aliases, image-placement notes, manually supplied transcripts and an optional Custom GPT URL.
Local preferences and drafts: the selected GPT option, aliases, current task fields, image flags and first-run privacy acknowledgement.
Information is used only to:
extract the social-media context selected by the user;
retrieve or locally produce a complete transcript where possible;
distinguish original, quoted and shared material;
organise reply targets, thread context and separately attached images;
build the user-requested clipboard package;
save settings and the current draft locally; and
create a privacy-sanitised diagnostic report when the user explicitly presses the diagnostic-copy button.
The extension does not use information for advertising, profiling, sale, credit decisions, unrelated research or developer human review.
The extension attempts transcript methods from easiest to harder fallbacks:
A complete English caption or transcript exposed by the source platform.
Exact signed YouTube timed-text requests already loaded by the selected player where available.
A YouTube alternate-media check using YouTube's own player interface from the already-open selected page.
Local English translation of a complete non-English caption track where Chrome supports it.
Fast local transcription from the selected video's directly available media/audio data.
For the fast local route, the extension may retrieve the selected platform's own signed media/audio resource over HTTPS and process that media with Chrome's built-in Prompt API with audio input. Chrome manages the on-device model and may require a one-time model download on a compatible desktop computer. Once the model is available, inference is performed locally by Chrome. The extension does not send selected audio to the extension developer.
Pages can hold media for several nearby posts or videos. The extension may briefly retrieve more than one bounded candidate while it compares decoded duration with the user-selected player. Mismatched or unchunkable candidates are discarded from memory and the extension continues to the next candidate.
For YouTube, the extension first requests direct media using a token-free player client, then authenticated TV-player variants or an embeddable player where applicable. A selected small resource is fetched in one complete HTTPS request where possible, followed only by one bounded Range fallback. The already-open page's current YouTube session may be used for authenticated player requests. Cookie values and generated authorisation headers are not copied into diagnostics, saved to extension storage or sent to the developer.
If a direct target media resource cannot be obtained or Chrome's audio-input on-device model is unavailable, the automatic workflow ends and permits manual transcript entry. It does not use full-duration normal-speed page playback, tab audio or browser speech recognition. Facebook may be activated muted for at most 900 milliseconds solely to make the selected player's caption or direct-media requests available. The previous pause, time and mute state are then restored, and no transcript audio is collected from that playback.
Settings, privacy acknowledgement and current drafts are stored in `chrome.storage.local` on the user's device until the user clears them, uses the privacy-reset control or removes the extension. The extension developer does not receive or have access to that storage.
Direct media/audio fetched for transcription is held only temporarily in browser memory and is not intentionally saved to extension storage or a developer-controlled server. YouTube cookie values and derived session-authorisation headers are transient and are not stored.
The extension does not send captured or entered content, authentication material, media/audio or diagnostics to the extension developer, an advertising service or an analytics service.
Caption and direct media/audio resources may be requested directly from the selected source platform or its related media host over HTTPS. A YouTube session-authorisation header, when required, is sent only to YouTube in a same-origin request concerning the selected video. Chrome's built-in on-device model processes media locally.
The user may choose to copy the completed package and manually paste it into ChatGPT or another destination. The extension does not do this automatically. Once the user chooses to submit information to a third party, that third party's terms and privacy policy apply.
`sidePanel`: displays the extension interface beside the current page.
`storage`: stores settings, acknowledgement and draft fields locally.
`clipboardWrite`: copies user-requested packages, diagnostics and follow-up prompts after a user action.
`scripting` and `activeTab`: read the currently selected page after the user presses a capture button.
Optional supported-site and related media-host access: requested separately for YouTube, X, Reddit and Facebook when a user-started capture requires it. Related media-host access is used only for caption or direct media/audio resources belonging to the selected source.
The extension does not passively monitor browsing.
Users choose which page to capture and can inspect or edit the resulting material. They can clear the current task at any time.
The “Copy capture diagnostics” control creates a technical report only when the user presses it. Signed media URL query values are stripped before the report is placed on the clipboard. The report is not automatically transmitted.
The “Delete all saved data and site permissions” control clears local settings and drafts and asks Chrome to revoke optional supported-site and media-host access.
Platform captions, automatic translation and on-device multimodal transcription can contain errors. For decoded direct-media transcription, the extension processes 20-second core windows with 2-second overlap and requires full planned-duration coverage before labelling a result complete. This guards against skipped windows but cannot guarantee that every spoken word was recognised correctly.
The extension is instructed not to invent missing speech and does not represent automatically generated text as a verified quotation. Important quotations should be checked against the original source.
The use of information obtained through Chrome extension permissions is limited to the extension's disclosed single purpose: preparing user-selected social-media context, available captions and transcript text for a manually controlled reply-drafting workflow. The information is not used for advertising, profiling, sale, credit decisions, unrelated research or human review by the developer.
The use of information received from Google APIs will adhere to the Chrome Web Store User Data Policy, including the Limited Use requirements.
The extension does not operate a remote database. Source-platform resource requests use HTTPS. Authentication-cookie values and derived session headers are not stored, logged in diagnostics or sent to the extension developer. Users remain responsible for the information they manually choose to copy or submit elsewhere.
Material changes to data handling will be disclosed in the extension interface and this privacy policy before the changed practice is used in a released Store version.
Questions about the extension or this privacy policy can be sent to:
peterjosephsangertranslator@gmail.com