AgentOS 网页浏览器扩展
AgentOS代理的浏览器自动化能力 - 导航页面,刮取内容,点击元素,并抓取截图.
特征
- 导航: 转到任意 URL并获取页面内容
- 拼图: 使用 CSS 选择器提取内容
- 点击: 有页面元素的互动
- 类型: 填入表格和输入字段
- 截图: 抓取可视快照
- 页面快照: 获取智能交互的无障碍树
安装
npm install @framers/agentos-ext-web-browser
快速启动
import { AgentOS } from '@framers/agentos';
const agentos = await AgentOS.create({
extensionManifest: {
packs: [
{
package: '@framers/agentos-ext-web-browser',
options: {
headless: true,
timeout: 30000,
viewport: { width: 1920, height: 1080 },
},
},
],
},
});
工具
浏览器( n)
导航到 URL并检索页面内容 .
const result = await gmi.executeTool('browser_navigate', {
url: 'https://example.com',
waitFor: 'networkidle2',
returnText: true
});
// Returns: { url, status, title, text, loadTime }
浏览器( s)
使用 CSS 选择器提取内容 .
const result = await gmi.executeTool('browser_scrape', {
selector: 'article h2',
limit: 10
});
// Returns: { selector, count, elements: [{ tag, text, html, attributes }] }
浏览器 单击
点击元素.
const result = await gmi.executeTool('browser_click', {
selector: 'button.submit',
waitForNavigation: true
});
// Returns: { success, element, newUrl }
浏览器类型
将文本输入输入字段.
const result = await gmi.executeTool('browser_type', {
selector: 'input[name="search"]',
text: 'AgentOS documentation',
clear: true
});
// Returns: { success, element, text }
浏览器( s)
抓取截图.
const result = await gmi.executeTool('browser_screenshot', {
fullPage: true,
format: 'png'
});
// Returns: { data (base64), format, width, height, size }
浏览器( s)
获取无障碍树进行智能互动.
const result = await gmi.executeTool('browser_snapshot', {});
// Returns: { url, title, elements, links, forms, interactable }
配置
| 选项 | 类型 | 默认 | 说明 |
|---|---|---|---|
headless | 布尔 | true | 在无头模式下运行浏览器 |
timeout | 编号 | 30000 | 默认超时( 毫秒) |
userAgent | 字符串 | - 说吧 | 自定义用户代理 |
viewport.width | 编号 | 1920 | 视图口宽度 |
viewport.height | 编号 | 1080 | 视图端口高度 |
executablePath | 字符串 | 自动 | Chrome 可执行文件的路径 |
使用大小写
网络研究代理
// Search and scrape information
await gmi.executeTool('browser_navigate', { url: 'https://google.com' });
await gmi.executeTool('browser_type', { selector: 'input[name="q"]', text: 'AI agents 2024' });
await gmi.executeTool('browser_click', { selector: 'input[type="submit"]', waitForNavigation: true });
const results = await gmi.executeTool('browser_scrape', { selector: '.g h3' });
窗体自动化
await gmi.executeTool('browser_navigate', { url: 'https://signup.example.com' });
await gmi.executeTool('browser_type', { selector: '#email', text: '[email protected]' });
await gmi.executeTool('browser_type', { selector: '#password', text: 'securepass123' });
await gmi.executeTool('browser_click', { selector: 'button[type="submit"]' });
视觉验证
await gmi.executeTool('browser_navigate', { url: 'https://myapp.com' });
const screenshot = await gmi.executeTool('browser_screenshot', { fullPage: true });
// Send screenshot to vision model for analysis
依赖关系
这个扩展需要Chrome/Chrimium安装在系统中. 用这个 puppeteer-core 它不捆绑浏览器.
许可证
Apache-2.0 框架.dev