Midscene.js 初尝试

介绍

Midscene.js 是一个开源的 AI 操作助手,适用于 Web、移动端、自动化和测试。

特性

通过自然语言描述目标和步骤,自动生成 UI 自动化脚本

  • 描述你的目标和步骤,Midscene 会为你规划和操作用户界面。
  • 支持 JavaScript SDK 和 YAML 两种脚本格式

跨平台支持

  • 网页自动化:集成 Puppeteer、Playwright 或桥接模式控制桌面浏览器
  • Android 自动化:通过 adb 控制本地设备
  • iOS 自动化:通过 WebDriverAgent 控制本地设备

辅助工具

  • 提供可视化测试报告和 Playground 环境,便于调试和回放
  • 支持脚本缓存,提升执行效率
  • 开放 MCP 协议,允许其他 MCP Client 直接调用(支持 Web 和 Android)

三大 API 类型

  • 交互 API:操作用户界面元素
  • 数据提取 API:从 UI 和 DOM 中提取数据
  • 实用 API:提供 aiAssert() 断言、aiLocate() 定位、aiWaitFor() 等待等辅助函数

模型选择

模型最好使用支持视觉的模型,如: gemini, claude, UI-TARS 等模型。本文的案例会使用 Doubao-1.5-UI-TARS 进行介绍。

Doubao-1.5-UI-TARS 是字节跳动开源的一款原生面向图形界面交互(GUI)的 Agent 模型。通过感知、推理和行动等类人的能力,与 GUI 进行无缝交互,非常适合 Midscene.js 使用。

使用

接下来会演示如何使用 Midscene.js,本篇文章只介绍 MCP 进行操作的方法,其他的方法感兴趣的读者可以参考官方文档。

操作环境使用 zed 连接 Midscene mcp,mcp配置如下:

json 复制代码
    "mcp-midscene": {
      "enabled": true,
      "command": "cmd",
      "args": ["/c", "pnpx", "@midscene/mcp"],
      "env": {
        "MIDSCENE_MODEL_NAME": "doubao-seed-1-6-vision-250815",
        "OPENAI_API_KEY": "",
        "MCP_SERVER_REQUEST_TIMEOUT": "800000",
        "MIDSCENE_USE_DOUBAO_VISION": "1",
        "OPENAI_BASE_URL": "https://ark.cn-beijing.volces.com/api/v3"
      }
    },

配置完 mcp server 后,在浏览器扩展中打开桥接模式,设置允许连接,然后在编辑器输入 使用 midscene打开 https://jasminides.com/,生成网站的Playwright 自动化测试用例,测试以下功能:文章的打开关闭,tag页的功能,搜索页的功能,rss页的功能,将生成的用例保存到ut.ts文件中 过了一会任务执行完,可以看到代码顺利生成。

评价

通过对 midscene 的简单试用,个人评价是未来可期,由于受限于当前基础模型的限制,功能还有许多问题,但总体上还是非常有潜力的。

参考

相关推荐
PhotonixBay5 分钟前
共聚焦显微镜的结构组成与应用
人工智能·算法·机器学习
大傻^11 分钟前
Spring AI Alibaba Function Calling:外部工具集成与业务函数注册
java·人工智能·后端·spring·springai·springaialibaba
SuniaWang12 分钟前
《Spring AI + 大模型全栈实战》学习手册系列 · 专题四:《Ollama 模型管理与调优:让 AI 模型在低配服务器上流畅运行》
人工智能·学习·spring
anscos_yumi22 分钟前
Altair OptiStruct:重构结构研发逻辑,引领工业仿真与优化新纪元
人工智能·科技·软件工程
市象33 分钟前
小红书盯上“AI版郑州帮”
人工智能·网络安全·传媒
人工智能AI技术42 分钟前
DeskClaw Windows上线|C#开发AI桌面助手,轻量内核源码解析
人工智能·c#
璞华Purvar43 分钟前
园区运营管理系统是什么?如何实现园区全业务精细化数字化管理?(2026年)
大数据·人工智能
zzh940771 小时前
2026年实测:Genmini 3.0使用AI联网搜索功能全攻略
人工智能
田里的水稻1 小时前
EI_openclaw_UI交互
人工智能·ui·机器人
>ᴗoಣ1 小时前
Exploring Persona Sentiment Sensitivity in Personalized Dialogue Generation
人工智能