# Claude Code Computer Use
Lets Claude open apps, control your screen, click, type, and take screenshots from the CLI. Claude can build a native app, launch it, click through every button, and screenshot the result in the same conversation where it wrote the code. Research preview on macOS only, requires Pro or Max plan and v2.1.85+.
## Use Cases
- **Build and validate native apps**: write Swift, compile, launch, click through controls, verify
- **End-to-end UI testing**: open an Electron app, click through onboarding, screenshot each step; no Playwright config needed
- **Debug visual/layout issues**: resize windows, reproduce bugs, screenshot, patch CSS, verify fix
- **Drive GUI-only tools**: design tools, hardware panels, iOS Simulator, proprietary apps without CLI/API
## How It Works
Claude tries the most precise tool first:
1. MCP server for the service → uses that
2. Shell command → uses Bash
3. Browser work with [[Claude in Chrome]] → uses that
4. None of the above → uses computer use
### Enabling
1. Run `/mcp` in an interactive session
2. Find `computer-use` in the server list → Enable
3. Grant macOS permissions when prompted: Accessibility (click, type, scroll) and Screen Recording (see screen)
Setting persists per project. May require restarting Claude Code after granting Screen Recording.
### Per-Session App Approval
First time Claude needs a specific app in a session, a prompt shows which apps it wants to control. Choose "Allow for this session" or "Deny". Apps with broad reach show extra warnings:
| Warning | Applies to |
|---------|-----------|
| Equivalent to shell access | Terminal, iTerm, VS Code, Warp |
| Can read or write any file | Finder |
| Can change system settings | System Settings |
App control tiers: browsers and trading platforms are view-only; terminals and IDEs are click-only; everything else gets full control.
### While Claude Works
- Machine-wide lock: only one session can use computer use at a time
- Other apps are hidden so Claude interacts only with approved apps
- Terminal window stays visible and is excluded from screenshots
- Press `Esc` anywhere or `Ctrl+C` in terminal to abort immediately
## Safety
- Per-app approval per session
- Sentinel warnings for shell/filesystem/system settings access
- Terminal excluded from screenshots (prevents prompt injection feedback)
- Global escape key (consumed so prompt injection can't use it)
- Lock file prevents concurrent use
## Limitations
- macOS only in CLI (Windows available via Desktop app)
- Pro or Max plan required (not Team or Enterprise)
- Interactive sessions only (not with `-p` flag)
- Not available with Bedrock, Vertex AI, or Foundry
- Slower than MCP/Bash/Chrome alternatives
## References
- https://code.claude.com/docs/en/computer-use
- Announcement: https://x.com/claudeai/status/2038663014098899416
## Related
- [[Claude Code]]
- [[Claude Code MCP Integration]]
- [[Claude in Chrome]]