Local-first web search and exploration for your AI agents, without the bloat.
Extensible and lightweight by design ๐ท๏ธ
Status
โ ๏ธ Currently in development.
Quickstart
Sibyl uses SearXNG for web search and Crawl4AI for webpage fetching by default. Both run locally with no API key. Lots of other options are available (e.g., Exa, Firecrawl, Brightdata, etc.). Check the Configuration page for more details.
Get a working setup in a few steps:
-
Install Sibyl globally via NPM:
# โ ๏ธ Not yet available on npm npm i -g sibyl -
Run a local SearXNG instance for searching the web:
# Create and enter a working directory for the SearXNG local instance mkdir ~/searxng cd ~/searxng # Download SearXNG's default settings curl -o settings.yml https://raw.githubusercontent.com/searxng/searxng/master/searx/settings.yml # Enable the JSON output format and replace the placeholder secret key sed -i -e 's/ - html$/ - html\n - json/' \ -e "s/secret_key: \"ultrasecretkey\"/secret_key: \"$(openssl rand -hex 32)\"/" \ settings.yml # Start SearXNG on http://localhost:8080 with the updated settings docker run -d \ --restart unless-stopped \ -p 8080:8080 \ -v ./settings.yml:/etc/searxng/settings.yml \ --name searxng \ searxng/searxng:latest -
Run a local Crawl4AI instance for fetching webpages:
docker run -d \ --restart unless-stopped \ -p 11235:11235 \ --shm-size=3g \ --name crawl4ai \ unclecode/crawl4ai:latest -
Run your first search:
sibyl search "how to use react with vite" -
Configure your settings!
Check the Configuration page page for more details.
Commands
| Command | Description |
|---|---|
search <query> | Searches the web sibyl search "react vite" |
fetch <url> | Prints the content of a site in token-efficient markdown sibyl fetch https://vite.dev/guide |
ask <url> <question> | Asks a query using LLM from a site's content sibyl ask https://vite.dev/guide "how to start a react project with vite" |
--help, -h | Shows help. |
--version | Shows version. |
