dev.toJune 21, 2026
Modelo

Claude Has No Way to Search Your Conversations. So I Built One (Free)

Claude's native search only finds conversation titles, not content. I built a free Chrome extension to fix that in 3 hours - full text search, word highlighting, and scrollbar markers. Here's how.

# Claude Has No Way to Search Your Conversations. So I Built One (Free)

Claude does have a search function. It just only searches conversation titles, not what's actually inside them. I found this out the hard way, coded a fix in 3 hours, published it for free, and it got accepted to the Chrome Web Store in 12 hours. This is how it happened.

This is episode 3 of VibeCoding Until I Make $100k.

---

The Idea Came From My Own Frustration

I started this episode the same way I usually do - scraping Reddit's r/chrome_extensions to find ideas worth building. I sent everything to Claude, asked it to summarize and spot patterns. Productivity and AI tools dominated the results, which made sense, but nothing in there grabbed me. Everything either felt overcrowded or too niche.

After hitting a wall, I went back to a Claude conversation I'd had a few days earlier and couldn't find it. I tried typing in the search bar - only titles came back. I clicked the "Enable Deeper Search" button. Nothing happened. It just... didn't work.

I Googled around to see if this was just me. It wasn't. Other people were running into the same thing. The only solutions I found were paid extensions. So I figured I'd build a free one, use it myself, and add it to the series.

---

Step 1: Figure Out How Claude Stores Conversations

Before touching any extension code, I always write a standalone script I can run directly in the browser. I just want to confirm the thing is doable before going any further.

The first question was: where do the conversations actually live? Are they stored locally? Is there an API?

I opened DevTools, started a new conversation to trigger some network requests, and found an API that returns all conversation IDs. From there I wrote a quick fetch script to pull each conversation individually and confirmed I could get the full text content out of them.

That was all I needed to know. The data was accessible, the extension was buildable, and I moved on.

---

Step 2: Building the Extension

The extension is essentially just a search bar that pulls from Claude's local conversation data and highlights matches. Since there's nothing complex going on - no shared state, no rendering logic - I skipped the full toolchain. No Vite, no React. Plain JS, HTML, and CSS.

I wanted the search UI to sit right below Claude's existing search button, and I wanted it to actually look like it belonged there. To pull that off, I copied Claude's actual HTML and CSS into a samples folder in the project. This is a habit I've developed: giving the AI real reference material from the target site produces much more faithful output than describing what you want in words.

I copied two things specifically - the HTML for the search button area, and all of Claude's CSS variables extracted from the page. Then I explained the idea to Claude, had it generate a prompt, and handed that to Cursor. One prompt, a few minutes, and it was almost wor

Read full article on dev.to