Enterprise Search for Claude: Snippets Aren't Answers
This Claude Basics episode explains why one search is not an answer. The enterprise-search skill runs a three-step loop of search, read and feedback, with two design rules and an important caveat about empty results.
Ask an assistant something that lives in your company's own knowledge, such as a policy or a prior decision, and it is tempting to think one search gives the answer. This Claude Basics episode explains why it does not. The enterprise-search skill runs a loop in which search finds candidates and reading the document is what actually answers you.
A question that spans many sources
The video uses one example question: "What's our policy on contractor onboarding, and is there a prior decision already on file?" Answering it means reaching into the company's own knowledge, such as chat, drives, tickets and wikis, and not the open web.
The easy assumption is to run one search and trust that the top result has the answer. The video explains why that assumption fails.
A snippet is not an answer
A search result is a snippet of about 35 words, just enough to judge whether a document is worth opening. It was never built to answer anything by itself. Treating it as the answer is the mistake this episode is about.
The three-step loop
The skill runs in three steps:
- Search returns ranked snippets across every connected source.
- Read fetches the full text of the documents that matter, using the ID from search.
- Feedback means upvoting what you used and downvoting what you rejected. This trains the ranker, and it happens before the task is called done.
Two bundled scripts handle the busy work. One searches with pagination, and the other reads up to 50 documents at a time.
Two rules that keep the loop honest
The video gives two design rules. First, always search the shared index first. It already ranks across every source, removes duplicates and respects permissions, so it comes before falling back to a single connector directly. Second, pagination is cursor-based. Pass the cursor back exactly as given, never build one yourself, and stop when there is no cursor.
The catch with empty results
One caveat is easy to miss. An empty result can mean two different things: the content genuinely is not indexed, or the identity asking simply cannot see it. The API does not say which.
Both directions
Back in the onboarding example, search turns up a snippet that mentions a policy, which is step one. Reading the full document is what surfaces an exception buried in the next paragraph. Marking that document as used is step three, and it is what makes tomorrow's search better.
The video also warns about overconfidence in both directions. Finding something does not mean you have the whole picture, because some sources might not be connected yet. Finding nothing does not mean the answer does not exist, because it might be a permissions gap or a query that needs broadening.
Key takeaways
- One search does not produce an answer; search finds candidates and reading answers.
- A search snippet is about 35 words, enough to triage, not to answer.
- The loop is search, read, then feedback before calling the task done.
- Search the shared index first, since it ranks, deduplicates and respects permissions.
- Pass pagination cursors back exactly as given and never build your own.
- An empty result may mean not indexed or no access, and the API does not say which.
- Finding something does not prove completeness, and finding nothing does not prove absence.
Try it yourself
Ask Claude to search your internal docs for your policy on contractor onboarding, read the full document and not just the snippet, and say whether there is a prior decision on file. Then ask it to tell you what it used to answer before it finishes, so you can see whether it stopped at the snippet or opened the document.
Chapters
- 0:00Does Claude just search our docs and answer from the results?
- 0:12One question, many sources — the anchor
- 0:24A snippet, not an answer
- 0:38Search, read, feedback — the loop
- 1:00Design rules — index first, cursor pagination, empty-results logic
- 1:24The anchor returns — snippet, document, feedback
- 1:39Both directions — found isn't complete, empty isn't proof
- 1:52Carry-out
- 2:00Your turn
- 2:15Outro
Full transcript(auto-generated, with timestamps)
Does Claude just search our docs and answer from the results?
[0:00]Someone assumes Claude just searches the company's docs and answers straight from the results. It's closer to this. Search finds candidates, reading the document is what actually answers you. Lay them, take them through it. Say you ask,
One question, many sources — the anchor
[0:12]"What's our policy on contractor onboarding? And is there a prior decision already on file?" Answering that means reaching into the company's own knowledge, chat, drives, tickets, wikis, not the open web. The easy assumption, run one search and
A snippet, not an answer
[0:25]The top result already has the answer. But a search result is a snippet about 35 words, just enough to judge whether a document is worth opening. It was never built to answer anything by itself. The loop runs in three steps. Search returns
Search, read, feedback — the loop
[0:40]Ranked snippets across every connected source. Read fetches the full text of the documents that matter using the ID from search. Feedback upvote what you used, downvote what you rejected, trains the ranker, and it happens before the task is called done. Two bundled scripts handle the busy work, one for searching with pagination, one for reading up to 50 documents at a time. Two rules keep
Design rules — index first, cursor pagination, empty-results logic
[1:00]It honest. Always search the shared index first. It already ranks across every source, deduplicates, and respects permissions before falling back to one connector directly. And pagination is cursor-based. Pass the cursor back exactly as given, never build one yourself, stop when there isn't one. One catch, an empty result can mean two different things. The content genuinely isn't indexed, or the identity asking simply can't see it. The API doesn't say which. Back to the
The anchor returns — snippet, document, feedback
[1:24]Onboarding question, search turns up a snippet that mentions a policy. That's step one. Reading the full document is what actually surfaces the exception buried in the next paragraph. Marking that document as used is step three, and it's what makes tomorrow's search better.
Both directions — found isn't complete, empty isn't proof
[1:39]Finding something doesn't mean you have the whole picture. Some sources might not be connected yet. And finding nothing doesn't mean the answer doesn't exist. It might be a permissions gap, or a query that needs to broaden before you conclude that. Enterprise search isn't
Carry-out
[1:52]One lookup. It's search for candidates, read the document that matters, then say what you used so the next search ranks better.
Your turn
[2:00]Your turn. Here's the prompt. Read it with me. Search our internal docs for our policy on contractor onboarding. Read the full document, not just the snippet, and tell me if there's a prior decision on file. Then tell me what you used to answer before you finish. Liam in for Bear. Enterprise search Liam in for Bear.
More from Claude
1:46Google Drive API with Claude: Find Every File, Skip the Traps
1:40Debug Plugins: Your Claude Plugin Is Stale, Not Broken
2:49Claude Meets an API It's Never Seen: The Grafana API Skill
2:15Claude Datadog API: Does Claude Already Know This API?
3:10Can Claude Make a Good Chart? Only With a Charting Kit
2:26