OpenClaw Mac AI Workstation Setup
Claude Code Computer Use crashes with checkAccessibility or registerEscape?
If the MCP server connects but every Computer Use call fails, treat it as a native module/runtime-path problem first, then verify macOS permissions. Do not assume Accessibility and Screen Recording are the root cause just because the error mentions access.
Fast Read
1. Verify the native module exists
On affected setups, the binary may exist inside Claude Desktop even when the CLI/native install does not expose it in the expected package path.
ls "/Applications/Claude.app/Contents/Resources/app.asar.unpacked/node_modules/@ant/claude-swift/build/Release/computer_use.node"
2. Point Claude Code at that module
If the file exists, export the module path before launching Claude Code. Add it to your shell profile only after the one-session test works.
export COMPUTER_USE_SWIFT_NODE_PATH="/Applications/Claude.app/Contents/Resources/app.asar.unpacked/node_modules/@ant/claude-swift/build/Release/computer_use.node"
3. Smoke test the module directly
This confirms that the loaded native module exposes the TCC methods Computer Use needs.
node -e "const m = require(process.env.COMPUTER_USE_SWIFT_NODE_PATH); console.log(Object.keys(m.computerUse.tcc));"
A useful result includes methods such as checkAccessibility, requestAccessibility, checkScreenRecording, and requestScreenRecording.
4. Separate permission state from runtime state
After fixing the module path, quit and relaunch the host app, then verify the actual runtime can call Computer Use. Permission panels can be green while the active MCP runtime still cannot load the native helper.
- Confirm Claude Desktop is installed and updated.
- Confirm Accessibility and Screen Recording are granted to the right host app.
- Restart the CLI session after exporting the native module path.
- Run a real Computer Use tool call, not just a text response from the agent.
When to use the paid triage
Buy triage if you want me to inspect the actual failing layer and return the smallest fix. I do not bypass macOS security controls or guarantee upstream bugs can be fixed locally.