ax 是面向 AI 智能体的命令行工具,用于抓取网页、发现页面结构并提取结构化数据,替代 curl → 解析 → 正则的循环流程。
安装方式:curl -fsSL https://ax.yusuke.run/install | sh;或 brew install yusukebe/tap/ax;或 npm install -g ax-cli。
主要模式:抓取模式 ax <url> 返回含 status、ok、ms、headers、body 的 JSON;解析模式用 --outline 展示重复 DOM 结构、--locate '文本' 定位选择器、--md 渲染为 markdown,HTML 默认本地缓存约 2 分钟,--fresh 强制重取、--no-cache 禁用缓存;提取模式用 --row '字段=选择器, 字段=选择器@属性'(默认取 textContent,@attr 取属性)、--table 自动识别表格、--where '表达式' 做安全过滤、--json 输出 JSON 数组,--limit 控制行数。
--budget <tokens> 限制输出规模,结果附带行数与截断说明。
适用场景:智能体抓取页面并提取结构化数据、先用 --outline 低成本了解结构再定向提取、批量行提取、文档转 markdown、同一 API 端点反复监控、提取后过滤Transform。可与 deep-agents-core、react-grab、research 等配合,后者用于并行多站点抓取。
限制:目标站点需客户端 JavaScript 渲染时不适用(改用 Playwright 或 Puppeteer);不支持实时浏览器自动化或多步交互;无法通过请求头解决认证的内容应改用直接 API。使用前应检查 robots.txt 并控制请求频率。
ax 为开源项目,采用 Bun 与 linkedom 构建,具体许可证信息暂未在资料中明确。