selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
browser-search logo

Self-host browser-search

v3.2.1

AI agent skill for web search with anti-bot bypass

ReleaseOpen SourceMIT
Updated6 days ago
LanguageJavaScript
Setup difficultyModerate
Stars
539
Requires
Docker, Node.js, Npm
Install with Docker

What is browser-search?

browser-search is a skill for AI agents providing web search and browsing through three components. SearXNG runs in Docker as a metasearch engine querying multiple search engines simultaneously. Camofox runs in Docker as a Firefox-based browser with a REST API for standard websites. CloakBrowser runs via npm as a stealth Chromium browser that bypasses anti-bot protections like Cloudflare. The skill uses deterministic scripts to prevent hallucinations, includes Readability.js for article extraction, and escalates from Camofox to CloakBrowser when sites block access. All components run locally on user hardware with no API keys or subscriptions. Installation requires Docker for SearXNG and Camofox, plus npm for CloakBrowser dependencies.

Should you self-host browser-search?

browser-search scores 52/100 on selfhost.directory (how scoring works) and ranks #86 of 209 in AI Agents. It has 539 GitHub stars.

It shipped 10 stable releases in the past year. The latest, v3.2.1, came out on 22 October 2026. New versions land roughly every 2 days.

Setup is moderate: expect some configuration beyond a single command. It is MIT-licensed and written mostly in JavaScript.

Its closest alternative on selfhost.directory is Orca (91/100, 108 446 stars). It scores higher overall, so compare the two before you pick. See browser-search vs Orca side by side.

Features

  • Anti-bot bypass
  • Anti-hallucination design
  • Article extraction with Readability.js
  • Automatic escalation
  • Browser automation via REST API
  • Custom Playwright scripts
  • Health checks and diagnostics
  • Markdown Output
  • Multi-engine web search
  • Proxy and geoip support
  • Rate Limiting
  • Security audit script
  • SSRF and DNS rebinding protection

browser-search README

How to install browser-search

Install browser-search with Docker

Docker, docker-compose
Environment variables
CAMOFOX_API_KEY, CAMOFOX_ADMIN_KEY, SEARXNG_HOST, SEARXNG_URL

SearXNG (via docker-compose)

Follow: https://docs.searxng.org/admin/installation-docker.html

In searxng/.env set SEARXNG_HOST=127.0.0.1 so :8080 is not exposed on 0.0.0.0

cd && docker compose up -d

Camofox (official GHCR image)

⚠️ SECURITY: Use --env-file for API keys (never pass on command line)

Create .env file: echo "CAMOFOX_API_KEY=your-key" > .env

docker start camofox-browser 2>/dev/null || docker run -d
--name camofox-browser
--restart unless-stopped
--tmpfs /tmp
--tmpfs /home/camofox/.cache
--memory 2g
--cpus 2
--pids-limit 200
--security-opt no-new-privileges
--ulimit core=0
--log-opt max-size=10m --log-opt max-file=3
-v camofox-data:/root/.camofox
-e CAMOFOX_CRASH_REPORT_ENABLED=false
-e MAX_OLD_SPACE_SIZE=512
-p 127.0.0.1:9377:9377
--env-file .env
ghcr.io/jo-inc/camofox-browser:1.18.1

SearXNG and Camofox run as Docker containers. SearXNG requires JSON format enabled in settings.yml. Camofox binds to 127.0.0.1:9377 for security.

How to configure browser-search

  • CAMOFOX_ADMIN_KEYAdmin key for Camofox stop endpoint

    Admin key for Camofox stop endpoint

  • CAMOFOX_API_KEYAPI key for Camofox evaluate, session, and cleanup endpoints

    API key for Camofox evaluate, session, and cleanup endpoints

  • SEARXNG_HOST127.0.0.1Host to bind SearXNG to (set to 127.0.0.1 to avoid exposing on 0.0.0.0)

    Host to bind SearXNG to (set to 127.0.0.1 to avoid exposing on 0.0.0.0)

  • SEARXNG_URLhttp://127.0.0.1:8080URL of the SearXNG instance (default: http://127.0.0.1:8080)

    URL of the SearXNG instance (default: http://127.0.0.1:8080)

browser-search releases & version history

More in Web Scraping

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…