feat: Add SearXNG as web search provider#534
Open
truongvinht wants to merge 5 commits intosipeed:mainfrom
Open
feat: Add SearXNG as web search provider#534truongvinht wants to merge 5 commits intosipeed:mainfrom
truongvinht wants to merge 5 commits intosipeed:mainfrom
Conversation
Implements SearXNG as a third web search provider to address Oracle Cloud datacenter IP blocking issues and provide a cost-free, self-hosted alternative to commercial search APIs. Changes: - Add SearXNGConfig struct with Enabled, BaseURL, and MaxResults fields - Implement SearXNGSearchProvider with JSON API integration - Update provider priority: Perplexity > Brave > SearXNG > DuckDuckGo - Wire SearXNG configuration through agent tool registration - Add default config values (disabled by default, empty BaseURL) Benefits: - Solves DuckDuckGo datacenter IP blocking (138 bytes redirect responses) - Zero-cost alternative to Brave Search API ($5/1000 queries) - Self-hosted solution with 70+ aggregated search engines - Privacy-focused with no rate limits or API keys required - Ideal for Oracle Cloud, GCP, AWS, and Azure VM deployments The implementation follows the existing provider interface pattern and maintains backward compatibility with all existing search providers. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Update README to document the new SearXNG search provider option alongside existing Brave, DuckDuckGo, and Perplexity providers. Changes: - Document provider priority order: Perplexity > Brave > SearXNG > DuckDuckGo - Add SearXNG configuration examples in Quick Start and Full Config sections - Expand "Get API Keys" section with all 4 search provider options - Enhance troubleshooting section with detailed setup instructions for each provider - Add SearXNG to API Key Comparison table (unlimited/self-hosted) SearXNG benefits documented: - Zero cost with no API fees or rate limits - Privacy-focused self-hosted solution - Aggregates 70+ search engines for comprehensive results - Solves datacenter IP blocking issues on Oracle Cloud, GCP, AWS, Azure - No API key required, just deploy and configure base URL This documentation complements the code implementation in commit e7d8975. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Update config.example.json to include SearXNG web search provider configuration alongside existing Brave, DuckDuckGo, and Perplexity options. This ensures users have a complete reference for all available search providers when setting up their PicoClaw instance. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Brave Search discontinued free tier on Feb 12, 2026. Updated all README references to reflect paid pricing. Emphasized SearXNG as free alternative. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
|
I think adding this will be convenient for users to aggregate their own information, but at the same time, we may also need to consider the hidden danger of config unlimited expansion. Maybe we can extract the tool or tool-web item of the configuration file and make it into a separate configuration file? |
|
++ Having this would be great - lots of people using picoclaw would also be self hosting searxng. |
Author
|
Update: fix merge conflict |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📝 Description
Adds SearXNG as a third web search backend alongside DuckDuckGo and Brave.
Motivation:
Configurable via
config.json. Fully backwards compatible — existing configs without thesearxngblock work unchanged.🗣️ Type of Change
🤖 AI Code Generation
🔗 Related Issue
No existing issue. DuckDuckGo IP blocking and Brave free tier removal affect all users deploying PicoClaw on cloud VMs.
📚 Technical Context (Skip for Docs)
/search?q=query&format=json), making it the only free and reliable web search option for datacenter-hosted PicoClaw instances.🧪 Test Environment
📸 Evidence (Optional)
Click to view Logs/Screenshots
Feb 20 13:56:05 instance-20260215-1129 picoclaw[2394]: 2026/02/20 13:56:05 [2026-02-20T13:56:05Z] [INFO] agent: LLM requested tool calls {tools=[web_search], count=1, iteration=1, agent_id=main}
Feb 20 13:56:05 instance-20260215-1129 picoclaw[2394]: 2026/02/20 13:56:05 [2026-02-20T13:56:05Z] [INFO] agent: Tool call: web_search({"count":10,"query":"OpenClaw AI agent framework news 2026"}) {iteration=1, agent_id=main, tool=web_search}
Feb 20 13:56:05 instance-20260215-1129 picoclaw[2394]: 2026/02/20 13:56:05 [2026-02-20T13:56:05Z] [INFO] tool: Tool execution started {tool=web_search, args=map[count:10 query:OpenClaw AI agent framework news 2026]}
Feb 20 13:56:06 instance-20260215-1129 picoclaw[2394]: 2026/02/20 13:56:06 [2026-02-20T13:56:06Z] [INFO] tool: Tool execution completed {tool=web_search, duration_ms=1163, result_length=3152}
Feb 20 13:56:20 instance-20260215-1129 picoclaw[2394]: 2026/02/20 13:56:20 [2026-02-20T13:56:20Z] [INFO] agent: Response: Based on the search results, here's the latest news about OpenClaw:....
☑️ Checklist