桌面端
Midscene 通过原生键盘和鼠标控制,在 Windows、macOS 和 Linux 上自动化桌面应用。它支持鼠标与键盘输入、屏幕截图和多显示器。
它适用于测试 Electron、Qt 和原生应用,也可以自动化跨应用工作流。
本指南介绍平台配置、模型配置、Playground 体验,以及 @midscene/computer 的 JavaScript SDK 集成。
效果展示
提示词(macOS): 打开 Safari,发布一条介绍 Midscene 支持 AutoGLM 的推文,并使用“下载”文件夹中的 AutoGLM 视频。
查看完整报告,或浏览更多 Midscene 案例。
快速开始
准备桌面环境
Node.js
需要 Node.js 18.19.0 或更高版本。
平台特定依赖
macOS:需要辅助功能权限才能控制键盘和鼠标。首次运行脚本时,macOS 会提示你授予访问权限。前往 系统设置 > 隐私与安全性 > 辅助功能,为运行脚本的应用程序(如 Terminal、iTerm2、VS Code、WebStorm 或其他 IDE)启用权限。更多详情请参阅 nut.js macOS 设置。
Windows:操作普通程序无需额外配置。但 Windows 会按权限级别隔离输入(UIPI):未提权的进程无法向以管理员身份运行(已提权)的窗口发送鼠标或键盘输入,输入会被静默丢弃——光标仍会移动到正确位置,但点击和按键不生效。优先尝试让目标程序不要以管理员权限运行;如果目标程序必须保持提权状态,再同样以管理员身份运行启动 Midscene 的终端或 Node.js,让两个进程处于相同的权限级别。详见 Windows:点击对某些程序不生效。
Linux:需要安装 ImageMagick 用于截图功能。
无头 Linux(CI 环境):要在无头 Linux 服务器(如 GitHub Actions)上运行桌面自动化,需安装 Xvfb 及其依赖,然后启用 headless 模式:
Xvfb 会创建一个虚拟显示器,使鼠标、键盘和截图操作在没有物理显示器的情况下正常工作。详见 API 参考。
启动 Playground
Playground 是验证连接的最快方式。无需编写代码,即可体验 aiAct、aiQuery 和 aiAssert 等核心能力。它与 @midscene/computer 共享相同的核心,因此在 Playground 中通过的流程,在脚本中运行会保持一致。
- 启动 Playground CLI:
- 点击 Playground 窗口中的齿轮按钮,粘贴你的 API Key 配置。如果还没有模型配置,请参考支持的模型与配置。
使用 JavaScript SDK
当 Playground 运行正常后,就可以切换到可复用的 JavaScript 脚本。
配置模型
通过环境变量设置模型。支持的模型和可复制的配置示例请参考支持的模型与配置。

