Releases: Mr-remon219/search-boost
Release list
SearchBoost v0.2.4-beta.4 — PDF text and bounded page reads
SearchBoost 0.2.4-beta.4
Pre-release on the npm beta channel. Stable latest remains 0.2.3.
Changes since beta.3
- PR #21: extract PDF text using optional
pdfjs-dist, with Reader fallback when extraction is unavailable or fails. Refuse detected binary and undecodable responses rather than delivering raw bytes as page text. - Limit model-facing page reads to 60,000-character windows. Use
nextOffsetas the next call'soffset; cached continuation avoids repeat downloads. MCP, Pi and DSH expose the continuation metadata. - Enforce retained PDF text/page limits, preserve extraction limitations through cache reads, and observe cancellation during parser operations with teardown requests.
- Harden short binary/corrupt-tail detection, Reader content-type checks and PDF header detection.
Validation and limitations
npm run prepublishOnly: all 51 isolated test entrypoints passed, including 20 PDF/binary/window regressions.- Reviewed PR revision passed Ubuntu, Windows and macOS CI after fixes.
- PDF.js runs in-process: retained-text limits and cooperative cancellation are not hard CPU/heap isolation. Scanned documents may need OCR; conservative MIME rejection may require Reader for mislabeled text downloads.
- The standalone screening prototype from beta.3 remains disconnected from default search routing.
Install
npm install -g search-boost@0.2.4-beta.4 --prefer-onlineGlobal installation replaces the existing global package and shares existing user configuration. The beta channel is separate from stable, not a separate configuration sandbox.
PR: #21
SearchBoost v0.2.4-beta.3 — Screening prototype
SearchBoost 0.2.4-beta.3
Pre-release on the beta channel. The stable npm latest channel remains 0.2.3.
Changes since beta.2
- Adds the standalone fused + Jev screening prototype from PR #20, with hard-constraint eligibility, reading-value levels, source-policy discounts, preference matching and bounded rescue reads.
- Adds deterministic candidate snapshots, configurable scoring, optional duplicate folding/diversity, diagnostics, design documentation and offline regression/ablation coverage.
- The prototype is not connected to the default fused/adaptive runtime or public tool schemas. Installing beta.3 does not enable it in normal search.
Validation and limitations
- Full prepublication gate covers 50 isolated automated test entrypoints.
- PR CI passed on Ubuntu, Windows and macOS.
- No live/paid Jev evaluation or independent retrieval-quality benchmark was performed. Frozen-label ablations are in-sample mechanism tests, not proof of real-world superiority.
- Injected in-flight operations are not actively interrupted; cancellation/deadline status is recorded after they return and stops subsequent work.
Install
npm install -g search-boost@0.2.4-beta.3 --prefer-onlineA global install replaces the existing global package and uses the same user configuration. The beta distribution tag is separate from stable; it is not a separate user-data sandbox.
PR: #20
SearchBoost v0.2.3 — API bases, Jev retrieval & tool switches
v0.2.3 — Custom API bases, Jev retrieval and shared tool switches
Node.js requirement remains >=22.13. This release integrates PRs #12, #16, #14, and #15, in that order.
新功能与修复
- 自定义 Base URL:Tavily、Exa、Brave、AnySearch 支持可信 API 网关,保留路径前缀与原有认证方式。TUI 提供编辑、端点预览和恢复默认;CLI 提供
--base-url engine=URL/--reset-base-url engine。地址变更隔离缓存,AnySearch free 池保持匿名。 - Jev 检索 V3:支持
intent、问题绑定关键词与逐关键词继续判断,返回按阅读价值排序的原文摘录和匹配来源。每轮最多接纳 500 个候选 URL,实际规模受预算与服务结果限制。修复关键词匹配重试耗尽后仍继续搜索的问题;缺失的必要判断仍不会被当作成功。 - 共享工具开关:TUI 的 Tool switches 保存到
tools.json,支持预览、取消和全部关闭。MCP/Pi 工具列表约 300ms 刷新;DSH 保留注册但拒绝关闭工具的新调用,原生 search/fetch provider 同样受控。已经开始的调用正常完成。 - DSH 兼容性与安装:修复 Schema 注册失败,支持 Jev 的平铺/嵌套关键词数组,并使用原始 Schema 校验输入输出。npm/npx 安装固定当前包版本,补齐缺失启动器并验证安装结果。
- 跨平台修复:修复 Antigravity 符号链接 HOME 检测及升级测试的路径身份判断。CI 覆盖 Linux、Windows、macOS。
升级与兼容性说明
npm install -g search-boost@0.2.3
search-boost upgrade --sync-only -y升级后重启或重载已运行的 MCP/Pi/DSH 适配器;忽略 MCP 工具列表变更通知的客户端可能需要重新连接。用户密钥、已有开关、引擎路由与权限配置保留。自定义网关会接收搜索请求及相应 API 密钥,只应配置可信服务。
adaptive_search 保留 questions、tasks 与 cursor 分页输入。V3 的语义变化需要调用方留意:
schemaVersion: 3;retrievalSufficient表示关键词检索满足判断,不表示答案完整或事实已核实。- 旧
coverageComplete字段保留,但 V3 中始终为false,不要再把它当作继续检索的唯一条件。 - 查看
keywordProgress、pendingAssessments、warnings;exhausted不是成功,也不是不存在的证明。 - 未配置 Jev 时,宿主工具入口锁定;显式关闭不会被后续凭据变更覆盖。
- 下一页只传
cursor和可选page_size。cursor 是进程内临时状态,重启后失效;分页结束不代表穷尽搜索。
验证范围
发布检查包括 npm run prepublishOnly 和 npm run test:dsh-package,覆盖配置、安装/升级、网络策略、Jev、TUI、三个宿主适配器及 npm/npx 打包安装。整合验证还实际操作了终端 TUI、Pi SDK 热刷新、MCP stdio 动态列表及 DSH 注册器的六工具与 TypeScript/Python Schema 编译。
这些测试不等于对所有真实搜索引擎、Jev 服务或代理环境的在线质量保证,也没有使用用户真实搜索凭据进行质量校准。合并源码、发布 npm 和创建 GitHub Release 是独立步骤;发布状态以 npm registry 和 GitHub Release 为准。
English summary
Custom API base URLs and endpoint previews are available for Tavily, Exa, Brave and AnySearch. Intent-guided Jev retrieval adds bound keywords, reading-value ranking and explicit continuation states. Shared switches gate MCP, Pi and DSH tools, with live MCP/Pi list updates and a Jev credential lock. DSH schema translation, npm/npx installation and cross-platform path handling are repaired.
Migration: V3 keeps coverageComplete only as an always-false compatibility field. Inspect retrievalSufficient, keyword progress and warnings instead; none establish answer correctness or completeness. Reload existing adapters after upgrading. Live upstream quality and authenticated chat sessions on every platform are outside the automated release checks.
SearchBoost v0.2.2 — AnySearch, consensus scoring & doctor repairs
v0.2.2 发布与迁移说明 / Release notes
本文件描述 0.2.2 源码范围,不表示 npm 已发布。npm install -g search-boost@latest 取得的是 npm 已发布版本;仅合并 master 不会发布 npm。Node 最低版本保持 >=22.13。
本次变更
- AnySearch:free 匿名、api 要求 key、hybrid 优先使用配置的 key。显式禁用与旧引擎白名单继续有效;匿名与 keyed 不重复计票。错误响应不回显或保存可能包含的凭据。
- 融合计分:
scoreVersion: consensus-v2.1,保留原始一基排名与 provenance,对相关来源的额外命中折扣计入共识。详见 计分说明。这是未经过真实相关性标签校准的冷启动方案,性质测试不代表检索质量已提升。 - Jev:兼容旧
questions输入,新增任务上下文、关键词与验收目标;每轮最多三次逻辑 Jev 调用。返回经过审查的 URL、标题和描述,提供进程内 cursor 分页;预算与截止时间仍然限制执行。 - 发布审计修复:版本要求
4.2不再匹配4.20或1.4.2,而v4.2可正确匹配;发布时间戳必须合法且带时区,并转换为 UTC 日期后与时间窗口比较;清空全部缓存也清空分页结果;cursor 参数拒绝非字符串与超长值。 - doctor 修复:恢复合并时丢失的 5 个检查(
config_layout、codex_web_search_config、cursor_hook_config、antigravity_mcp_duplication、antigravity_permission_config),registry 19→24;补回 codex/antigravity 检查依赖的辅助函数。修正config_paths_writable在目录不可写时的假通过和 override 缺父目录时的假失败;layer_config_valid不再对存在但无有效layer字段的文件静默通过;doctor --category probe --json输出合法 JSON 且summary.exitCode与实际退出码一致;Nodeengines支持复合范围写法。
输出兼容性:需要留意的变化
adaptive_search 的公开输出已由诊断结构改成以下结构。旧 questions 输入仍有效,但直接消费旧输出 questions / uncovered / roundLog 的程序必须更新,不可视为输出完全向后兼容。
{
"results": [{"url": "https://example.com/doc", "title": "Documentation", "description": "Reviewed source text."}],
"totalResults": 1,
"nextCursor": null,
"expiresAt": "2026-09-22T07:00:00.000Z",
"coverageComplete": true,
"stopReason": "all_covered",
"warnings": []
}这是结构示例,并非一次真实搜索。下一页只传 cursor 和可选 page_size,不要重复传任务。cursor 只在同一服务进程中有效,默认 30 分钟过期,也可能因容量淘汰或显式清缓存失效。nextCursor: null 只表示分页结束,不代表研究完整;以 coverageComplete 和 warnings 为准。
任务的硬日期条件请放入 tasks[].time_range,或在目标 question 中明确表述;context 中的背景日期、尤其“截至某日”,不会自动变成该日发生事件的硬筛选条件。basis: published 检查发布时间,basis: event 检查事件日期,二者不互相替代。无时区时间戳或非法时间戳按未知处理;纯日期仍保留日精度。
fused_search 的分数尺度也已改变:旧 min_score 阈值应重新校准。engineRanks 明确为一基提供商排名,不是合并后的位置。分数不是事实可信度或覆盖概率。
验证范围
发布门禁沿用 npm run prepublishOnly,覆盖网络安全、配置权限、安装/迁移、MCP/Pi/DSH、融合搜索、X、Jev 与回归测试;CI 同时验证 Linux 和 Windows。新增回归会用乐观的模拟 Jev 判断验证硬条件仍能拦截错版本和非法日期,并检查缓存生命周期及发布版本元数据一致性。
这些是确定性测试,不消耗用户真实 AnySearch/Jev/API 额度;不等于所有真实上游服务、代理环境或模型判断都已端到端验证。之前的 v0.2.1 文档保留为历史记录。
English migration summary
AnySearch, correlation-aware consensus-v2.1 scoring, and batched adaptive target review are included. Legacy questions input remains supported, but adaptive output now uses results, totalResults, nextCursor, expiresAt, coverageComplete, stopReason, and warnings. Consumers of the previous diagnostic output must migrate. Recalibrate old min_score thresholds; scores are not probabilities. Cursors are process-local, expire, and are invalidated by clearing all caches. Use explicit task time ranges for hard date constraints. Timestamp comparisons use UTC and reject invalid or timezone-less clocks. Doctor also restores five checks dropped during the v0.1.6 merge (config layout, Codex web_search placement, Cursor hooks, Antigravity MCP/permissions), fixes false pass/fail verdicts for config paths and layer files, and keeps --json reports machine-readable for empty category selections. Merging source is separate from publishing npm.
SearchBoost v0.2.1 — Transport, installer and subagent repairs
SearchBoost v0.2.1
Fixes and improvements
- Repair page fetching, response cleanup, redirect handling, bounded retries and optional curl compatibility fallback.
- Repair configuration persistence, installation, migration and upgrade behavior across supported hosts.
- Restore Pi/DeepSeek Harness subagent search-tool loading and improve diagnostics.
- Improve Jev transport handling and expand regression coverage.
- Refresh English and Chinese documentation.
Important network behavior
- A failing proxy may fall back to a direct connection, exposing the machine's outbound IP to the target.
- Private-network targets are not blocked by the tool; network isolation and access controls are the deployment environment's responsibility.
- Jina fallback sends the target URL to a third party; successful direct fetching does not invoke it.
- curl is optional. Node.js >=22.13 remains required.
See docs/network-policy.md and docs/v0.2.1-delivery.md for details.
Validation
- Full npm prepublishOnly suite passed.
- Packed CLI version/help and Pi/DSH adapter imports passed.
- Dependency installation audit reported zero vulnerabilities.
- Grok plugin installation failure no longer withholds MCP/config/rule/skill setup; partial failure remains explicit with a non-zero exit status. Confirmed absent plugins are skipped during uninstall.
Notes
- Managed writes to host configuration use private (0600) file permissions; shared-UID/container configurations may need permission review.
- A live DSH host smoke test was not available on the release machine; adapter and research-contract regression tests passed.
- Independent release review and follow-up review cleared blocking findings; Linux and Windows CI passed on the final PR head.
SearchBoost v0.2.0 — Unified MCP, Pi & DeepSeek Harness
SearchBoost v0.2.0
One shared search core for MCP, Pi, and DeepSeek Harness. Published on npm as search-boost@0.2.0.
Highlights
- Unified MCP server, native Pi extension, and DeepSeek Harness bundle in one package.
- Multi-engine search with free/API/hybrid pools, ranking presets, domain filtering, and optional X community results.
- Webpage extraction with focused content, guarded local fetching, DNS pinning, and proxy-aware network policy.
- X/Twitter search pipeline and native parallel research workflows with shared searcher/summarizer roles.
- Experimental Jev adaptive search with bounded evidence-gathering loops.
- TUI-first setup, credential configuration, updates, and legacy integration migration.
- Updated compatible dependencies; npm audit reported 0 known vulnerabilities at release validation.
Install
Requires Node.js >=22.13.
npm install -g search-boost@0.2.0
search-boostMigrate from search-boost-mcp
The npm package name has changed to search-boost. Do not uninstall the old package first or force-overwrite its command.
npx --yes --package=search-boost@0.2.0 -- search-boost migrate --dry-run
npx --yes --package=search-boost@0.2.0 -- search-boost migrate -y
search-boost
# Choose Update to refresh all configured agent integrations, then restart them.migrate replaces only the global npm package and preserves agent configuration and credentials. TUI Update then refreshes existing integrations, including legacy Pi/DSH adapters.
Validation
- Complete
prepublishOnlysuite passed. - Linux and Windows CI passed on the reviewed release branch.
- Packed-package installation and MCP protocol smoke tests passed.
- Published npm registry metadata, artifact integrity, and CLI version verified.
中文摘要
统一 MCP、Pi 与 DeepSeek Harness 的搜索核心,以新包名 search-boost 发布。新增搜索池与排序配置、X 搜索管线、并行研究、实验性 Jev 自适应搜索,以及 TUI 配置和升级流程。旧 search-boost-mcp 用户请先执行上述迁移命令,再在 TUI 中选择 Update 刷新已接入的 agents。
Merged PR: #8
Full changelog: v0.1.7...v0.2.0
v0.1.6
概览
v0.1.6 是一次安装/卸载可靠性与配置布局大更新:统一 ~/.search-boost/ 目录结构,修复 Codex web_search 错位,并为 Grok / Codex / Claude / Cursor / Antigravity 提供 ownership 感知的可逆卸载。
变更规模: 33 文件,+2448 / −213 行(相对 v0.1.5)
配置目录布局
运行时数据统一到 ~/.search-boost/:
| 类型 | 新路径 |
|---|---|
| API keys | config/keys.json |
| Layer | config/layer.json |
| X auth | config/xauth.json |
| X guest cache | cache/xguest.json |
| Antigravity workspaces | state/antigravity-workspaces.json |
- 读取优先级: 环境变量 → nested 新路径 → flat
~/.search-boost-*.json→ legacy~/.dsh-* - 写入:
prepareConfigWrite()懒迁移(首次写入复制旧文件,旧副本保留) - 修复: 空的 nested
keys.json不再挡住仍有效的 flat keys 文件
安装修复
Codex
web_search = "disabled"写入config.toml顶层,不再误塞进[mcp_servers.*]- 新增
lib/codex-toml.mjs:marked 块增删;卸载时空 toml unlink
Claude
- ownership 标记的
WebSearchdeny - allow 列表合并为
mcp__search-boost__*wildcard - 新增
lib/claude-settings.mjs
Grok
- 改进 legacy permission 检测(延续 v0.1.5 幂等安装)
- Grok 一键安装(v0.1.6 后续提交):
search-boost install -t grok在grokCLI 位于 PATH 时自动执行grok plugin install <bundled grok-plugin> --trust,随后写入config.toml、rule、skill 与可选[permission],无需再手动分两步 - 新增
--skip-grok-plugin:仅写 config/rule/skill,跳过插件 subprocess - PATH 无
grok时警告并继续 config 安装;插件失败不中断 - 卸载时尽力
grok plugin uninstall(本地路径安装通过grok plugin list --json解析 slug id) - 新增
lib/grok-plugin.mjs
Cursor 系列
- IDE 与 CLI 共用
~/.cursor/surface -t cursor,cursor-cli合并为一次安装(IDE + CLI prompt 拼接)- ownership 标记、幂等 uninstall、
lib/cursor-install-state.mjs
Native search
lib/native-search.mjs扩展:各 agent 禁用/恢复策略更清晰
卸载(全 Agent)
| Agent | 改进要点 |
|---|---|
| Grok | 仅 user scope;行级 permission 剥离;空 config unlink;容忍缺失 END marker;插件 uninstall 尽力而为 |
| Codex | 只删 SEARCH_BOOST marked 块;applyCodexNativeToml(false) 恢复 native;空 toml unlink |
| Claude | 只删 owned WebSearch deny;保留用户 pre-existing deny |
| Cursor | ownership marker;path-safe hooks;writeJsonOrUnlink;roundtrip 测试 |
| Antigravity | stripSearchBoostPermissions;空 AGENTS/GEMINI unlink;双路径 MCP/settings 清理 |
Doctor 与测试
- 新增/增强检查:Claude orphan deny、partial install、permission config;Grok permission blocks;config paths writable 等(registry 共 19 项)
scripts/test-install.mjs大幅扩展(各 agent install/uninstall roundtrip;含 grok-plugin 集成测试)- 新增
scripts/cursor-roundtrip-fixture.mjs、scripts/test-codex-uninstall-integration.mjs - Windows ESM import 与 subprocess 测试加固
新增模块
lib/codex-toml.mjslib/claude-settings.mjslib/cursor-install-state.mjslib/grok-plugin.mjslib/doctor/checks/codex.mjs、cursor.mjs、antigravity.mjs(check 实现;部分在 merge 后未注册进 registry,后续可补)
升级说明
npm install -g search-boost-mcp@0.1.6
search-boost install -t grok -y --auto-allow # Grok:一条命令(grok CLI 在 PATH 时含插件)
search-boost install -y # 或按 agent 重装
search-boost doctor- 配置无需手动迁移,首次写入自动 lazy-migrate
- 若 Codex 曾有 nested
web_searchbug:search-boost install -t codex -y可修正 - 卸载更安全:会尽量恢复 native 搜索与用户原有 Claude deny
- Grok 仅需 config 时:
search-boost install -t grok -y --skip-grok-plugin
完整提交范围(v0.1.5 → v0.1.6)
- 核心:
f38736f(v0.1.5) →724753c(v0.1.6 release) - 含 v0.1.6 核心功能、五路 uninstall 合并、keys 空 nested 修复、Windows 测试修复
- 同 tag 后续: Grok 一键安装(
lib/grok-plugin.mjs)、README 文档整合(版本号仍为 0.1.6)
v0.1.5 — Grok idempotent install
Fix duplicate [permission] breaking grok startup; skip permission when always-approve; doctor grok check
v0.1.4
What's new
- Single-engine api layer — api tier uses whichever of tavily/brave/exa you configure or enable; no need for all three keys.
- Per-engine routing — optional
enabledEnginesor per-engineenabled: falsein~/.search-boost-keys.json. - Partial-key messaging — doctor, status, keys wizard, and
fused_searchwarn when fewer than three keyed engines are active and recommend configuring all three.
Install
npm install -g search-boost-mcp@0.1.4
search-boost setupv0.1.3 — doctor, vendored engines, multi-agent MCP
search-boost-mcp v0.1.3
Multi-engine web search MCP server for Cursor, Codex, Claude Code, Grok Build, and Antigravity.
Install
npm install -g search-boost-mcp@0.1.3
search-boost setupRequires Node ≥ 22.13.
Highlights
search-boost doctor— offline health checks with pass/warn/fail,--json,--strict, and CI-friendly exit codes- Self-contained search engines — Bing, DuckDuckGo, Yahoo, Exa-free vendored in
lib/search/(no external dsh dependency) - Six MCP tools —
fused_search,fetch_page,deep_research,x_search,search_layer,search_stats - Multi-agent installer — one CLI wires Cursor, Codex, Claude, Grok, and Antigravity
- CI & packaging — GitHub Actions workflow,
package-lock.json, npm publish ready