yusukebe/ax

The AI-era curl

解决的问题

ax 替代了编码代理通常执行的低效的网页数据获取、理解与提取循环。无需依赖 curl 管道到脆弱的解析脚本,或将大量原始 HTML 写入上下文窗口,ax 提供单一命令即可获取页面、发现其结构,并以针对 LLM 令牌限制优化的格式提取结构化数据。

工作原理

该工具作为本地、确定性的二进制文件运行,集成了多种功能:

  • 获取:为每个请求提供完整报告(状态、头信息、重定向),确保代理在响应体为空时不会陷入猜测。
  • 发现:使用 --outline 等标志显示重复结构,使用 --locate 在不转储整个 HTML 页面的情况下定位特定选择器。
  • 提取:可提取多字段行(--row)、将 HTML 表格转换为带键的行(--table),并使用安全表达式语言(--where)过滤结果。
  • 令牌管理:实现令牌预算(--budget)和结果上限,防止上下文窗口溢出,并为代理提供精确偏移量,以便无重叠地获取剩余数据。

适用对象

主要面向需要与网页交互以获取信息、阅读文档或抓取结构化数据,但无需为每个任务编写和调试自定义 Python 脚本的 AI 编码代理。

特色亮点

  • 代理优化输出:专为 LLM 上下文窗口设计,结构化且令牌成本低廉。
  • 集成工作流:将获取、结构发现与提取整合到一个工具中,无需多个二进制文件或脚本。
  • 本地且确定性:本地运行,无需 API 密钥或云端 Markdown 转换服务。
  • 分页支持:使用 --json-envelope--offset 支持大规模数据集的机器可读续传。
  • Markdown 转换:通过 --md 标志可直接将页面转换为可读的 Markdown 格式。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目