关于 AIR SDK
AIR SDK 通过 TypeScript SDK 及相关工具,为浏览器 Agent 提供网站能力信息、选择器和结构化提取。它可封装现有浏览器自动化页面,支持能力发现和选择器回退,无需修改原有代码。
主要功能
- 01发现网站可自动化的能力
- 02提供选择器和执行计划
- 03解析备用选择器
- 04提取结构化数据与内容
- 05报告结果以改进共享能力信息
- 06集成 Playwright、Puppeteer 和 Browser Use
适用场景
- 01访问网站前了解可执行操作
- 02借助选择器回退自动化网站流程
- 03从 URL 和文件提取结构化数据
- 04为研究 Agent 梳理网站能力
MCP 相关
可选的 AIR MCP 服务向 MCP 客户端提供内容提取、能力发现、执行计划和结果报告工具。SDK 还提供安装命令,可为支持的 Agent 配置 MCP 服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| url | string | 是 | 要提取数据的 URL(例如,"https://example.com/page") |
| force | boolean | 否 | 绕过缓存以进行全新提取(默认值:false,有缓存时使用缓存) |
详细介绍
AIR SDK
Agent 的集体智慧。别再让你的 Agent 猜测如何使用网络,让它们知道该怎么做。思考;蜂巢思维。让我们共同打造开放的 Agent 互联网。
安装 · 快速入门 · 为什么 · Agent 技能 · 文档
每次浏览器 Agent 询问大模型该点击什么,都会浪费 token 和时间。AIR SDK 用确定性取代猜测。这是一个早期研究预览版。
成本最多降低 7,000 倍,速度比前沿模型快 280 倍。只需调用一个函数,无需更改代码。
基准测试
在 8 个主要领域进行测量,共调用 API 40 次,未启用缓存。LLM 基线按 Frontier Model 计价(每百万 Token 输入/输出分别为 $15/$75)。AIR SDK 按 Scale 套餐计价($149/月,包含 250K 次执行)。
| 场景 | LLM DOM 推理(Frontier Model) | AIR SDK(宏路径) | 节省 |
|---|---|---|---|
| 1 次浏览器操作 | ~$0.24,约 4s,约 10K 个 Token(检查 DOM 并执行操作需往返调用 LLM 2 次) | $0.0006,178ms,0 个 Token | 成本降低 400 倍,速度提升 22 倍 |
| 10 次浏览器操作 | 最高约 $4,约 50s,约 175K 个 Token(随着上下文增长,往返调用 LLM 25 次) | $0.0006,178ms,0 个 Token | 成本最高降低 7,000 倍,速度提升 280 倍 |
工作流越复杂,节省越多。LLM 成本会不断叠加——每次操作都会增加对话上下文,使之后每次往返调用都更加昂贵。无论工作流包含多少步骤,AIR 的宏路径始终只需调用 API 一次。
方法与原始数据
LLM 基线: Agent 检查页面 DOM,判断要与哪些元素交互,并生成工具调用。按 Frontier Model 定价(每百万输入 Token $15,每百万输出 Token $75)。
- 1 次操作: 每次往返调用约 4,000 个输入 Token + 800 个输出 Token,往返调用 2 次 = 约 9,600 个 Token,约 $0.24,推理耗时约 4s。
- 10 次操作: 上下文随每次操作增长(对话历史不断累积)。平均每次操作约 6,000 个输入 Token + 1,000 个输出 Token,往返调用 2.5 次 = 总计调用 LLM 25 次,约 175,000 个 Token,约 $4.13,推理耗时约 50s。
- Sonnet 4 对比: 每个 Token 的成本低 5 倍——1 次操作:约 $0.05,10 次操作:约 $0.83。与 AIR 的 Scale 套餐相比,成本仍高出 80 至 1,400 倍。
AIR SDK 宏路径: 通过 API 返回预先验证过的 CSS 选择器。Agent 直接执行——无需检查 DOM,也无需 LLM 推理。成本 = 套餐价格 / 包含的执行次数。
API 原始延迟(测量 40 次,未启用缓存):
- browse_capabilities:中位数 180ms,最短 148ms,p95 为 421ms
- execute_capability:中位数 178ms,最短 146ms,p95 为 333ms
- 总计:中位数 354ms,最短 304ms,p95 为 1010ms
各套餐每次操作的成本:
| 套餐 | 价格 | 包含次数 | 实际成本 |
|---|---|---|---|
| Free | $0 | 1,000/月 | $0 |
| Pro | $49/月 | 25,000/月 | $0.0020 |
| Scale | $149/月 | 250,000/月 | $0.0006 |
发现的能力: 每个领域平均 16 个(范围:3–39)
上次运行:2026-03-20 | 自行运行基准测试:npx tsx benchmark/run.ts
前置条件
- Node.js >= 18
- 以下任一项:Playwright、Puppeteer 或 Browser Use(可选的对等依赖)
安装
npm install @arcede/air-sdk
npx @arcede/air-sdk init # saves key to ~/.config/air/credentials.json
Agent Skill(推荐用于 AI 编码 Agent):
npx @arcede/air-sdk install-skill # auto-configures Claude Desktop, Claude Code, Cursor, Windsurf, OpenClaw
包含免费套餐。无需信用卡。让网络更智能,给仓库点个 Star 并分享 ⭐
轻量替代方案
不需要完整 SDK?我们为常见用例发布了独立软件包:
| 软件包 | 安装 | 用例 |
|---|---|---|
@arcede/air-mcp | npx @arcede/air-mcp | 仅 MCP 服务——无需安装完整 SDK,即可将 AIR 工具添加到 Claude Code、Cursor 或 Windsurf |
@arcede/air-cli | npx @arcede/air-cli | 终端 CLI——从命令行提取数据并查询能力 |
@arcede/extract | npm i @arcede/extract | 仅用于 Extract API 的类型化 TypeScript 客户端 |
@arcede/capabilities | npm i @arcede/capabilities | 仅用于 Capability API 的类型化 TypeScript 客户端 |
快速开始
包装现有的 Playwright 页面即可,其他内容无需更改。
import { chromium } from 'playwright';
import { withAIR } from '@arcede/air-sdk/playwright';
const browser = await chromium.launch();
const page = await browser.newPage();
const smartPage = withAIR(page, { apiKey: process.env.AIR_API_KEY });
// Your existing code — now with site intelligence
await smartPage.goto('https://example.com');
await smartPage.fill('#search', 'flights to tokyo');
await smartPage.click('.search-btn');
// Know what's possible on any site before writing automation
const capabilities = await smartPage.air.listCapabilities('example.com');
也适用于 Puppeteer 和 Browser Use:
// Puppeteer
import { withAIR } from '@arcede/air-sdk/puppeteer';
const page = withAIR(await browser.newPage(), { apiKey: process.env.AIR_API_KEY });
// Browser Use
import { AIRPlugin } from '@arcede/air-sdk/browser-use';
const agent = Agent({ plugins: [new AIRPlugin({ apiKey: process.env.AIR_API_KEY })] });
为什么
浏览器自动化很脆弱。选择器会失效,网站会变化。你的 Agent 直到进入页面后才知道有哪些操作可用。
AIR SDK 为你的 Agent 提供三项能力:
| 内容 | 方式 |
|---|---|
| 网站情报 | 在 Agent 导航到任何网站之前,就了解可以执行哪些操作——搜索、购买、登录、浏览。 |
| 弹性选择器 | 选择器失效时,SDK 会自动解析备用选项,让你的自动化不会中断。 |
| 持续学习 | 平台会随着时间推移变得更智能,从而提升整个网络的可靠性和覆盖范围。 |
工作原理: 使用 withAIR() 包装页面。SDK 会观察操作、解析选择器,并预加载网站功能。你的代码无需更改——运行效果只会更好。
隐私优先: 不会发送输入值、Cookie 和个人身份信息(PII)。查看隐私文档 →
凭据管理
API 密钥存储在 ~/.config/air/credentials.json 中,权限为 0600(仅所有者可读写)。
npx @arcede/air-sdk init # Save your key (opens dashboard)
npx @arcede/air-sdk whoami # Show current key, source, and agent status
npx @arcede/air-sdk logout # Remove key from all locations
密钥解析顺序:AIR_API_KEY 环境变量 → ~/.config/air/credentials.json → 当前目录中的 .env。
Agent 技能
只需一条命令,即可为你的编码 Agent 提供网站情报:
npx @arcede/air-sdk install-skill
此命令会自动检测 Claude Desktop、Claude Code、Cursor、Windsurf 和 OpenClaw,写入 MCP 服务配置并注入 API 密钥。它会全局安装 @arcede/air-sdk,让 Agent 快速启动(约 2 秒,而使用 npx 时约需 60 秒),并将二进制文件的绝对路径写入每个配置,以避免 npx 版本缓存问题。重启 Agent 后,它便会立即获得新工具。
手动设置(Claude Desktop、Claude Code、Cursor、Windsurf、OpenClaw)
需要全局安装:
npm install -g @arcede/air-sdk。如果未全局安装,请将"command": "air-sdk"替换为"command": "npx",并将"args": ["--mcp"]替换为"args": ["-y", "@arcede/air-sdk", "--mcp"]。
Claude Desktop — 添加到 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"air-sdk": {
"command": "air-sdk",
"args": ["--mcp"],
"env": { "AIR_API_KEY": "air_xxx" }
}
}
}
Claude Code:
claude mcp add air-sdk -e AIR_API_KEY=your_key_here -- air-sdk --mcp
Cursor — 添加到 ~/.cursor/mcp.json:
{
"mcpServers": {
"air-sdk": {
"command": "air-sdk",
"args": ["--mcp"],
"env": { "AIR_API_KEY": "air_xxx" }
}
}
}
Windsurf — 添加到 ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"air-sdk": {
"command": "air-sdk",
"args": ["--mcp"],
"env": { "AIR_API_KEY": "air_xxx" }
}
}
}
OpenClaw — 添加到 ~/.openclaw/openclaw.json:
{
"mcpServers": {
"air-sdk": {
"command": "air-sdk",
"args": ["--mcp"],
"env": { "AIR_API_KEY": "air_xxx" }
}
}
}
可用工具:
| 工具 | 说明 |
|---|---|
extract_url | 从任何 URL 提取结构化数据——JSON-LD、RSS/Atom 源、JSON API、SPA。仅含元数据的结果不消耗积分。 |
browse_capabilities | 发现网站上可以自动执行哪些操作。返回置信度分数、层级、选择器和通用模式。 |
execute_capability | 获取结构化执行计划,其中包含 CSS 选择器、备用方案和模式匹配指导。 |
report_outcome | 报告执行结果,可选择提供 browserObservations,以提升集体智能。 |
extract_content | 从本地文件或远程文件 URL 中提取文本和结构化章节,支持 PDF、DOCX、PPTX、XLSX、CSV、TXT、MD、HTML 和 EML。 |
OpenAI 技能
AIR SDK 也可作为 OpenAI 托管式 shell 技能,供 gpt-5.4 和 gpt-5.4-mini 使用:
# Package and upload
cd air-sdk/openai-skill
zip -r /tmp/air-sdk-skill.zip .
curl -X POST 'https://api.openai.com/v1/skills' \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-F 'files=@/tmp/air-sdk-skill.zip'
然后在 Responses API 中使用:
{
"model": "gpt-5.4-mini",
"tools": [{
"type": "shell",
"environment": {
"type": "container_auto",
"skills": [{ "type": "skill_reference", "skill_id": "<your_skill_id>" }],
"network_policy": {
"type": "allowlist",
"allowed_domains": ["agentinternetruntime.com", "api.agentinternetruntime.com"],
"domain_secrets": [
{ "domain": "api.agentinternetruntime.com", "name": "AIR_API_KEY", "value": "<key>" },
{ "domain": "api.agentinternetruntime.com", "name": "Authorization", "value": "Bearer <key>" }
]
}
}
}]
}
需要将 api.agentinternetruntime.com 添加到你的组织网络允许列表中。
配置
withAIR(page, {
apiKey: process.env.AIR_API_KEY, // Required
cacheEnabled: true, // Local capability cache (default: true)
cacheTTLMs: 1_800_000, // Cache TTL in ms (default: 30 min)
debug: false, // Log debug info (default: false)
});
机器支付协议
AIR SDK 支持 x402 微支付,让你的 Agent 无需预先注册即可为高级网站访问权限付费:
const smartPage = withAIR(page, {
apiKey: process.env.AIR_API_KEY,
mpp: {
enabled: true,
paymentMethod: 'stripe_spt',
credential: 'spt_...',
maxPerRequest: 0.50,
maxPerSession: 5.00,
autoApprove: true,
},
});
示例
请参阅 examples/agents/,了解可运行的 Agent 示例:
- 研究 Agent — 通过具备能力感知的导航进行多源研究
- 价格比较 — 使用高弹性选择器监控多个网站的价格
- 能力探索器 — 发现并映射不同领域的能力
- 网站监控器 — 使用高弹性选择器跟踪网站变化
贡献
请参阅 CONTRIBUTING.md。欢迎提交 PR。
链接
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。