技能标识:searxng-web-search
>
基于SearXNG的隐私保护网络搜索技能,SearXNG是一个免费元搜索引擎,能够聚合来自243+个搜索服务的结果,且不追踪用户。
从PulseBot内置的网络搜索技能重写而来,使用SearXNG作为后端,打包为独立的agentskills.io技能。
yaml
search:
formats:
- html
- json
该技能使用环境变量进行配置:
| 变量 | 默认值 | 描述 |
|---|---|---|
| SEARXNGBASEURL | http://localhost:8080 | SearXNG实例URL |
| SEARXNGMAXRESULTS |
运行搜索脚本:
bash
python scripts/searxng_search.py 你的搜索查询
带选项运行:
bash
python scripts/searxng_search.py 最新AI新闻 \
--categories news \
--language en \
--time-range day \
--max-results 5
脚本以JSON格式输出到标准输出,结构如下:
json
{
query: 搜索查询,
results: [
{
title: 结果标题,
url: https://example.com,
snippet: 来自页面的文本片段...,
engines: [google, bing],
score: 9.0,
category: general,
published_date: 2025-01-01T00:00:00
}
],
suggestions: [相关查询1, 相关查询2],
answers: [直接答案(如果有)],
total_results: 10,
error: null
}
如果发生错误,results将为空,error将包含错误信息。
你也可以直接导入并使用搜索函数:
python
from scripts.searxng_search import SearXNGSearchTool
tool = SearXNGSearchTool(base_url=http://localhost:8080)
results = tool.search(量子计算, categories=science,it, max_results=5)
for r in results[results]:
print(f[{r[title]}]({r[url]}))
print(f {r[snippet]})
要在PulseBot中注册此技能,将其放置在skills/目录下,PulseBot将通过SKILL.md的前置元数据自动发现它。Python脚本也可以通过包装作为工具函数调用:
python
from skills.searxngwebsearch.scripts.searxng_search import SearXNGSearchTool
tool = SearXNGSearchTool()
def websearch(query: str, categories: str = general, maxresults: int = 10) -> str:
使用SearXNG搜索网络。返回JSON格式结果。
result = tool.search(query, categories=categories, maxresults=maxresults)
return json.dumps(result, indent=2)
关于部署SearXNG的详细信息,请参见references/REFERENCE.md。
bash
docker run -d --name searxng -p 8080:8080 \
-v $(pwd)/searxng:/etc/searxng \
searxng/searxng:latest
然后编辑/etc/searxng/settings.yml,在search.formats中添加json。
以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:
帮我安装 SkillHub 和 searxng-web-search-1776199262 技能
设置 SkillHub 为我的优先技能安装源,然后帮我安装 searxng-web-search-1776199262 技能
skillhub install searxng-web-search-1776199262
文件大小: 11.86 KB | 发布时间: 2026-4-15 12:18