README 的“IDE Diagnostics”与“MCP Server”章节明确列出这些客户端和 Logcat 能力。
ARTEMIS:用自然语言驱动真实 Android 设备,AndroidWorld 达 99%+
一个让测试团队用自然语言操作真实 Android 设备的工具,兼有 MCP 诊断和 99%+ AndroidWorld 成绩。
🧭 决策指南
为什么现在热: 无法从材料判断
适合,如果你
-
你要让 Antigravity、Claude Code 或 Windsurf 驱动真实 Android 设备并收集 Logcat。
-
你要执行 AndroidWorld 这类包含100+多步任务的 Android 自动化。README 的“Benchmarks: AndroidWorld”写明覆盖100+ multi-step tasks,Pro 支持100+ step workflows。
-
你需要把 Android 操作接入 pytest 或 CI/CD,并获得 Pydantic 结构化输出。README 的“Usage Modes”章节列出 Python SDK、pytest、CI/CD 和 Pydantic structured outputs。
不适合,如果你
-
你的目标平台是 iOS,因为 README 的 iOS Platform Expansion 仍是 Roadmap 待办项。README 的“Roadmap”将 iOS 平台扩展标记为未完成。
-
你在 Flash 模式中要求任务计划、检查点验证、最终报告或 ADB shell。README 的“Flash vs. Pro”明确列出 Flash 的这些限制。
-
你不能接受项目当前仅有6位贡献者且没有 Release 的维护与发布状态。项目元数据显示贡献者6人、版本发布0个;最新版本为 No releases。
前置条件
- 需要连接已开启 USB Debugging 的 Android 设备或模拟器。
- macOS/Linux 可执行 README 原文中的 ./start.sh;Windows 使用 .\start.bat。
- 启动流程会检测或安装 ADB、scrcpy、FFmpeg 和 Python(uv)。
- MCP 自动安装命令依赖 uv,例如 uv run artemis mcp --install all。
- 设备首个任务会安装 Artemis Accessibility Helper;也可改用 UIAutomator2 后端。
第一步命令(README 原文)
./start.sh
要注意
-
若使用 UiAutomation,需注意 Accessibility Helper 可能被抑制,除非启用 FLAG_DONT_SUPPRESS_ACCESSIBILITY_SERVICES。README 的“What ARTEMIS Installs on Your Phone”章节说明 UiAutomation 的抑制行为。
-
Flash 默认 agent.flash.max_turns 为0,表示不限制回合数;同时没有最终报告。README 的“Flash Profile”章节同时说明 0 = unlimited 和无 final report。
-
Pro 每步约15–40秒,但包含 Safety Net、Checker 和 execution incident 恢复机制。README 的“Pro Profile”章节给出15–40秒每步及这些组件。
替代方案
-
UIAutomator2:当 Accessibility Helper 不适用或失败时,README 支持在 .env 中设置 ARTEMIS_HIERARCHY_BACKEND=uiautomator。What ARTEMIS Installs on Your Phone
材料未说明
- README 未说明支持的 Android 版本范围。
- README 未说明所需大语言模型、模型提供商或 API 费用。
- README 未提供 AndroidWorld 99%+结果的运行配置、硬件和复现实验细节。
- README 未说明并发设备数量、吞吐量和资源消耗。
- README 未说明 6位贡献者对应的具体维护分工和响应承诺。
💡 深度解析
6
不适合
我需要在 AndroidWorld 的 20 多个应用和 100 多个多步骤任务上复现实验,并比较自然语言设备操作的完成率;ARTEMIS 的 99%+ 声明能直接作为我的实验结论吗?
适合读者: 评估移动端智能体能力、以 AndroidWorld 的 20 多个应用和 100 多个多步骤任务为基准的研究人员
不适合直接作为你的实验结论,因为 99%+ 是 README 中的项目声明,而不是在你的模型、设备和环境下完成的可复现实验结果。
- “Benchmarks: AndroidWorld (SOTA 99%+)”声称覆盖 20 多个应用和 100 多个多步骤任务,并达到 99%+ 完成率。
- “Developer CLI”支持运行 AndroidWorld benchmarks,可作为复现实验入口,而不是直接替代实验设计。
- 项目洞察明确指出,基准结果取决于模型、设备、应用版本和测试环境;AndroidWorld 成绩不能直接代表企业应用或真实网络条件下的成功率。
- README 没有在摘要中给出模型版本、设备规格、随机种子、失败样本、运行次数或统计置信区间。
ARTEMIS 可以作为被测系统和基线候选,但你的论文或报告仍需重新定义环境、记录参数并独立计算结果。
- Benchmarks: AndroidWorld (SOTA 99%):20+ apps、100+ multi-step tasks、99%+ completion rate
- Usage Modes:Developer CLI supports AndroidWorld benchmarks
- 项目洞察 usage_limitations:结果依赖模型、应用版本、网络状态、设备性能和系统权限
- 项目洞察:AndroidWorld 成绩不能直接代表企业应用或真实网络场景
uv run artemis run
适合
我使用 Claude Code 编写 Android 应用,手上有一台开启 USB Debugging 的真实设备;我希望 AI 助手直接执行跨应用操作、复现缺陷,并把 Logcat、截图和执行轨迹返回给我,ARTEMIS 适合吗?
适合读者: 使用 Claude Code、需要在真实 Android 设备上复现缺陷并同时收集 Logcat 和截图的 Android 应用开发者
适合,因为它正是为 AI 助手驱动真实 Android 设备并输出诊断信息设计的。
- README 的 “Key Highlights” 明确支持 Claude Code 通过 MCP 驱动测试设备,并收集 Logcat 与截图。
- “Quick Start” 要求连接开启 USB Debugging 的 Android 设备或模拟器,启动脚本会处理 ADB、scrcpy、FFmpeg 和 Python 依赖。
- “Usage Modes” 提供 MCP Server、Developer CLI 和 Web Visual Test Console,可查看动作轨迹、实时遥测和执行回放。
- README 的演示覆盖 Google Maps 到 YouTube 的跨应用流程,符合缺陷复现类任务。
需要注意,README 没有保证每种应用、网络状态或弹窗都能稳定复现;模型选择、应用版本和设备状态对结果的影响也未量化。
- Key Highlights:MCP integration lets Antigravity, Claude Code, and Windsurf drive test devices and collect Logcat output and screenshots
- Quick Start:Ensure an Android device (with USB Debugging enabled) or emulator is connected
- Usage Modes:MCP Server、Developer CLI、Web Visual Test Console
- Live Demo:Google Maps 后切换到 YouTube 的跨应用任务
./start.sh
视情况
我们使用 Antigravity 和 Codex 接入 AI IDE,希望模型能读取 Android 测试截图与 Logcat;设备端数据必须尽量留在本机,ARTEMIS 的隐私边界是否足够明确?
适合读者: 在 Antigravity、Cursor、Claude Code、Codex 或 Windsurf 中集成 Android 设备的研发团队,要求测试日志和截图的外发边界明确
视情况:设备辅助服务本身的本地行为描述较清楚,但整体数据是否发送给外部模型取决于部署和模型配置,不能仅凭 README 判定满足隐私要求。
- “What ARTEMIS Installs on Your Phone”明确说 Accessibility Helper 只在手机本地监听,不向其他地方发送数据。
- “Key Highlights”同时说明 MCP 可让 Antigravity、Claude Code 和 Windsurf 获取 Logcat 与截图;这意味着 AI IDE 链路会接触测试观测数据。
- Quick Start 会自动配置全局 MCP 和 AI agent rules,支持 Antigravity、Cursor、Claude Code、Codex、Windsurf 等客户端,扩大了接入面。
- 项目洞察指出截图、日志和任务历史可能包含账号、个人数据或业务机密,而 README 没有定义脱敏、保留周期、模型供应商或传输加密策略。
因此,适合专用测试设备和非敏感数据;对受监管或含生产账号的数据,现有说明不足以直接批准上线。
- What ARTEMIS Installs on Your Phone:It listens only on the phone itself and sends nothing elsewhere
- Key Highlights:MCP clients collect Logcat output and screenshots
- Quick Start:Mount Global MCP Server & AI Agent Rules,支持 Antigravity、Cursor、Claude Code、Codex、Windsurf 等
- 项目洞察 common_pitfalls:截图、日志和任务历史可能包含敏感数据
uv run artemis mcp --install all
视情况
我正在维护 pytest/CI 流水线,测试范围接近 AndroidWorld 的 100 多个多步骤任务;我需要检查点、失败恢复、结构化结果和最终验证,应该使用 ARTEMIS 的 Pro 模式吗?
适合读者: 维护 pytest 或 CI/CD 流水线、需要覆盖 AndroidWorld 中 100 多个多步骤任务的移动端 QA 自动化工程师
视情况:如果优先考虑长流程的恢复与审计,Pro 更匹配;如果 CI 主要追求低延迟,Pro 的执行时间可能成为限制。
- README 的 “Pro Exploration” 说明 Pro 会在每个动作前检查目标,并把被阻塞的动作交回 Operator 恢复,适合长时间探索和稳定性测试。
- “Python SDK”支持接入 pytest 或其他自动化框架,并提供强类型 Pydantic 输出和断言支持。
- “AndroidWorld Results”声称在 100 多个多步骤任务上达到 99%+ 完成率,但这是项目声明,不能直接等同于你的应用回归通过率。
- Flash 通常每步 3–5 秒,而 Pro 的实际延迟、并发能力和 CI 资源消耗,README 摘要没有给出完整数据。
因此,Pro 适合需要检查点和诊断链路的任务;纯粹追求快速执行的短测试不一定值得承担其额外开销。
- Pro Exploration:Checks targets before individual actions and returns blocked actions to the Operator for recovery
- Python SDK:integrates as a standard Python library into pytest or CI/CD pipelines
- AndroidWorld Results:99%+ task completion on 100+ multi-step tasks
- Flash Execution:typically 3–5s per step
uv run artemis ui
视情况
我的 Android 应用大量使用 Compose、Flutter 和自定义 Canvas 界面,控件经常没有稳定的资源 ID;我需要自然语言执行端到端测试,ARTEMIS 的定位机制能覆盖这种界面吗?
适合读者: 维护使用 Jetpack Compose、Flutter 或自定义 Canvas 控件的 Android QA 工程师,无法依赖稳定的资源 ID
视情况:ARTEMIS 有针对自定义界面的多级定位回退,但 README 没有承诺所有 Compose、Flutter 或 Canvas 控件都能稳定识别。
- “Multimodal Targeting”说明系统优先使用元素索引,并在需要时回退到坐标和视觉定位,适合资源 ID 不稳定的页面。
- “How ARTEMIS is Architected”写明定位结合 accessibility hierarchy、OCR 和视觉模型,覆盖 custom Canvas、Compose 和 Flutter interface。
- 设备侧 Accessibility Helper 读取屏幕布局;若失败会回退到 UIAutomator2,并在任务时间线和最终报告中说明回退。
- 但项目洞察指出,自定义渲染、WebView、远程桌面或缺少可访问性语义时,元素定位可能失效并转向坐标或视觉定位,稳定性会下降。
因此,若页面仍暴露可访问性语义,适配机会较好;完全依赖像素的控件仍存在未量化风险。
- Multimodal Targeting:Uses element indices when available, with coordinate and visual locating fallbacks
- How ARTEMIS is Architected:supports custom Canvas, Compose, and Flutter interfaces
- What ARTEMIS Installs on Your Phone:If the helper fails mid-task, ARTEMIS falls back to UIAutomator2
- 项目洞察 common_pitfalls:自定义渲染、Canvas、WebView 或缺少可访问性语义时稳定性会降低
uv run artemis doctor
适合
我在 Windows PowerShell 上使用 Android 模拟器,并希望一次安装 ADB、scrcpy、FFmpeg、Python 依赖以及 AI IDE 的 MCP 配置;ARTEMIS 的快速启动适合这种环境吗?
适合读者: 在 Windows PowerShell 上使用 Android 模拟器、希望为 AI IDE 自动安装 MCP 配置的 Android 测试工程师
适合,但前提是模拟器已连接且 Windows PowerShell 能正常访问所需工具链。
- “Quick Start”明确支持 Android 设备或模拟器,并要求设备开启 USB Debugging;一键脚本会自动安装或检测 ADB、scrcpy、FFmpeg 和 Python(uv)依赖。
- README 的安装说明同时给出 Windows PowerShell 的
start.bat路径,并会提示为检测到的 AI IDE 安装全局 MCP 配置和测试规则。 uv run artemis mcp --install all可为包括 Codex 在内的所有支持客户端安装 MCP 配置,适合需要统一接入的环境。- 不过,README 摘要没有展示 Windows PowerShell 章节的完整故障排除,也没有说明模拟器镜像、Hyper-V 或 USB 驱动的兼容范围。
因此,作为首次初始化路径是合适的;若企业 Windows 环境限制脚本、网络或软件安装权限,自动化程度可能下降。
- Quick Start:Ensure an Android device ... or emulator is connected
- Quick Start:Install System Toolchains,包括 ADB、scrcpy、FFmpeg 和 Python (`uv`)
- One-Click Auto Install:`. start.bat`(README 原文为 ` .\start.bat `)
- One-Click Auto Install:uv run artemis mcp --install all
.\start.bat
✨ 核心亮点
-
AndroidWorld 100+任务完成率达99%+
-
MCP 接入 Antigravity、Claude Code
-
Flash 模式通常每步仅需3–5秒
-
Pro 模式支持100+步长流程
🔧 工程化
-
用自然语言跨应用操作 Android 测试流程和日常任务。
-
MCP 让 Antigravity、Claude Code 读取 Logcat 与截图。
-
Python SDK 可接入 pytest 与 CI/CD,并输出 Pydantic 结构化结果。
⚠️ 风险
-
Flash 没有任务计划、安全网、检查点验证或最终报告。
-
首次设备任务会安装 Accessibility Helper,并增加约3秒延迟。
-
项目仅有6位贡献者、0个版本发布,暂无正式 Release。
-
README 仅展示 Android,iOS 仍在 Roadmap 中。
👥 适合谁?
-
需要用 Antigravity 或 Claude Code 驱动真实 Android 设备的测试团队。
-
已有 pytest、Python 或 CI/CD 测试基础设施的开发者。
-
需要 AndroidWorld 100+多步任务或稳定性测试的团队。