brightdata-local-search — Claude Code skill: local web search
Spins up a local search pipeline on Bright Data's SERP API: query expansion, SERP retrieval, RRF reranking.
npx claude-code-templates@latest --skill development/brightdata-local-searchWhat brightdata-local-search does
This skill runs the unfancy-search pipeline on your own machine. It expands a query, pulls SERP results from several engines, reranks them with RRF, drops duplicates and clusters hits by domain.
Setup takes three moves: clone the unfancy-search repo, fill in .env, start the server. Docker is the recommended route; Node.js 18+ with pnpm works too. The server listens on http://localhost:3000. A search is a POST /api/search call that returns a jobId, and you poll /api/search-status/{jobId} every 3 seconds until status reads done.
You need a Bright Data account with SERP API access and a token in BRIGHT_DATA_API_TOKEN. The Anthropic key in ANTHROPIC_API_KEY is optional, and without it query expansion stays off. Research mode fires 12 sub-queries, expand mode fires 3 — both bill tokens, so turn them off when one query is enough.
What it helps with
- run web search locally instead of through a hosted endpoint
- widen a single query into several sub-queries
- strip duplicates and group results by domain
- keep unwanted domains out of the results
- ground an agent's answers in fresh web data
Example prompts for the agent
- Run a local search for kubernetes scaling strategies in research mode
- Find articles on API rate limiting, but exclude pinterest.com and quora.com
- Start the unfancy-search server and show me the ranked results with RRF scores
How to install brightdata-local-search
1claude-code-templates
npx claude-code-templates@latest --skill development/brightdata-local-search2Skills CLI (Vercel)
npx skills add davila7/claude-code-templates --skill brightdata-local-search -a claude-code3Manually: put the files in place
~/.claude/skills/brightdata-local-search/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/brightdata-local-search/
Manually: put the files in place
.agents/skills/brightdata-local-search/SKILL.mdFor all projects use ~/.agents/skills/
Manually: put the files in place
.cursor/skills/brightdata-local-search/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install davila7/claude-code-templates brightdata-local-search2Manually: put the files in place
.github/skills/brightdata-local-search/SKILL.mdPlatform CLI
gemini skills install https://github.com/davila7/claude-code-templates --path cli-tool/components/skills/development/brightdata-local-searchManually: put the files in place
.devin/skills/brightdata-local-search/SKILL.mdThe legacy .windsurf/skills/ path still works
Claude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about brightdata-local-search
How do I install brightdata-local-search in Claude Code?
Use the templates command: npx claude-code-templates@latest --skill development/brightdata-local-search. Or run npx skills add davila7/claude-code-templates --skill brightdata-local-search -a claude-code. The skill file lands at ~/.claude/skills/brightdata-local-search/SKILL.md.
What does brightdata-local-search do?
It sets up the unfancy-search pipeline on Bright Data's SERP API. The pipeline expands queries, retrieves SERP results, reranks them with RRF and clusters them by domain.
What do I need before running it?
A Bright Data account with SERP API access, plus a token in BRIGHT_DATA_API_TOKEN. Query expansion also needs ANTHROPIC_API_KEY. Start the server with Docker or Node.js 18+ and pnpm.