
文章来源|ByteDance Web Infra 团队
Midscene 自 2024 年开源发布以来,已经在 Github 斩获 11k star 、Trending 榜第二名等成绩,并在互联网、金融、政企、汽车等大量应用场景下完成落地。
本月,我们正式宣布 Midscene v1.0 发布!本文将为你介绍:
案例回顾:Midscene 在 PC、Android、iOS 等场景的任务能力;
社区案例:社区开发者基于 Midscene 与任意界面集成的特性,扩展了机械臂 + 视觉模型 + 语音模型等模块,完成车机测试;
1.0 版本的模型路线:拥抱纯视觉;
1.0 版本的特性优化:报告优化、MCP 架构、跨端增强、API 变更等。
案例回顾
社区案例:视觉模型 + 机械臂
有社区开发者成功基于 Midscene 与任意界面集成的特性,扩展了机械臂 + 视觉模型 + 语音模型等模块,运用于车机大屏测试场景中。
- 3.0x
- 2.5x
- 2.0x
- 1.5x
- 1.25x
- 1.0x
- 0.75x
- 0.5x
移动端案例:外卖下单
打开美团,帮我下单一杯 manner 超大杯冰美式咖啡,要加浓少冰喔,到结算页面让我确认。
- 3.0x
- 2.5x
- 2.0x
- 1.5x
- 1.25x
- 1.0x
- 0.75x
- 0.5x
在我们的 Midscene 官网上,还有更多实战案例:
iOS 自动化 - Twitter 自动点赞 @midscene_ai 首条推文;
Android 自动化 - 懂车帝查看小米 SU7 参数;
Android 自动化 - Booking 预订圣诞酒店;
MCP 集成 - Midscene MCP 操作界面发布 prepatch 版本。
1.0 版本的模型路线
从 V1.0 开始,Midscene 全面转向视觉理解方案,提供更稳定可靠的 UI 自动化能力。
视觉模型有以下特点:
效果稳定 :业界领先的视觉模型(如 Doubao Seed 1.6、Qwen3-VL 等)表现足够稳定,已经可以满足大多数业务需求;
UI 操作规划 :视觉模型通常具备较强的 UI 操作规划能力,能够完成不少复杂的任务流程;
适用于任意系统 :自动化框架不再依赖 UI 渲染的技术栈,无论是 Android、iOS、桌面应用,还是浏览器中的
<canvas>,只要能获取截图,Midscene 即可完成交互操作;易于编写 :抛弃各类 selector 和 DOM 之后,开发者与模型的“磨合”会变得更简单,不熟悉渲染技术的新人也能很快上手;
token 量显著下降 :在去除 DOM 提取之后,视觉方案的 token 使用量可以减少 80%,成本更低,且本地运行速度也变得更快
有开源模型解决方案 :开源模型表现渐佳,开发者开始有机会进行私有化部署模型,如 Qwen3-VL 提供的 8B、30B 等版本在不少项目中都有着不错的效果。
详情请阅读我们更新版的模型策略[1]。
🚀 多模型组合,为复杂任务带来更好效果
除了默认的交互场景,Midscene 还定义了 Planning(规划)和 Insight(洞察)两种意图,开发者可以按需为它们启用独立的模型。例如,用 GPT 模型做规划,同时使用默认的 Doubao 模型做元素定位。
多模型组合让开发者可以按需提升复杂需求的处理能力。
🚀 运行时架构优化
针对 Midscene 的运行时表现,我们进行了以下优化:
减少对设备信息接口的调用,在确保安全的情况下复用部分上下文信息,提升运行时性能,让大多数的时间消耗集中在模型端;
优化 Web 及移动端环境下的 Action Space 组合,向模型开放更合理、更清晰的工具集。
🚀 回放报告优化
回放报告是 Midscene 开发者非常依赖的一个特性,它能有效提升脚本的调试效率。
在 v1.0 中,我们更新了回放报告:
参数视图:标记出交互参数的位置信息,合并截图信息,快速识别模型的规划结果;
样式调整:支持以深色模式展示报告,更美观;
Token 消耗的展示:支持按模型汇总 Token 消耗量,分析不同场景的成本情况。
🚀 MCP 架构重构
我们重新定义了 Midscene MCP 服务的定位。Midscene MCP 的职责是围绕着视觉驱动的 UI 操作展开,将 iOS / Android / Web 设备 Action Space 中的每个 Action 操作暴露为 MCP 工具,也就是提供各类“原子操作”。
通过这种形式,开发者可以更专注于构建自己的高阶 Agent,而无需关心底层 UI 操作的实现细节,并且时刻获得满意的成功率。
详情请阅读 MCP 文档[2]。
🚀 移动端能力增强
iOS 改进
新增 WebDriverAgent 5.x-7.x 全版本兼容;
新增 WebDriver Clear API 支持,解决动态输入框问题;
提升设备兼容性。
Android 改进
新增截图轮询回退机制,提升远程设备稳定性;
新增屏幕方向自动适配(displayId 截图);
新增 YAML 脚本
runAdbShell支持。
跨平台
在 Agent 实例上暴露系统操作接口,包括 Home、Back、RecentApp 等。
🚧 API 变更
方法重命名(向后兼容):
改名
aiAction()→aiAct()(旧方法保留,有弃用警告);改名
logScreenshot()→recordToReport()(旧方法保留,有弃用警告)。
环境变量重命名(向后兼容):
改名
OPENAI_API_KEY→MODEL_API_KEY(新变量优先,旧变量作为备选);改名
OPENAI_BASE_URL→MODEL_BASE_URL(新变量优先,旧变量作为备选)。
⬆️ 升级到最新版
升级项目中的依赖,例如:
npm install @midscene/web@latest --save-dev;npm install @midscene/android@latest --save-dev;npm install @midscene/ios@latest --save-dev。
如果使用全局安装的命令行版本:npm i -g @midscene/cli。
了解更多
Midscene.js https://midscenejs.com
1.0 版本 Changelog https://midscenejs.com/zh/changelog.html
参考资料
[1] 模型策略: https://midscenejs.com/zh/model-strategy
[2] MCP 文档: https://midscenejs.com/zh/mcp







评论