使用说明
查询
终端原生、代理优先的web搜索CLI。通过可交换的内置适配器路由查询,并始终输出JSON。
qry "what is the latest version of numpy"
[
{
"title": "NumPy 2.0 Release Notes",
"url": "https://numpy.org/doc/stable/release/2.0.0-notes.html",
"snippet": "NumPy 2.0.0 is the first major release since 2006..."
}
]
安装
自制:
brew install justEstif/tap/qry
npm(可选):
npm install -g @justestif/qry
米斯:
mise cache clear
mise use -g go:github.com/justestif/qry@latest
mise reshim
适配器
适配器是执行实际搜索的内置包。它们实现了一个通用接口。
| 适配器 | 源 | 需要密钥 |
|---|---|---|
brave-api |
勇敢搜索API | ✓ |
brave-scrape |
勇敢搜索(抓取) | ✗ |
ddg-scrape |
DuckDuckGo精简版(刮擦) | ✗ |
exa |
Exa AI(通过MCP) | ✗ |
github |
GitHub搜索API | ✗ (可选) |
searx |
SearXNG(自助式) | ✗ |
stackoverflow |
堆栈交换API | ✗ (可选) |
wikipedia |
维基百科/媒体维基API | ✗ |
配置
创建 ~/.config/qry/config.toml:
使用 ${VAR} 适配器配置值中的语法--qry从环境中扩展它们
在运行时,机密永远不会存在于文件中:
[adapters.brave-api.config]
api_key = "${BRAVE_API_KEY}"
[defaults]
num = 10
timeout = "5s"
[routing]
mode = "first"
pool = ["ddg-scrape", "brave-scrape"]
代理使用
一 代理技能 可用于在任何受支持的代理中进行一行安装:
npx skills add justestif/qry -g -y
浏览技能 技能s.sh.
跑 qry --agent-info (或 -A)获取该工具的JSON描述和您当前的
配置——对于代理在进行搜索调用之前进行自我定位非常有用:
qry --agent-info
输出包括工具描述、可用标志、路由模式解释、,
以及每个配置的适配器及其可用性状态。适配器配置
地图显示 ${VAR} 模板字符串而不是解析值,因此机密永远不会暴露。
路由模式
first--按顺序尝试适配器,第一次成功后返回。快速,适用于大多数用例。merge--同时查询所有适配器,按URL进行重复数据消除,返回组合结果。
更多
看 docs/ 有关完整文档:
docs/architecture.md--qry如何在内部工作docs/schema.md--配置和JSON模式docs/adapters.md--如何构建自己的适配器
