Last updated: 2026-11-02

ChatGPT Search Inspector Privacy Policy

Publisher: Zyra Labs · Contact support

This policy covers the ChatGPT Search Inspector extension. Information you deliberately submit through the Zyra Labs website contact form is handled separately under the website Terms of Service. Do not send passwords, session tokens or private conversation exports to support.

Search Inspector has no server, account system, analytics, telemetry or persistent storage. It makes same-origin, read-only requests to ChatGPT when you open the toolbar popup or select Refresh. Nothing is uploaded to the developer or another service.

Access and authentication

Only activeTab and scripting permissions are requested. Clicking the icon grants temporary access to the selected tab. There is no permanent host grant, automatic site-wide content script, service worker, debugger permission or background collection. Only saved https://chatgpt.com/c/… and supported custom-GPT conversation routes qualify. New chats, share links and unrelated sites are not injected.

A one-off script in the main frame’s isolated world reads /api/auth/session, then performs an authenticated GET to /backend-api/conversations/{current-ID}?num_turns=10&include_has_versions=true. The current session token and selected _account workspace cookie stay inside that isolated script. They never leave it, enter page globals, get logged/displayed/exported, or enter storage. No pasted credentials are used. Redirects are rejected. The chat location is checked before and after reads, and conflicting response identities are rejected.

The extension never submits prompts, independently searches the web, edits/deletes conversations, reloads the chat in normal popup use, or automatically visits source URLs. It loads no external source images or thumbnails. A user can deliberately open a validated source link; it opens with noopener, noreferrer and no referrer, as an ordinary browser navigation.

Data retained while the popup is open

A bounded conversation response is briefly returned to the popup for local parsing, then discarded. The session and conversation responses can contain account identifiers or chat-message fields during transient local handling; those fields are not added to reports, displayed or exported. Version 0.4.0 expands the earlier query-only popup into research tabs. Only these allowlisted categories remain in memory:

Full message content, private prompt/answer prose, system/developer prompts, hidden reasoning, raw tool-call bodies, account data, request headers, cookies and authentication values are not extracted, displayed or exported. Sensitive named branches are excluded from generic traversal. Source links containing credentials or credential-like query/fragment parameters are rejected. Meaningful public URL parameters are preserved literally; source URLs are not silently canonicalized.

Derived parameters are not native provider arguments. Tool completion status is not external HTTP success. The search provider, exact search/open/find/click arguments, source fetch status and final cited-source mapping remain unknown unless a future explicitly verified format provides appropriate evidence. This build does not infer those values.

Lifetimes, retries and limits

All categories clear when changing chats/tabs, clearing the popup or closing it. Filters and the local domain-check input are not persisted. Refresh replaces the snapshot. Stop invalidates pending results and cancels scheduled retries; an already injected read can continue until completion/deadline, but stale results are discarded. No background retry continues after the popup is destroyed.

Reads are sequential, bounded to at most 12 attempts and a two-minute overall waiting window. Empty responses and temporary errors may retry with backoff capped at 15 seconds. Authentication/access/rate-limit/malformed-response/safety errors stop retries. Source-only and tool-only responses do not require a query string to finish successfully.

Safety budgets include a 64 KiB session response, 5 MiB streamed conversation response, up to a 60-second reader deadline, 100,000 traversal work items, 64 generic nesting levels, 500 queries, 2,000 source URLs, 8,000 reference associations and 1,000 tool envelopes. Query/URL strings are bounded to 8,192 characters; titles to 1,000 and snippets to 1,200. Query operator/phrase lists are bounded to 64 each. Limits or shortened fields are disclosed. Counts cover only retained data, not a complete search history.

The request’s 10-turn window may omit older turns; returned versions/branches can differ from the last visible answer. Pagination booleans are shown when available. No undocumented pagination parameters or other account endpoints are probed.

Copy and exports

Copy and downloads require a user action. Copy retains the complete selected category, regardless of its filter; query/URL buttons copy one item. A manual-copy dialog is used if the clipboard is blocked and is cleared on chat changes/reset.

Full JSON reports contain all retained research categories, derived analysis, explicit unknowns and limitations—not raw responses or private message bodies. Per-tab CSV contains all retained rows, including filtered-out and not-yet-rendered rows. Query text exports preserve exact strings. CSV cells that could be formulas receive a safety prefix; JSON preserves literals.

Queries, public source URLs and snippets can themselves contain personal/sensitive information. Review before sharing. User-created downloads and operating-system clipboard contents remain outside the popup and are not deleted when it closes.

Limited use

Use of inspected data is limited to this extension's disclosed, user-facing search-research features, consistent with the Chrome Web Store User Data Policy's Limited Use restrictions. The developer does not receive or sell the inspected data, use it for advertising or unrelated profiling, allow human review of it, or use it to determine creditworthiness or lending eligibility. No developer-operated data transfer occurs. User-triggered exports, clipboard copies and source-link navigation remain under the user's control.

Optional DevTools panel

The original advanced panel remains query-only. It passively reads eligible responses already captured by Chrome DevTools, verifies the route/chat identity and extracts search strings locally. It makes no separate API requests. Its Reload & inspect button reloads the inspected tab; Pause stops new reads, Clear removes retained results and closing DevTools destroys that panel’s session. Chrome’s Network log is separate and is not cleared by this extension.

The extension requests no persistent host, debugger, tabs, cookies, storage or clipboard permissions. Its pages’ CSP blocks network connections. Private endpoints can change or become unavailable; failures are reported, not bypassed. This project is independent of OpenAI and guarantees no SEO or ranking outcome.

Contact

For questions about this extension or this policy, use the publisher contact or support details on its Chrome Web Store listing.