openclaw - 💡(How to fix) Fix [Bug]: Sometimes, the web search tool fails to obtain the search results from SearXNG [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#73522Fetched 2026-04-29 06:18:50
View on GitHub
Comments
0
Participants
1
Timeline
4
Reactions
0
Author
Participants
Timeline (top)
closed ×2labeled ×2

I am using OpenClaw with a local SearXNG instance running on 127.0.0.1:8080.

When querying the SearXNG API directly, valid search results are returned:

curl -s "http://127.0.0.1:8080/search?q=北京%20每小时天气预报&format=json"

The response contains valid entries in the results field.

However, when OpenClaw performs the same search through the web search provider, it returns:

{ "query": "北京 每小时天气预报", "provider": "searxng", "count": 0, "tookMs": 2868, "externalContent": { "untrusted": true, "source": "web_search", "provider": "searxng", "wrapped": true }, "results": [] }

So although the local SearXNG API is returning valid search results, OpenClaw reports zero results. returns results

{"query":"北京 每小时天气预报","number_of_results":0,"results":[{"template":"default.html","title":"北京-天气预报 - 中央气象台","content":"预报曲线 24小时实况曲线 温度(℃) 25.2 25.2 21.9 21.9 23.9 23.9 23.7 23.7 26.7 26.7 23 23 22.7 22.7 21.8 21.8 24.4 24.4 29.3 29.3 25.6 25.6 27.4 27.4 28.8 28.8 26.7 26.7 7.7 7.7 9 9 11 11 13.3 13.3 13.7 13.7 14 14 11.3 11.3 9.7 9.7 10.9 10.9 15.3 15.3 14.3 14.3 12 12 14.2 ...","img_src":"","iframe_src":"","audio_src":"","thumbnail":"","publishedDate":null,"pubdate":"","length":null,"views":"","author":"","metadata":"","priority":"","engines":["baidu","duckduckgo","360search","startpage","sogou"],"open_group":false,"close_group":false,"positions":[3,6,3,5,2],"score":7.66666666666667,"category":"general","url":"https://www.nmc.cn/publish/forecast/ABJ/beijing.html","engine":"duckduckgo","parsed_url":["https","www.nmc.cn","/publish/forecast/ABJ/beijing.html","","",""]},{"template":"default.html","title":"【北京24小时天气查询】_北京今日逐小时天气预报查询_2345天气预报","content":"全国天气北京天气预报7天.安卓下载App Store首页全国天气15天天气今天天气明天天气一周天气40天天气空气质量天气视频历史天气国际天气专业天气降水量预报气温预报卫星云图气象雷达空气质量实况...","img_src":"","iframe_src":"","audio_src":"","thumbnail":"","publishedDate":null,"pubdate":"","length":null,"views":"","author":"","metadata":"","priority":"","engines":["duckduckgo","360search","sogou"],"open_group":false,"close_group":false,"positions":[2,2,1],"score":6,"category":"general","url":"https://tianqi.2345.com/today-54511.htm","engine":"duckduckgo","parsed_url":["https","tianqi.2345.com","/today-54511.htm","","",""]},

It seems that when querying, "category": "weather" was requested, but in the returned results, it is "category": "general".

Root Cause

I am using OpenClaw with a local SearXNG instance running on 127.0.0.1:8080.

When querying the SearXNG API directly, valid search results are returned:

curl -s "http://127.0.0.1:8080/search?q=北京%20每小时天气预报&format=json"

The response contains valid entries in the results field.

However, when OpenClaw performs the same search through the web search provider, it returns:

{ "query": "北京 每小时天气预报", "provider": "searxng", "count": 0, "tookMs": 2868, "externalContent": { "untrusted": true, "source": "web_search", "provider": "searxng", "wrapped": true }, "results": [] }

So although the local SearXNG API is returning valid search results, OpenClaw reports zero results. returns results

{"query":"北京 每小时天气预报","number_of_results":0,"results":[{"template":"default.html","title":"北京-天气预报 - 中央气象台","content":"预报曲线 24小时实况曲线 温度(℃) 25.2 25.2 21.9 21.9 23.9 23.9 23.7 23.7 26.7 26.7 23 23 22.7 22.7 21.8 21.8 24.4 24.4 29.3 29.3 25.6 25.6 27.4 27.4 28.8 28.8 26.7 26.7 7.7 7.7 9 9 11 11 13.3 13.3 13.7 13.7 14 14 11.3 11.3 9.7 9.7 10.9 10.9 15.3 15.3 14.3 14.3 12 12 14.2 ...","img_src":"","iframe_src":"","audio_src":"","thumbnail":"","publishedDate":null,"pubdate":"","length":null,"views":"","author":"","metadata":"","priority":"","engines":["baidu","duckduckgo","360search","startpage","sogou"],"open_group":false,"close_group":false,"positions":[3,6,3,5,2],"score":7.66666666666667,"category":"general","url":"https://www.nmc.cn/publish/forecast/ABJ/beijing.html","engine":"duckduckgo","parsed_url":["https","www.nmc.cn","/publish/forecast/ABJ/beijing.html","","",""]},{"template":"default.html","title":"【北京24小时天气查询】_北京今日逐小时天气预报查询_2345天气预报","content":"全国天气北京天气预报7天.安卓下载App Store首页全国天气15天天气今天天气明天天气一周天气40天天气空气质量天气视频历史天气国际天气专业天气降水量预报气温预报卫星云图气象雷达空气质量实况...","img_src":"","iframe_src":"","audio_src":"","thumbnail":"","publishedDate":null,"pubdate":"","length":null,"views":"","author":"","metadata":"","priority":"","engines":["duckduckgo","360search","sogou"],"open_group":false,"close_group":false,"positions":[2,2,1],"score":6,"category":"general","url":"https://tianqi.2345.com/today-54511.htm","engine":"duckduckgo","parsed_url":["https","tianqi.2345.com","/today-54511.htm","","",""]},

It seems that when querying, "category": "weather" was requested, but in the returned results, it is "category": "general".

Code Example

{"query":"北京 每小时天气预报","number_of_results":0,"results":[{"template":"default.html","title":"北京-天气预报 - 中央气象台","content":"预报曲线 24小时实况曲线 温度(℃) 25.2 25.2 21.9 21.9 23.9 23.9 23.7 23.7 26.7 26.7 23 23 22.7 22.7 21.8 21.8 24.4 24.4 29.3 29.3 25.6 25.6 27.4 27.4 28.8 28.8 26.7 26.7 7.7 7.7 9 9 11 11 13.3 13.3 13.7 13.7 14 14 11.3 11.3 9.7 9.7 10.9 10.9 15.3 15.3 14.3 14.3 12 12 14.2 ...","img_src":"","iframe_src":"","audio_src":"","thumbnail":"","publishedDate":null,"pubdate":"","length":null,"views":"","author":"","metadata":"","priority":"","engines":["baidu","duckduckgo","360search","startpage","sogou"],"open_group":false,"close_group":false,"positions":[3,6,3,5,2],"score":7.66666666666667,"category":"general","url":"https://www.nmc.cn/publish/forecast/ABJ/beijing.html","engine":"duckduckgo","parsed_url":["https","www.nmc.cn","/publish/forecast/ABJ/beijing.html","","",""]},{"template":"default.html","title":"【北京24小时天气查询】_北京今日逐小时天气预报查询_2345天气预报","content":"全国天气北京天气预报7天.安卓下载App Store首页全国天气15天天气今天天气明天天气一周天气40天天气空气质量天气视频历史天气国际天气专业天气降水量预报气温预报卫星云图气象雷达空气质量实况...","img_src":"","iframe_src":"","audio_src":"","thumbnail":"","publishedDate":null,"pubdate":"","length":null,"views":"","author":"","metadata":"","priority":"","engines":["duckduckgo","360search","sogou"],"open_group":false,"close_group":false,"positions":[2,2,1],"score":6,"category":"general","url":"https://tianqi.2345.com/today-54511.htm","engine":"duckduckgo","parsed_url":["https","tianqi.2345.com","/today-54511.htm","","",""]},

---

Web Search

with for "北京每小时天气预报" (top 10)
Tool input
{
  "query": "北京每小时天气预报",
  "count": 10,
  "categories": "weather",
  "language": "zh"
}
{
  "query": "北京每小时天气预报",
  "provider": "searxng",
  "count": 0,
  "tookMs": 3086,
  "externalContent": {
    "untrusted": true,
    "source": "web_search",
    "provider": "searxng",
    "wrapped": true
  },
  "results": []
}
Web Search

Tool output
{
  "query": "北京每小时天气预报",
  "provider": "searxng",
  "count": 0,
  "tookMs": 3086,
  "externalContent": {
    "untrusted": true,
    "source": "web_search",
    "provider": "searxng",
    "wrapped": true
  },
  "results": []
}
RAW_BUFFERClick to expand / collapse

Bug type

Behavior bug (incorrect output/state without crash)

Beta release blocker

No

Summary

I am using OpenClaw with a local SearXNG instance running on 127.0.0.1:8080.

When querying the SearXNG API directly, valid search results are returned:

curl -s "http://127.0.0.1:8080/search?q=北京%20每小时天气预报&format=json"

The response contains valid entries in the results field.

However, when OpenClaw performs the same search through the web search provider, it returns:

{ "query": "北京 每小时天气预报", "provider": "searxng", "count": 0, "tookMs": 2868, "externalContent": { "untrusted": true, "source": "web_search", "provider": "searxng", "wrapped": true }, "results": [] }

So although the local SearXNG API is returning valid search results, OpenClaw reports zero results. returns results

{"query":"北京 每小时天气预报","number_of_results":0,"results":[{"template":"default.html","title":"北京-天气预报 - 中央气象台","content":"预报曲线 24小时实况曲线 温度(℃) 25.2 25.2 21.9 21.9 23.9 23.9 23.7 23.7 26.7 26.7 23 23 22.7 22.7 21.8 21.8 24.4 24.4 29.3 29.3 25.6 25.6 27.4 27.4 28.8 28.8 26.7 26.7 7.7 7.7 9 9 11 11 13.3 13.3 13.7 13.7 14 14 11.3 11.3 9.7 9.7 10.9 10.9 15.3 15.3 14.3 14.3 12 12 14.2 ...","img_src":"","iframe_src":"","audio_src":"","thumbnail":"","publishedDate":null,"pubdate":"","length":null,"views":"","author":"","metadata":"","priority":"","engines":["baidu","duckduckgo","360search","startpage","sogou"],"open_group":false,"close_group":false,"positions":[3,6,3,5,2],"score":7.66666666666667,"category":"general","url":"https://www.nmc.cn/publish/forecast/ABJ/beijing.html","engine":"duckduckgo","parsed_url":["https","www.nmc.cn","/publish/forecast/ABJ/beijing.html","","",""]},{"template":"default.html","title":"【北京24小时天气查询】_北京今日逐小时天气预报查询_2345天气预报","content":"全国天气北京天气预报7天.安卓下载App Store首页全国天气15天天气今天天气明天天气一周天气40天天气空气质量天气视频历史天气国际天气专业天气降水量预报气温预报卫星云图气象雷达空气质量实况...","img_src":"","iframe_src":"","audio_src":"","thumbnail":"","publishedDate":null,"pubdate":"","length":null,"views":"","author":"","metadata":"","priority":"","engines":["duckduckgo","360search","sogou"],"open_group":false,"close_group":false,"positions":[2,2,1],"score":6,"category":"general","url":"https://tianqi.2345.com/today-54511.htm","engine":"duckduckgo","parsed_url":["https","tianqi.2345.com","/today-54511.htm","","",""]},

It seems that when querying, "category": "weather" was requested, but in the returned results, it is "category": "general".

Steps to reproduce

The fixed triggering rules are unknown. Sometimes the search results can be obtained, while other times they can't.

Expected behavior

Use "category": "general" to query for results.

Actual behavior

cant got the results

OpenClaw version

2026.4.23

Operating system

debian 12

Install method

npc global

Model

siliconflow/Qwen/Qwen3-8B

Provider / routing chain

providers

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Web Search

with for "北京每小时天气预报" (top 10)
Tool input
{
  "query": "北京每小时天气预报",
  "count": 10,
  "categories": "weather",
  "language": "zh"
}
{
  "query": "北京每小时天气预报",
  "provider": "searxng",
  "count": 0,
  "tookMs": 3086,
  "externalContent": {
    "untrusted": true,
    "source": "web_search",
    "provider": "searxng",
    "wrapped": true
  },
  "results": []
}
Web Search

Tool output
{
  "query": "北京每小时天气预报",
  "provider": "searxng",
  "count": 0,
  "tookMs": 3086,
  "externalContent": {
    "untrusted": true,
    "source": "web_search",
    "provider": "searxng",
    "wrapped": true
  },
  "results": []
}

Impact and severity

No response

Additional information

No response

extent analysis

TL;DR

The issue can be resolved by adjusting the category parameter in the OpenClaw query to match the category of the results returned by the SearXNG API.

Guidance

  • The SearXNG API returns results with a category of "general", but OpenClaw is querying for results with a category of "weather".
  • To fix this, update the OpenClaw query to use the "general" category instead of "weather".
  • Verify that the SearXNG API is configured to return results in the "general" category for the given query.
  • Check the OpenClaw documentation to see if there are any specific settings or configurations that need to be adjusted to handle category mismatches.

Example

No code example is provided as the issue seems to be related to configuration or query parameters rather than code.

Notes

The exact steps to update the OpenClaw query may vary depending on the specific implementation and configuration of OpenClaw and SearXNG.

Recommendation

Apply a workaround by updating the OpenClaw query to use the "general" category, as this is the category returned by the SearXNG API for the given query.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

Use "category": "general" to query for results.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix [Bug]: Sometimes, the web search tool fails to obtain the search results from SearXNG [1 participants]