Claude Code computer use lets Claude open apps on your machine, click, type, scroll and see your screen through screenshots, so it can test and drive things that have no command line or API. You turn it on in the CLI by enabling the built-in computer-use server in /mcp (macOS only), or in the desktop app under Settings > This computer > System (macOS and Windows). It is a research preview that needs a Pro or Max plan.
This guide explains what it is good for, how to enable it, how app approvals work and the safety rules to know. It is based on the official computer use docs for the CLI and the desktop app reference.
What can Claude do with computer use?
Computer use covers work that otherwise means leaving the terminal and clicking through something yourself. The docs give four main uses:
- Build and check native apps. Claude writes a Swift menu bar app, compiles it, launches it and clicks every control to check it works before you open it.
- End-to-end UI testing. Point Claude at a local Electron app and ask it to test the onboarding flow. It clicks through and screenshots each step, with no test harness to set up.
- Debug visual bugs. Tell Claude a modal clips on small windows. It resizes the window, reproduces the bug, screenshots it, patches the CSS and checks the fix.
- Drive GUI-only tools. Design tools, hardware control panels, the iOS Simulator and proprietary apps without an API.
The value is that this happens in the same conversation where Claude wrote the code, so it can see the result of its own change and keep going.
When does Claude use computer use instead of other tools?
Computer use is the broadest and slowest way for Claude to interact with something, so it tries more precise tools first:
- If an MCP server (or, in Desktop, a connector) exists for the service, Claude uses it.
- If the task is a shell command, Claude uses Bash.
- If it is browser work and Claude in Chrome is set up, Claude uses that.
- Only if none of those apply does Claude control the screen.
In the desktop app, running or testing an iOS app opens a dedicated iOS Simulator pane instead, which works without computer use. Screen control is meant for native apps, simulators and tools nothing else can reach.
How do you enable computer use in the Claude Code CLI?
Requirements first. You need macOS, a Pro or Max plan, a claude.ai sign-in (not Bedrock, Agent Platform or Foundry) and an interactive session. It does not work with -p.
Then:
- In an interactive session, run
/mcp. - Find
computer-usein the server list (it shows as disabled), select it and choose Enable. The setting persists per project, so you do this once per project. - The first time Claude tries to use your computer, grant two macOS permissions: Accessibility (to click, type and scroll) and Screen Recording (to see the screen). Then select Try again. macOS may need you to restart Claude Code after granting Screen Recording.
Now ask for something that needs the screen. This example comes from the docs:
Build the app target, launch it, and click through each tab to make
sure nothing crashes. Screenshot any error states you find.
If computer-use does not appear in /mcp, check each requirement above; run /status to confirm your plan.
How do you enable computer use in the desktop app?
In the Claude desktop app, computer use works on macOS and Windows (it is not yet in the Linux beta). On macOS it needs macOS 14 or later.
- Update the desktop app to the latest version and restart it.
- Go to Settings > This computer > System and turn on Enable computer use. On Windows, that is all.
- On macOS, grant Accessibility and Screen Recording. The Settings page shows the status of each and links to the right System Settings pane.
The desktop version adds a few options the CLI lacks:
| Feature | Desktop | CLI |
|---|---|---|
| Platforms | macOS and Windows | macOS only |
| Enable | Toggle in Settings > This computer > System | Enable computer-use in /mcp |
| Denied apps list | Configurable | Not yet available |
| Auto-unhide toggle | Optional | Always on |
| Dispatch sessions | Can use computer use | Not applicable |
On macOS, Desktop can also run computer use in the background, working in approved apps while you keep working. See the Claude Code desktop guide for the rest of the Code tab.
How do app approvals work?
Turning on computer use does not give Claude access to every app. The first time Claude needs an app in a session, a prompt shows which apps it wants, any extra permissions such as clipboard access, and how many other apps will be hidden. Choose Allow for this session or Deny. Approvals last for the current session (30 minutes in Desktop sessions started by Dispatch).
Each app also gets a fixed level of control based on its category:
| Tier | What Claude can do | Applies to |
|---|---|---|
| View only | See the app in screenshots | Browsers, trading platforms |
| Click only | Click and scroll, but not type or use shortcuts | Terminals, IDEs |
| Full control | Click, type, drag and use shortcuts | Everything else |
Apps with broad reach get an extra warning before you approve them: terminals and IDEs ("Equivalent to shell access"), Finder ("Can read or write any file") and System Settings ("Can change system settings"). They are not blocked; the warning is there so you can judge whether the task needs that much access.
What happens on screen while Claude works?
A few behaviors are worth knowing before the first run:
- Other apps are hidden. Claude interacts only with approved apps, so other visible apps are hidden and restored when the turn ends. Your terminal stays visible and is excluded from screenshots, so Claude never sees its own output.
- One session at a time. The first computer use action takes a lock, held until that session exits. A second session gets an error naming the session that holds it.
- Screenshots are downscaled. Claude Code shrinks every screenshot before sending it, so you don't need to change your display resolution. If text is too small for Claude to read, enlarge it in the app.
- You can always stop it. A macOS notification says "Claude is using your computer · press Esc to stop." Press
Escanywhere, orCtrl+Cin the terminal, and Claude stops and gives control back.
How safe is Claude Code computer use?
The docs are direct about the difference: unlike the sandboxed Bash tool, computer use runs on your actual desktop with access to the apps you approve. Claude checks each action and flags possible prompt injection from on-screen content, but the trust boundary is not the same.
Built-in guardrails:
- per-app approval for each session
- warnings for apps that grant shell, file system or settings access
- your terminal excluded from screenshots
- a global
Escthat aborts from anywhere and cannot be used by prompt injection to dismiss dialogs - a lock so only one session controls the machine
Practical habits follow from that. Approve only the apps a task needs, be cautious with terminals, Finder and System Settings, and keep sensitive windows closed while Claude works. The docs point to a Claude help article on computer use for more safety best practices, and the Claude Code security guide covers the wider picture.
Keep your GUI test prompts reusable
Computer use prompts work best when they spell out the flow to test and what to screenshot. Kipt keeps prompts like these as Markdown in a private GitHub repo you own, with blanks such as {{app_target}} you fill in each time, so a good test prompt is easy to find again with Cmd+K.