ARTEMIS 

2个月前发布 92 00

谷歌推出开源 Android 自动化项目 ARTEMIS,能够让 AI 助手、测试套件直接对安卓真机 / 模拟器进行拟人化操作,依靠自然语言指令完成跨应用测试与日常手机任务,在 AndroidWorld 多步任务基准评测中拿到 99% 以上的任务完成率。

所在地:
美国
收录时间:
2026-09-12
ARTEMIS ARTEMIS 

ARTEMIS 是谷歌最新开源的一个 Android 自动化项目,它让 AI 助手和测试套件能够像人类一样直接操作真实的 Android 设备。通过结合多模态感知、MCP(Model Context Protocol)协议以及灵活的执行模式,ARTEMIS 在 Google Research 的 AndroidWorld 基准评测中取得了 99%+ 的任务完成率,确立了其在移动端自动化领域的 SOTA 地位。

ARTEMIS 

核心亮点

  1. 像人一样操作真机
    • 支持跨 App 的自然语言指令执行,无论是复杂的测试流程还是日常任务(如“打开设置查看电量”),都能直接在真机或模拟器上完成。
    • 多模态定位:优先使用元素索引(Accessibility Tree),针对自绘界面(如 Canvas, Compose, Flutter)提供坐标和视觉定位兜底,确保在各种 UI 框架下都能精准点击。
  2. 双模式执行引擎
    • Flash 模式:极速响应,单步约 3–5 秒。采用观察-执行循环和历史摘要压缩,适合常规确定性操作。
    • Pro 模式:深度推理,单步约 15–40 秒。引入 Planner(规划者)、Operator(执行者)和 Checker(校验者)多智能体协作,支持执行前安全网校验、长程复杂业务流及书面报告生成。
  3. IDE 原生集成 (MCP)
    • 通过 MCP 协议,ARTEMIS 可以直接嵌入 Antigravity, Claude Code, Windsurf, Codex, Cursor 等 AI 编程环境。
    • 开发者可以在 IDE 对话框中直接下达指令(如“编译 APK 并安装到手机验证登录”),AI 将自动驱动真机、收集 Logcat 和截图并反馈结果。
  4. 业界领先的基准表现
    • 在涵盖 20+ 款应用与 100+ 项多步任务的 AndroidWorld 评测中,ARTEMIS 实现了 99%+ 的任务完成率,远超现有方案。

快速上手

1. 环境准备

确保电脑已连接开启 USB 调试的 Android 实体机或模拟器。

2. 一键启动

ARTEMIS 提供了自动化脚本,会自动安装 ADB, scrcpy, FFmpeg, Python (uv) 等依赖,并配置 MCP 服务。

macOS / Linux:

git clone https://github.com/google/artemis.git && cd artemis
./start.sh

Windows (PowerShell):

git clone https://github.com/google/artemis.git
cd artemis
.\start.bat

启动后,浏览器会自动打开 Web 控制台 (http://localhost:8000),提供设备投屏、任务演练和状态回放功能。

3. IDE 集成 (以 Claude Code 为例)

运行以下命令自动安装 MCP 服务和测试行为准则:

uv run artemis mcp --install claude

随后即可在 Claude Code 中直接对话:

“请帮我把刚刚修改的代码编译成 APK 并安装到手机上,打开登录页面输入测试账号,验证登录后是否有异常弹窗,并把最终页面截图回传。”

ARTEMIS 会在手机上安装什么?

为了读取屏幕布局,ARTEMIS 会安装一个名为 Artemis Accessibility Helper 的小型无障碍服务。

  • 隐私安全:该服务仅监听本机回环地址,不向外发送任何数据。
  • 非侵入性:不占用 UiAutomation 连接,避免与其他自动化工具冲突。
  • 可管理:可通过 uv run artemis helper install/uninstall 手动管理。若 Helper 失效,系统会自动回退到 UIAutomator2。

运行模式对比:Flash vs Pro

特性Flash 模式 (--profile flash)Pro 模式 (--profile pro)
速度极快 (3-5s/步)较慢 (15-40s/步)
架构单智能体响应式循环多智能体图编排 (Planner/Operator/Checker)
适用场景常规确定性 UI 操作、快速验证长程复杂业务流、稳定性测试、需生成报告
安全性无执行前校验动作下发前经过 Safety Net 校验 (XML+像素)
历史管理视觉摘要压缩,上下文无限完整笔记、历史召回、视频分析
ADB 支持❌ 不支持✅ 支持诊断与命令执行

Python SDK 集成

对于需要集成到 CI/CD 流水线的用户,ARTEMIS 提供了零运行时依赖的薄客户端:

import asyncio
from artemis_client import ArtemisClient

async def main():
    client = ArtemisClient(
        "http://artemis-host:8000",
        device_serial="emulator-5554",
        default_profile="flash",
    )
    result = await client.run(
        "打开系统设置,进入『电池』页面,验证是否正常显示电量百分比。",
    )
    assert result.succeeded, f"测试失败: {result.error}"
    print(f"✅ 测试通过!Trace ID: {result.trace_id}")

if __name__ == "__main__":
    asyncio.run(main())

相关导航