今天给大家介绍一款来自字节跳动的开源AI自动化工具——Midscene。这是一个AI驱动、视觉导向的UI自动化框架,支持Web、iOS、Android等全平台,可以用自然语言编写自动化脚本。
项目介绍
Midscene是由字节跳动Web Infra团队开源的UI自动化工具,主打AI能力和视觉驱动的自动化执行。项目在GitHub上已获得超过12000颗星标,并且提供了与OpenClaw集成的Midscene Skills,可以用来控制各种平台。
特色功能
1. 自然语言编写自动化
用户只需用自然语言描述目标和步骤,Midscene就会自动规划和操作用户界面。无需关心具体的UI元素定位,一切由AI驱动。
2. 全平台支持
Web自动化:支持Puppeteer、Playwright或Bridge模式控制浏览器
iOS自动化:使用JavaScript SDK配合WebDriverAgent控制iOS设备和模拟器
Android自动化:使用JavaScript SDK配合adb控制本地Android设备
任意界面:提供通用JavaScript SDK,可控制自定义界面
3. 三类API设计
交互API(Interaction API):与用户界面交互
数据提取API(Data Extraction API):从界面和DOM中提取数据
工具API(Utility API):辅助功能如aiAssert()、aiLocate()、aiWaitFor()等
4. MCP服务
Midscene提供MCP服务,将原子化的Agent操作暴露为MCP工具,上层Agent可以用自然语言检查和操作UI。
5. 缓存机制提升效率
支持脚本回放缓存,可以更快地获取执行结果。
6. 完善的调试体验
提供可视化回放报告文件、内置Playground和Chrome扩展,大大简化调试过程。
7. Chrome扩展
提供浏览器扩展,可以零代码立即体验,无需编写任何代码即可开始自动化。
安装步骤
Web自动化安装(Puppeteer示例):
npm install @midscene/web puppeteer
编写脚本:
const { Midscene } = require(‘@midscene/web’);
const puppeteer = require(‘puppeteer’);
(async () => {
const browser = await puppeteer.launch({ headless: false });
const page = await browser.newPage();
const midscene = new Midscene({ page });
await midscene.goto(‘https://example.com’);
await midscene aiAction(‘点击登录按钮’);
await midscene aiQuery(‘获取用户名输入框的位置’);
await browser.close();
})();
Chrome扩展体验:
直接在Chrome应用商店搜索Midscene安装,无需编写代码即可开始浏览器自动化。
使用方法
1. 编写自动化脚本
使用JavaScript SDK或YAML编写自动化脚本,用自然语言描述操作步骤。
2. 执行脚本
运行脚本,Midscene会自动分析界面并执行相应操作。
3. 调试和优化
使用可视化回放报告和Playground工具调试脚本。
4. 与MCP集成
如需在更复杂的Agent系统中使用,可以通过MCP协议调用Midscene的能力。
适用场景
自动化测试:Web应用、iOS应用、Android应用的UI测试
RPA机器人:业务流程自动化、网页数据采集
AI Agent工具:作为Agent的感知和操作模块
爬虫替代:用自然语言指令实现复杂网页操作
开源协议
Midscene采用MIT开源协议,完全免费开源。
GitHub仓库:https://github.com/web-infra-dev/midscene
官网:https://midscenejs.com/
服务支持:如有兴趣不会搭建,可以联系微信:WRYD6166,开源项目搭建10-50元。








暂无评论内容