对外形态:computer_* 工具、本地/RDP 两种后端
30 秒导读: 前面几章讲的是 computer-use 的「内功」——主循环、视觉定位、模型、设备执行。这一章讲外功:这些能力怎么被打包成一个能用的产品面。核心就两件事:(1) 一套
computer_*工具定义,同时被 MCP server 和命令行复用;(2) 调用方只要传不传host,同一套工具背后就在本地桌面和 RDP 远程 Windows 两种后端之间切换。
本章聚焦装配与形态边界。真正的循环 / 定位 / 模型 / 设备执行,分别见 01-agent-loop、02-vision-grounding、03-model-family-adapters、04-device-and-action-space。
1. 这是什么(零基础也能懂)
一句话定义: 这是 Midscene 把「用 AI 操作一整台电脑」的能力,对外封装成工具的那一层。
它解决的问 题是:内核已经能截图、能定位、能点击了,但外部世界(一个 AI agent、一个终端用户)怎么调用它?
Midscene 的答案是把每个能力做成一个工具(tool),名字统一带 computer_ 前缀:
| 工具 | 干什么 |
|---|---|
computer_connect | 连上一台电脑桌面(本地或远程),回传第一帧截图 |
computer_disconnect | 断开、释放资源 |
computer_list_displays | 列出可用的显示器 |
computer_tap / computer_type / … | 由「动作空间」自动生成的操作工具(见 04) |
这套工具有两个出口,但定义只有一份:
- MCP 出口:工具名保持
computer_connect这样的全名,供支持 MCP(Model Context Protocol,AI 与外部工具的对接协议)的 agent 直接调用。 - CLI 出口:同一份定义,把
computer_前缀剥掉,变成midscene-computer connect这样的子命令,供人在终端里跑。
一句话直觉: 把它想成一个「电脑遥控器」的按钮面板。面板上的按钮(工具)是同一批;你可以通过程序(MCP)去按,也可以在终端(CLI)里按;而遥控器背后连的那台电脑,可以是你面前这台(local),也可以是机房里一台 Windows(RDP)。
用起来什么样: 命令行里的一次连接大致长这样。
# 连本地主显示器,然后点一下某处
midscene-computer connect
midscene-computer tap --prompt "登录按钮"
# 连一台远程 Windows(给了 host,就切到 RDP 模式)
midscene-computer connect --host 10.0.0.5 --username alice
本节不出现底层细节。记住一句话就够:一份工具定义,两个出口(MCP/CLI),两种后端(本地/RDP)。