qqqqqf-q/arkloop/cua-driver
Claude Code and agent skill by qqqqqf-q/arkloop
- community
Checking that the SKILL.md file is still in the repository.
Drive real macOS applications through the CUA Driver MCP server when the user asks to inspect, operate, or automate visible desktop UI.
Install
npx vskill@latest install qqqqqf-q/arkloop/cua-driverSKILL.md
CUA Driver
Use the CUA Driver MCP tools as the only action surface for desktop automation. Do not use shell, AppleScript, open, cliclick, screenshots outside CUA, or raw cursor/key APIs to drive macOS UI.
Runtime Context
- Plugin id:
arkloop.plugins.cua. - Runtime helper app:
CuaDriver.app. - Runtime binary:
CuaDriver.app/Contents/MacOS/cua-driver. - Accessibility and Screen Recording permissions belong to the helper app bundle, not to Arkloop.
Required Loop
- Resolve the app with
list_apps. Match localized names, English names, romanized names, bundle identifiers, and common abbreviations. Preferbundle_idas the stable identity. - Start or reuse the target with
launch_app({ bundle_id }). Use the returnedpidwhen available. - Inspect windows with
list_windows({ pid })when the launch result lacks a usable window. - Before every UI action, snapshot with
get_window_state({ pid, window_id }). - Act with the narrowest matching tool:
click,right_click,double_click,drag,scroll,type_text,type_text_chars,press_key,hotkey,set_value,page, orlaunch_appwithurls. - Snapshot again after every state-changing action and verify visible evidence such as selected state, changed text, playback progress, new panels, highlighted rows, or updated window content.
Element indices are valid only for the latest get_window_state result from the same pid and window_id. Re-snapshot when an index is missing, stale, or from another window.
Permissions
Call check_permissions before the first desktop task. If Accessibility or Screen Recording is missing, tell the user to grant both permissions to CuaDriver.app, then stop until the permission state changes.
Sparse UI Fallback
Some media, browser, and Electron apps expose shallow accessibility trees while still showing actionable pixels. Use this order:
- Retry
get_window_state({ pid, window_id })once. - For browser-like or Electron windows, use
pageor relaunch withlaunch_app({ bundle_id, electron_debugging_port: 9222 })when DOM access is more reliable than pixels. - Use
screenshot({ window_id })for broad visual confirmation when the current overlay or window content is unclear. - Use at most one
zoom({ pid, window_id, x1, y1, x2, y2 })for dense text or icons. - Use pixel coordinates only from the latest full-window screenshot or the single zoom result.
- Re-snapshot and compare after each action.
Ask the user only when visible candidates are ambiguous, the requested action is destructive, or the target is outside the visible window.
Navigation Patterns
- Launch apps with
launch_app({ bundle_id }). - Open files or URLs with
launch_app({ bundle_id, urls: [...] }). - For browser-like apps, prefer separate windows via
launch_app({ bundle_id, urls: [...] })so each target has a stablewindow_id. - Do not use omnibox shortcuts such as
cmd+lfor navigation. Uselaunch_appwithurls. - Use visible in-window controls before menu-bar actions. Use menu-bar actions only when the target app is already frontmost and the menu state is visible through the CUA snapshot.
Agent Cursor
Use get_agent_cursor_state to inspect the cursor overlay. Use set_agent_cursor_enabled, set_agent_cursor_motion, or set_agent_cursor_style only when the user asks to show, hide, animate, or restyle the agent cursor.
Security
- Security scanPassed, 91 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingsrc/plugins/cua/skills/cua-driver/SKILL.md
Popularity
- Repository stars
- 374
- Repository forks
- 36
- 7-day trend score
- 30
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/qqqqqf-q/arkloop/cua-driver)