Browser automation for AI agents and humans
2.7k
Stars
156
Forks
37
Watchers
30
Issues
面向 AI Agent 和人类的浏览器自动化工具。
Vibium 为 AI Agent 提供了一套浏览器操控能力。安装 vibium 技能后,你的 Agent 便可通过简单的 CLI 命令实现页面导航、表单填写、按钮点击和截屏等操作。Vibium 同时支持作为 MCP 服务器使用,并提供 JS/TS、Python 和 Java 客户端库。
新用户? 请查看 JavaScript、Python 或 Java 入门指南,5 分钟内即可完成快速上手。
npm install -g vibium
npx skills add https://github.com/VibiumDev/vibium --skill vibe-check
第一条命令用于安装 Vibium 和 vibium 二进制文件,并下载 Chrome。第二条命令将该技能安装到 {project}/.agents/skills/vibium。
skills是 open agent skills CLI —— 这是一个用于 AI Agent 技能的包管理器。无需全局安装,使用npx即可直接运行。
# 映射与交互 (核心工作流)
vibium go https://var.parts # 导航至 URL
vibium map # 映射交互元素 → @e1, @e2, ...
vibium click @e1 # 使用引用点击
vibium diff map # 查看变更内容
# 查找元素 (语义化 — 无需 CSS)
vibium find text "Sign In" # 按可见文本查找
vibium find label "Email" # 按表单标签查找
vibium find placeholder "Search" # 按占位符查找
vibium find role button # 按 ARIA 角色查找
# 读取与截取
vibium text # 获取页面所有文本
vibium screenshot -o page.png # 截屏
vibium screenshot --annotate -o a.png # 带元素标签的截屏
vibium pdf -o page.pdf # 将页面保存为 PDF
vibium eval "document.title" # 运行 JavaScript
# 等待操作
vibium wait ".modal" # 等待元素出现
vibium wait url "/dashboard" # 等待 URL 变更
vibium wait text "Success" # 等待页面出现特定文本
# 录制会话
vibium record start # 开始录制(包含截图)
vibium record stop # 停止并保存至 record.zip
# 表单与输入
vibium fill @e2 "hello@example.com" # 使用引用填充输入框
vibium select @e3 "US" # 选择下拉菜单选项
vibium check @e4 # 勾选复选框
vibium press Enter # 按下按键
完整命令列表:SKILL.md
替代方案:MCP 服务器 (用于结构化工具调用而非 CLI):
claude mcp add vibium -- npx -y vibium mcp # Claude Code
gemini mcp add vibium npx -y vibium mcp # Gemini CLI
查看 MCP 设置指南 获取更多选项及故障排除信息。
npm install vibium # JavaScript/TypeScript
pip install vibium # Python
Java (Gradle):
implementation 'com.vibium:vibium:26.3.18'
Java (Maven):
<dependency>
<groupId>com.vibium</groupId>
<artifactId>vibium</artifactId>
<version>26.3.18</version>
</dependency>
安装过程会自动下载 Vibium 二进制文件和 Chrome,无需手动配置浏览器。
异步 API:
import { browser } from 'vibium'
const bro = await browser.start()
const vibe = await bro.page()
await vibe.go('https://example.com')
const png = await vibe.screenshot()
await fs.writeFile('screenshot.png', png)
const link = await vibe.find('a')
await link.click()
await bro.stop()
同步 API:
const { browser } = require('vibium/sync')
const fs = require('fs')
const bro = browser.start()
const vibe = bro.page()
vibe.go('https://example.com')
const png = vibe.screenshot()
fs.writeFileSync('screenshot.png', png)
const link = vibe.find('a')
link.click()
bro.stop()
# 异步
from vibium.async_api import browser
# 同步 (默认)
from vibium import browser
异步 API:
import asyncio
from vibium.async_api import browser
async def main():
bro = await browser.start()
vibe = await bro.page()
await vibe.go('https://example.com')
png = await vibe.screenshot()
with open('screenshot.png', 'wb') as f:
f.write(png)
link = await vibe.find('a')
await link.click()
await bro.stop()
asyncio.run(main())
Vibium 是一个专为 AI 智能体和开发者设计的浏览器自动化工具,旨在通过标准化的接口让 AI 能够自主操作网页。它通过单一的轻量级二进制程序,赋予 AI 导航页面、填写表单、点击按钮及截图等完整浏览能力,从而解决了 AI 智能体在网页交互上的自动化需求。
支持多种接入方式,包括 CLI 命令行工具、MCP 服务端以及针对 JavaScript、Python 和 Java 的原生客户端库。
提供基于 WebDriver BiDi 标准的底层驱动,确保了跨平台与跨协议的兼容性与规范性。
具备零配置特性,安装后自动下载浏览器,无需复杂的环境搭建即可开箱即用。
架构轻量,仅需一个约 10MB 的二进制文件,且没有任何繁琐的运行时依赖。
该项目非常适合需要构建具备网页浏览能力的 AI 智能体开发者,以及希望实现自动化网页测试、数据采集或任务流程自动化的技术团队。