Browse docs
How do I search and filter chats in the Pactify Sidepanel?
Updated Sep 22, 2026
Steps
- Index at least one chatOn an AI page: Sync (cloud or local-only / Saved to this device). Bulk can backfill ChatGPT/Claude/Gemini on Starter.
- Open Sidepanel → ChatsChrome toolbar Pactify icon, or the on-page Pactify badge. Tab label is Chats.
- Search titles & messagesType at least 2 characters ( / focuses the box). Multiple words must all match (AND). With a query, sort is relevance (title weighted above body).
- Filter, review snippets, openOptionally filter by Platform or time. Review Title / Msg # snippets, then open a row for in-thread search and TOC.
Where to open Chats
- Chrome toolbar Pactify icon → Sidepanel → Chats
- On-page Pactify badge (may show Saving / Saved to this device)
Concept overview: Local search. Inside a thread: Chat detail.
Search box and filters
Placeholder: Search titles & messages · / to focus. Press / when the list is focused to jump into the box.
| Control | Behavior |
|---|---|
| Platform | Empty = all six sites. Pick ChatGPT, Claude, Gemini, Perplexity, Grok, and/or MS Copilot |
| Time | Anytime, Today, Past 7 / 30 / 90 days, Past year — based on last synced time |
| Sort | Newest / Oldest when the query is empty. With a search query, ranking is relevance (title weighted above body) |
How list retrieval works
Chats search is on-device full-text search (tokenization + inverted index)—not whole-string fuzzy matching and not Notion cloud search.
| Rule | Behavior |
|---|---|
| Minimum length | Each effective token needs ≥ 2 code points; shorter input shows Try at least 2 characters… |
| Multiple words | AND — every tokenized term must appear in title or body index |
| Western scripts | Whole-word splits with case / common diacritic folding (e.g. Café-style hits) |
| CJK (Chinese / Japanese / Korean) | Overlapping bigrams for short-term recall — not pinyin fuzzy sentence search |
| Not supported | Arbitrary substring fuzzy search, spell correction, or searching Notion page bodies |
Very long chats: the full transcript can still open in detail, but the inverted index may truncate for search (about ~20k characters per message and ~200k characters per conversation in the index budget). Content near the end of a huge thread may not be findable even though the detail view still shows it.
Result rows and snippets
- Title of the conversation (platform suffix stripped when present).
- With an active query: a highlighted snippet. Label may be Title (hit in title) or Msg #N (primary body hit at that message).
- Platform tag — clickable Open in {Platform} when a conversation URL exists (opens the live AI site without entering detail).
- Click the row to open chat detail. The list query carries into detail-search for highlights and jump.
Empty and no-match states
| State | Message |
|---|---|
| Empty library | No conversations yet — Sync from ChatGPT, Claude, and other platforms first |
| Query too short | Try at least 2 characters — shorter terms are ignored by local search |
| No hits | Local search only covers chats synced on this device… |
| Actions | Clear search / Clear filters when those apply |
| List load error | Oops! Something went wrong — We're working hard to improve our service. Please try again. + Retry |
What fills the list
| Writes to Chats | Does not write |
|---|---|
| Local-only index (no Notion yet)—badge Saved to this device; works for anonymous Free | Export only |
| Manual Sync / Auto-Sync when cloud is connected (dual-write) | Never-indexed chats |
| Bulk History Sync successes; Heal when cloud is ahead | Star / Tags (not shipped) |
Concept and badge feedback: Local search.
Heal (cloud ahead → local backfill)
When a conversation is already synced successfully in Notion (or another cloud destination) but the local Chats watermark lags, Pactify may run Heal: bring the local index up so it is not behind cloud. Not a separate button—triggered when opening a chat or on Auto-Sync paths. At most once per conversation per page session. Heal never pushes local over Notion.
Capacity and devices
| Topic | User-facing meaning |
|---|---|
| Conversation count | No hard “max N chats” product cap; engineered for roughly thousand-scale libraries |
| Browser quota | Bound by Chrome storage on this device; if the browser runs out of space, new chats may stop saving to Search |
| Index truncation | Detail can still show full text; search may miss content near the end of huge threads (~20k chars/msg, ~200k/chat index budget) |
| Clearing data | Clearing extension data wipes Chats. Clearing only an AI site’s cookies does not |
| Same Chrome profile | One shared local library |
| Other profile / computer | Separate DB — Sync / Bulk again to rebuild |
Common misunderstandings
- Install alone does not import history — Sync or Bulk first.
- Queries shorter than 2 characters are ignored.
- Search is token AND matching — not fuzzy whole-sentence or spell-fix.
- Wrong Chrome profile / device = different IndexedDB.
- Looking for Context distillates? That is the Starter Context tab, not Chats Search.
Frequently asked questions
Why are Chats empty after I only exported a chat?
Export does not write the local index. Sync at least once (even Saved to this device).
What does Msg #N mean on a search result?
The primary hit is in that message (1-based). Title means the match is mainly in the conversation title.
Can I filter chats by platform or date?
Yes. Use Platform and time filters (Anytime, Today, Past 7/30/90 days, Past year). With a query, ranking is relevance; without, Newest/Oldest.
How do I search ChatGPT history in the Sidepanel?
Open Sidepanel → Chats, type at least 2 characters in Search titles & messages, optionally filter Platform → ChatGPT. Multi-word queries are AND; open a row for in-thread search.