September 29, 2026 · 9 min read
How to install Google ARTEMIS, step by step
Google's open-source agent that lets AI use a real Android phone. The full install on macOS, Windows and Linux — including the API key step the README skips.
ARTEMIS is an open-source Google project that lets an AI use a real Android phone the way a person does: it looks at the screen, taps, types, swipes, and reports back. You give it a sentence like "Open Settings, find Battery and tell me the current level" and it does it — on your phone or on an emulator.
For Flutter developers it's especially interesting: it finds widgets even on Canvas, Compose and Flutter screens where classic tools struggle, and it plugs into Claude Code, Cursor, Codex, Antigravity and Windsurf, so your coding assistant can build your app, install it, and actually test it.
The official README is thorough, but it's written for people who already know the tooling — and it quietly skips one step you can't run without. This is the whole install, in order, with nothing assumed.
What you need
| You need | Notes |
|---|---|
| A computer | macOS, Linux, or Windows 10/11 |
| An Android device | A real phone with a USB cable, or an emulator from Android Studio |
| An AI API key | A free Gemini key from Google AI Studio is the default and easiest |
| Time | About 10–15 minutes, most of it downloads |
You do not need to install Python, ADB, scrcpy or FFmpeg yourself. The start script does that for you.
Step 1 — Get your phone ready
Skip this step if you're using an emulator; just start it from Android Studio's Device Manager and move on.
- Open Settings → About phone.
- Tap Build number seven times until it says "You are now a developer". (On Samsung it's under Software information; on Xiaomi it's MIUI/OS version.)
- Go back to Settings → System → Developer options and turn on USB debugging.
- Plug the phone into your computer.
- A popup appears on the phone: Allow USB debugging? Tick Always allow from this computer and tap Allow.
If you never see that popup, unplug and plug the cable back in with the phone unlocked. Some cables only charge — try another one if nothing happens.
Step 2 — Make sure you have Git
Open a terminal (on Windows, PowerShell) and run:
git --version
If you get a version number, go to Step 3. If not:
# macOS
xcode-select --install
# Windows
winget install --id Git.Git -e
# Ubuntu / Debian
sudo apt install git
Close and reopen the terminal after installing.
Step 3 — Download ARTEMIS and run the start script
macOS and 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
Type .\start.bat exactly like that — with the .\ in front and nothing after it. PowerShell won't run a script from the current folder without it. (In the old Command Prompt, plain start.bat works.)
The first run takes a few minutes. Here's what it's doing, so nothing surprises you:
- Installs
uv, the Python manager ARTEMIS uses, and through it the right Python version. - Installs ADB, scrcpy and FFmpeg — via Homebrew on macOS,
apt/pacmanon Linux,wingeton Windows. On Linux it may ask for your password; if you say no, it installs them in your home folder instead. - Installs Node.js 22 if needed, to build the web console.
- Creates a
.envfile for your settings. - Asks: "Install MCP configuration & rules now? [Y/n]" — this connects ARTEMIS to AI coding tools you already have installed. Press Y if you use Claude Code, Cursor, Codex, Antigravity or Windsurf; n if you just want to try it. You can do it later (Step 7).
When it's done, your browser opens http://localhost:8000 — the ARTEMIS web console.
Step 4 — Add your API key (the step the README skips)
ARTEMIS needs an AI model to see the screen and decide what to tap. Out of the box it uses Google's Gemini, and it won't run a single task until it has a key.
- Go to aistudio.google.com/app/apikey and sign in with a Google account.
- Click Create API key and copy it. It starts with
AIza…. - Add it in one of these ways:
Option A — the web console (easiest). On the home screen at localhost:8000, pick Gemini, paste the key into Enter Gemini API Key, and click Save. It verifies the key and writes it to your .env for you.
Option B — the terminal wizard. In the artemis folder:
uv run artemis init
Option C — edit the file yourself. Open .env in the artemis folder and fill in the line:
GEMINI_API_KEY=AIzaSy...your-key...
Prefer another provider? The same .env accepts OPENAI_API_KEY, ANTHROPIC_API_KEY, OPEN_ROUTER_API_KEY or XAI_API_KEY — but the default settings are tuned for Gemini, so start there.
Treat the key like a password: don't paste it into screenshots, group chats, or a GitHub commit.
Step 5 — Check everything is connected
ARTEMIS ships a checkup command. Run it from the artemis folder:
uv run artemis doctor
It checks the tools, your API key, and whether it can see your device. Fix anything it flags before going further — the troubleshooting section at the end covers the usual ones.
You can also ask ADB directly:
adb devices
You want to see your device listed as device. If it says unauthorized, look at your phone — the Allow USB debugging popup is waiting.
Step 6 — Run your first task
From the web console: type an instruction into the prompt box at the bottom and send it. You'll see your phone's screen mirrored live, with each tap and the AI's reasoning in the side panel.
From the terminal:
uv run artemis run "Open Settings, find Battery and tell me the current level" --profile flash
The first task on a device installs a small Artemis Accessibility Helper app on the phone. It's how ARTEMIS reads the screen layout quickly. It only listens on the phone itself and doesn't send anything anywhere. You'll see it in your accessibility settings.
Flash or Pro?
| Flash | Pro | |
|---|---|---|
| Speed | ~3–5 s per step | ~15–40 s per step |
| How it works | One model looks, thinks, taps | A planner, an operator and a checker work together, and every tap is verified first |
| Use it for | Quick, routine tasks | Long flows, real test runs, written reports |
| Flag | --profile flash | --profile pro |
Start with Flash. Switch to Pro when a task is long or has to be right.
Step 7 — Connect it to your AI coding tool (optional)
This is where it gets fun: your coding assistant can drive the phone. If you skipped the question in Step 3, run one of these from the artemis folder:
# Everything it can find on your machine
uv run artemis mcp --install all
# Or just one
uv run artemis mcp --install claude # Claude Code
uv run artemis mcp --install cursor
uv run artemis mcp --install codex
uv run artemis mcp --install antigravity
uv run artemis mcp --install windsurf
uv run artemis mcp --install vscode
Restart your editor, then just ask it in chat:
Build the app, install it on the connected phone, log in with the test account, and send me a screenshot of the home screen.
Want to type artemis instead of uv run artemis from anywhere? Run this once inside the artemis folder:
uv tool install -e .
Everyday commands
Run these from the artemis folder:
| Command | What it does |
|---|---|
uv run artemis ui | Start the web console |
uv run artemis stop | Stop it |
uv run artemis restart | Restart it |
uv run artemis status | Is it running? |
uv run artemis doctor | Check the setup |
uv run artemis helper status | Check the helper app on the phone |
To update ARTEMIS later:
git pull
./start.sh # or .\start.bat on Windows
Using your personal phone
ARTEMIS is built with test devices in mind, so two defaults are worth changing on a phone you actually carry. Add these to .env:
# Let the screen turn off normally
ARTEMIS_KEEP_DEVICE_AWAKE=false
# Only install the helper app when YOU run `artemis helper install`
ARTEMIS_HELPER_AUTO_INSTALL=false
And remember: the AI can tap anything you can. Don't give it tasks inside banking or payment apps.
Troubleshooting
No device found / adb devices is empty. Check the cable (try another), unlock the phone, and replug. Make sure USB debugging is still on — some phones turn it off after an update.
The device shows as unauthorized. Unlock the phone and accept the Allow USB debugging popup. If it never appears, go to Developer options → Revoke USB debugging authorizations, then replug.
.\start.bat isn't recognized on Windows. You're probably not inside the artemis folder. Run cd artemis first, and include the .\.
artemis: command not found. Put uv run in front of it, or run uv tool install -e . once (Step 7).
The browser says it can't reach localhost:8000. Run uv run artemis status. If it's stuck, uv run artemis restart.
Tasks fail immediately with a credentials error. Your API key is missing or wrong — go back to Step 4 and use Test next to the key in the web console.
Something else. Run uv run artemis doctor and read what it says. The project also has a Discord community and an issue tracker.
Removing it
uv run artemis helper uninstall # removes the helper app from the phone
Then delete the artemis folder. If you ran uv tool install -e ., also run uv tool uninstall artemis.
ARTEMIS is open source under the Apache 2.0 license. This guide was written against the repository as of September 28, 2026 — the project moves fast, so if a command here stops matching, the official README wins.