Skip to content

[聚合搜索增强 2/3] 接入 CLI、HTTP daemon 与 MCP 参数 #97

Description

@ufatfat

任务背景

核心聚合能力完成后,需要让 CLI、HTTP daemon 和 MCP search 工具都能传入同一套聚合参数,避免不同入口行为不一致。

实现要求

  • CLI search 支持 aggregationMode、perEngineLimit、ranking、engineWeights、dedupe 参数。
  • HTTP daemon POST /search 支持相同聚合参数。
  • MCP search 工具 schema 支持相同聚合参数。
  • 非法参数沿用现有错误风格。
  • 保持旧调用方式兼容。

文件或模块范围

  • src/cli/runCli.ts
  • src/adapters/http/localDaemon.ts
  • src/tools/setupTools.ts
  • src/test/test-cli-search.ts
  • 相关 daemon 或 MCP 测试文件

不包含的内容

  • 不修改核心聚合算法。
  • 不新增搜索引擎。

技术建议

  • 参数解析后传给核心 search service。
  • engineWeights CLI 可使用 engine=weight 的重复参数形式。

测试要求

  • 覆盖 CLI 参数解析。
  • 覆盖 HTTP 请求体参数解析。
  • 覆盖 MCP schema 能接受新增参数。

验收标准

  • 三个入口都能触发同一套核心聚合行为。
  • 旧命令和旧 HTTP 请求继续可用。

依赖任务

依赖 #96

是否可并行

否。依赖核心类型和行为。

优先级

P0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions