Google ARTEMIS: Android automation bằng lệnh tự nhiên — đánh giá và hướng dẫn

Nó hoạt động thế nào

ARTEMIS chạy trên máy tính (macOS/Linux/Windows), nói chuyện với điện thoại qua ADB. Hai chế độ thực thi:

  • Flash profile: vòng lặp observe-and-act nhanh, ~3–5 giây/bước, không có kế hoạch bài. Phù hợp tác vụ UI thông thường, lặp lại.
  • Pro profile: workflow đa agent (~15–40s/bước): Planner viết kế hoạch Markdown, Operator thực thi từng bước qua lớp “Safety Net” kiểm tra trước mỗi action, Checker xác minh checkpoint và báo cáo cuối cùng. Phù hợp test dài 100+ bước, [Loop:continuous], hoặc cần chẩn đoán ADB/video.

Xác định phần tử UI bằng accessibility hierarchy + OCR + visual model fallback cho canvas/Compose/Flutter. Lịch sử phiên được nén (screenshot cũ gộp thành visual summary) nên vòng lặp không bị tràn context.

Cài đặt và chạy

Cần Python 3.12+ và một điện thoại Android bật USB Debugging (hoặc emulator):

git clone https://github.com/google/artemis.git && cd artemis
./start.sh            # macOS/Linux (Windows: .\start.bat)

start.sh tự cài ADB, scrcpy, FFmpeg, dependencies qua uv, rồi mở http://localhost:8000 — web console có screen mirroring trực tiếp, prompt sandbox, live agent stream và execution replay. Trước khi chạy, copy .env.example → .env và điền ít nhất một key: GEMINI_API_KEY, OPENAI_API_KEY, ANTHROPIC_API_KEY, OPENROUTER hoặc XAI.

Số lệnh quen thuộc:

uv run artemis run "Mở Settings, vào Battery, báo mức pin" --profile flash
uv run artemis status / restart / stop    # quản lý server
uv run artemis mcp --install all          # mount MCP + rules vào mọi IDE
uv run artemis helper status              # xem Accessibility Helper trên máy

MCP: gắn điện thoại vào Claude Code

Đây là phần đáng thử nhất. Sau uv run artemis mcp --install all, MCP server expose 5 tool (mobile_run_task, mobile_manage_task, mobile_get_device_state, mobile_inspect_trace, mobile_diagnose). Từ đó trong IDE bạn prompt kiểu: “Build APK mới nhất, cài vào thiết bị, mở login bằng test account, kiểm tra popup lạ, trả về screenshots”. Task chạy nền detached, khi xong ARTEMIS đẩy notifier qua desktop toast / AgentAPI wakeup / webhook — agent theo dõi status.json rồi tiếp tục. File mcp_server/rules.md (Mobile Testing Mindset) được cài kèm để giữ agent không “tưởng tượng” UI: nó phải explore thật trước khi viết test.

ARTEMIS công bố đạt 99%+ task completion trên AndroidWorld benchmark của Google Research (>100 tác vụ đa bước, 20+ app). Con số này là tự công bố từ chính dự án — ấn tượng nhưng nên thử thực tế trước khi tin tuyệt đối, kết quả phụ thuộc mạnh vào model đằng sau.

Những điểm cần cân nhắc

  • Privacy: mọi frame màn hình và nội dung UI được gửi lên LLM API (Gemini/Anthropic/OpenAI/…). Đừng dùng trên điện thoại chứa dữ liệu nhạy cảm, hoặc cân nhắc model local/OpenRouter tùy chính sách.
  • Accessibility Helper: task đầu tiên cài một service nhỏ “Artemis test helper” lên máy để đọc layout. Máy cá nhân có thể tắt bằng ARTEMIS_HELPER_AUTO_INSTALL=false trong .env (fallback UIAutomator2), xóa sạch bằng helper uninstall.
  • Có ADB shell trong Pro — test agent có quyền shell trên thiết bị, chỉ dùng trên thiết bị test.
  • Chi phí token: Pro đi kèm nhiều model call/bước hơn Flash; task dài vẫn tốn tiền API.
  • Chỉ hỗ trợ Android (iOS trên roadmap), chưa có package chính thức trên PyPI — nhưng có packages/artemis-client dạng Python SDK để nhúng vào pytest/CI.

Khi nào nên dùng

Nếu bạn cần test UI tự động trên thiết bị thật (reproduce bug, smoke test release, kiểm tra flow đăng nhập/checkout) mà chán viết Appium/Espresso script — ARTEMIS là phương án mạnh nhất hiện nay trong dòng “AI điều khiển điện thoại”. Nếu chỉ muốn tự động hoá tác vụ cá nhân trên điện thoại một cách an toàn, Flash profile + .env chuẩn sẽ đủ. Công cụ đang phát triển nhanh, mỗi tuần có commit mới; nên pin về một version/tag cụ thể và đọc changelog trước khi update.

Kết luận

ARTEMIS điểm mạnh ở chỗ đời thực: cài 1 lệnh, chạy được ngay, tích hợp MCP chuẩn cho mọi coding assistant, xuất ra traces/replay có cấu trúc thay vì chuỗi screenshot. Người mới nên bắt đầu từ web console (uv run artemis ui) để “thấy” agent điểm bấm từng bước, rồi mở rộng sang MCP và Python SDK khi ổn định.

Repo: github.com/google/artemis — Apache-2.0. Bài viết được tổng hợp từ README và mã nguồn dự án.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *