Show HN: agent-asearch – 面向AI代理的Go CLI,集成18个数据源,基于会话的搜索工具
agent-asearch 是一个多源搜索命令行工具,专为LLM代理设计。它同时搜索网络、Hacker News、Reddit、GitHub、YouTube、Twitter等18个来源,并通过基于会话的工作流减少token消耗。用户先获取元数据,再分页读取所需页面。支持无API密钥的搜索引擎,以及Tavily、Exa、Brave等付费API。单个Go二进制文件,易于部署。
agent-asearch 是一个强大的多源搜索命令行工具,专为LLM代理(如Codex、Claude Code)设计。它允许用户通过一条命令同时搜索18个不同的来源,包括网络(通过DDG、Wikipedia、Bing)、Hacker News、Reddit、GitHub、YouTube、Twitter/X,以及Tavily、Exa、Brave等专业API。
该工具的核心优势在于其会话式工作流。执行搜索后,工具首先返回一个会话ID和紧凑的元数据(包括结果总数和后续命令),而不会立即加载全部内容,从而节省LLM上下文的token。之后,代理可以按需分页读取结果、按来源过滤,或直接获取原始数据用于管道处理。
安装非常简单:只需执行 npm i -g agent-asearch,即可自动下载适合平台的Go二进制文件。零配置即可开始使用,例如 asearch open --query "claude code plugins" --source hn,reddit 会搜索Hacker News和Reddit,无需任何API密钥。对于更强大的搜索,可以配置API密钥,使用 asearch config set tavily "tvly-..." 等命令。
agent-asearch 的架构高度可扩展,每个数据源作为独立的Go后端实现。目前已有18个来源,其中5个(网络、HN、Reddit、GitHub、Jina)无需API密钥即可使用。工具还支持shell补全、自更新、以及针对不同代理CLI的预设提示。
安全性方面,搜索查询不会写入审计日志,所有会话和结果本地存储在~/.asearch/目录,API密钥仅通过环境变量接受。限制包括:无API密钥时网络搜索会提示获取密钥;Reddit和YouTube可能需要浏览器cookie;Twitter功能依赖第三方CLI且API暂不可用。
总体而言,agent-asearch 为AI代理提供了一种高效、token经济的搜索方案,特别适合需要多源信息检索的开发者和AI工作流。