dsh-web-搜索-任何搜索
A 类 深层空间( dsh) 插件那个 通过 任意搜索 ——"AI搜索基础设施 给特工们.
需要dsh >= 6.2.0-rc.2 ——此插件仅针对 dsh RC/ stable 线条( CI并发布解析其中最新的 latest编号 :next 运行时的分数). Α行不再被支持.
插件注册 a WebSearchProvider (单位:千美元)id: "anysearch") 与官员
ctx.web 能力接合, (中文(简体) ),
所以模特儿一直叫着一样 web_search 引用格式相同的工具
和界限。 不使用第三方 SDK: 运输遵循 AnySearch 本身的参考
CLI (中文(简体) )任何搜索/搜索技能) (中文(简体) ).
它怎么跟AnySearch说话
按正式接口的规格( E)scripts/shared/doc_spec.md 在技能还原中:
POST https://api.anysearch.com/mcpJSON-RPC 2.0 (英语)tools/call, (中文(简体) ), 无国籍人 (无)initialize,没有会话,每个请求一个连接).Authorization: Bearer <API_KEY>实值 选项 - 匿名访问工作 利率限制。 一个免费的密钥在 任何search.com/console/api-keys (英语)。 。 。 .max_results以 API 为上限.- 答复是: 代理商结构化的马克倒置; 提供者将结果块解析为
可引用的来源,并可降解为将整个有效载荷传递至
content若为 格式 永远漂移 —— 搜索从不因为解析器而失败 . - 原始内容
node:https每个请求(不)fetch/undici),匹配官方CLI和 避免在这个端点上挂起已知的 undici 连接池 .
垂直路由( R)domain编号 :sub_domain 通过 get_sub_domains, (中文(简体) ), batch_search,以及
extract 保持较丰富的MCP/技能级特性
常规 search dsh 模型化工具 web_search 联合国 domain 可被钉入
conf. 在 AnySearch 指定一个 MCP 客户端用于完整的工具集 .
安装
一个命令:
dsh plugin --profile <name> add @aiwayds/dsh-web-search-anysearch
dsh plugin 将软件包安装到配置文件( 通过 pnpm) 并注册到
dsh.profile.bundles 自动 - 软件包声明 dsh.bundle,所以请
官方的 CLI 调和层叠本身 。 重新开始 Dsh. 这就是整个
安装: 插件自行挂载并声称 web_search 在捆绑时默认
层,因此,零配置模型的 web_search 工具运行在 AnySearch
(匿名访问不需要钥匙).
地方发展: dsh plugin --profile <name> add link:/path/to/dsh-web-search-anysearch
(与您引用的目录相对的路径规格). 人工路线——增加:
依赖和捆绑条目 ~/.dsh/profiles/<name>/package.json 还有你
运行 pnpm install 工作都一样.
@deepseek-ai/*软件包是 设计对等依赖他们必须下定决心: 配置文件的单共享 dsh 关闭 。 放进去dependencies安装一个 二分贝实例 并撞倒装载器.
卸载
dsh plugin --profile <name> remove @aiwayds/dsh-web-search-anysearch
主机自动清理整个安装: 捆绑项被从
简介 package.json,取消了依赖,插件的补丁
与软件包相接的图层下降—— 包括《京都议定书》 searchProvider: anysearch
索赔 放置在主机上的补丁 web 排队,所以 web_search 恢复到
主机默认( e)deepseek-official) (中文(简体) ). 重新开始 dsh , 它就像插件是
从未安装.
没有可清理的磁盘状态: 插件无国籍( 没有缓存, 没有) 配置写出). 可选的 API 密钥, 如果您曾经存储过, 住在 主机拥有的证书文件——如果不想要,就去掉.
其中一个警告:如果你将选择复制到 拥有 补丁层
(单位:千美元)searchProvider: anysearch 在配置文件或家中 cordis.patch.yml),该
线性超过插件的寿命 —— 搜索后优雅地失败
WEB_PROVIDER_UNAVAILABLE (没有提供 与该id 注册) 直到你
删除行.
配置( 所有可选)
API密钥——只需要更高的费率限制. 匿名访问是有效的 AnySearch
使用; 当匿名配额用完时, 搜索错误将证书命名为
配置 。 将密钥存储在 dsh 管理的证书文件中
(单位:千美元)~/.dsh/.credentials.yaml:
version: 1
refs:
ANYSEARCH_API_KEY: <your_key>
或者从 GUI 中填入 : 设置-插件- dsh-web-search-anysearch 捆 *
联合国 web-search-anysearch 第-行 配置。该页写着
行的自配置名称—— apiKeyEnv,或 ANYSEARCH_API_KEY 配置时
dsh 的证书服务并报告密钥是否
当前配置 。 因为球场是直播的,重新定位 apiKeyEnv 移动
页面和提供者一起而不是分割它们——设置写入
应用到下一次搜索中, 在下次启动时进行补丁编辑 —— 并在
如果引用更改,则删除页面。 球场是
只写 —— 存储的密钥从不会带回回复到页面 —— 和空白
字段保留当前密钥。 再点击一次
(单位:千美元)清除密钥,它询问一次)再次删除引用,返回搜索到
匿名限制。 发射环境提供的钥匙或 .env 倒计时
只读,页面上说,而不是提供写作.
两条航线在同一文件下降落 所以都是 可互换:GUI中输入的密钥可见于手部编辑,反之亦然. 无法写入配置文件, 提供者会重新解析 引用到每次搜索中,所以无论哪种方式都无需重新启动.
还有一个引擎作为默认? 你自己的补丁层总是比 插件的捆绑补丁——一个条目,不需要触摸插件 :
# profile cordis.patch.yml or ~/.dsh/cordis.patch.yml
- id: web
config:
searchProvider: tavily # or deepseek-official, exa, ...
校验 哪个引擎拥有 web_search数字 :
dsh --profile <name> --dump-config | grep -A3 'id: web$'
插件配置 (所有可选;通过补丁层,在启动时读取):
| 外地 | 默认 | 页:1 |
|---|---|---|
apiKeyEnv | ANYSEARCH_API_KEY | 每个搜索都解决了信誉参考。 Live: 图形用户界面行读取已接受的值并管理同样的引用; 一个空白值名称没有, 所以两者都使用默认值 |
apiKey | —— 说 | 字元密钥; 胜过引用 |
endpoint | https://api.anysearch.com/mcp | 信封覆盖 : ANYSEARCH_ENDPOINT |
timeoutMs | 30000 | 按要求编列的预算 |
domain | - (一般情况) | 垂直键 : finance, (中文(简体) ), academic, (中文(简体) ), code,.(共计17个) |
maxResults | 8 | 工具发送无约束时默认; API 上限为 10 |
行为
- 将下限结果块映射到源 :
title, (中文(简体) ),url,片段文本;相对date:编号 :sitelinks:说明留在片段内( 无 ISO 日期 ) –publishedAt; 重复 URL 调试. - 接合错误合同:取消为
WEB_ABORTED; 运输故障, 非-2xx 状态、JSON-RPC错误和isError工具结果为WEB_PROVIDER_ERROR与 提供者的消息浮出水面 . available()- 匿名访问意味着不 键必须可用.
开发
npm install
npm run check # tsc --noEmit
npm test # build + node --test (transport runs against a local HTTP server;
# markdown fixtures come from real API payloads)
编辑后 src/运行 npm run build 并重新启动 dsh .
浏览器的半个( Y)src/client.ts → lib/client.js)是网页的经典脚本
直接评价,所以 npm run build 还运行 scripts/build-client.mjs: 类型脚本
总是标记一个 .ts 文件作为模块在此软件包中,该步骤将标记条取出
如果该文物带有模块语法,则添加并失败构建 . npm test 覆盖
客户端的一半 —— 艺术品形状, 它声称的行页, 证书写作
它能发挥.
许可证
麻省理工学院