CtrlK
BlogDocsLog inGet started
Tessl Logo

cua-driver

Drive a native GUI app (macOS, Windows, Linux) via the cua-driver CLI (default) or MCP server; snapshot its accessibility tree, act through snapshot-bound element tokens, native menu paths, exact window geometry, or pixel coordinates, and verify from fresh state. Use when the user asks you to operate, drive, automate, or perform a GUI task in a real application on the host, or to continue, resume, or recall recent Cua activity.

72

Quality

92%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

The canonical home for this skill is cua-driver in trycua/cua

SKILL.md
Quality
Evals
Security

Quality

Content

85%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An efficiently written, highly actionable routing body with an explicit observe→act→verify loop, strict verification discipline, and a symptom-based failure map — the body itself is near-ideal for a multi-file skill. Its one substantive defect is that the entire load-on-demand reference layer it depends on is absent from the bundle as shipped, breaking the progressive-disclosure contract.

Suggestions

Ship the referenced files (at minimum WORKFLOW.md and RUNTIME.md, plus the platform guide for the host) alongside SKILL.md so the 'Load on demand' pointers resolve, or inline a minimal quick-start for the core observe→act→verify loop so the body is self-sufficient when they are host-filtered out.

Add one or two complete example invocations (e.g., a full `click` call with its element_token payload and window target) to lift actionability from routing-level to copy-paste-ready.

State explicitly in the References section which files are guaranteed present vs. host-filtered (currently only the platform files carry that caveat), so absence can be distinguished from a broken reference.

DimensionReasoningScore

Conciseness

The body is lean and operationally dense: every line carries tool names, parameters, or a rule ('`get_window_state({pid, window_id})`', 'a fresh snapshot replaces prior element handles'). No space is spent explaining concepts Claude already knows, and the References section explicitly instructs 'Load on demand; do not reabsorb these into this file.'

5 / 5

Actionability

Concrete, executable guidance dominates: exact CLI commands ('cua-driver --version', 'status', 'doctor', 'describe <tool>'), exact tool names with parameter shapes ('`get_window_state({pid, window_id})`', '`target:{kind:"desktop",display_id:"primary"}`'), and a goal→tool routing table. It falls short of anchor 5 because full invocation syntax and argument details for most actions (click, type_text, verify_state's expect shape) are deferred to the referenced files rather than shown or exemplified inline; it is clearly above anchor 3 since what is present is real, not pseudocode.

4 / 5

Workflow Clarity

The core loop is stated up front ('Operate one exact target, observe its state, act once, and verify the user's postcondition') and reinforced by the ordered Act table (find app → observe → act → verify → finish) and Rule 2 ('Observe before input and verify after it'). Validation checkpoints are explicit and strict — '`effect:"unverifiable"` and a successful exit are not task success', `verify_state({pid, window_id, expect})` — and the Failure map closes the loop with symptom→recovery-step feedback paths.

5 / 5

Progressive Disclosure

The structure itself is anchor-5 quality: a concise overview, a well-signaled one-level-deep reference list, and anchored deep links (RUNTIME.md#preflight-and-transport, LINUX.md#capture-recovery). However, per the bundle-structure guideline, none of the referenced files (WORKFLOW.md, RUNTIME.md, MACOS.md, WINDOWS.md, LINUX.md, BROWSER.md, RECORDING.md, EMBEDDING.md) exist in this bundle — there are no references/, scripts/, or assets/ directories at all — so every load-on-demand pointer is a dead end and navigation fails in practice. The body's own note that 'Other platform files may be absent from a host-filtered installation' acknowledges some absence, but the core files (WORKFLOW.md, RUNTIME.md) are unconditionally referenced and still missing, which drops this below anchor 4 ('references mostly clear' with only minor gaps).

3 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A model description: third-person, dense with concrete capabilities, explicit dual CLI/MCP transport, and an explicit 'Use when' trigger clause with natural synonyms. No fluff, over-claims, or first/second-person voice.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions with their mechanisms: 'snapshot its accessibility tree, act through snapshot-bound element tokens, native menu paths, exact window geometry, or pixel coordinates, and verify from fresh state', plus the delivery routes ('cua-driver CLI (default) or MCP server') and platforms (macOS, Windows, Linux). Coverage is comprehensive with no vague filler.

5 / 5

Completeness

Both halves are explicit: a detailed 'what' (drive native GUI apps via CLI/MCP, snapshot accessibility tree, act via tokens/menu paths/geometry/pixels, verify from fresh state) followed by an explicit 'Use when...' clause with concrete trigger phrases. This matches the anchor-5 good example pattern.

5 / 5

Trigger Term Quality

Natural trigger phrases users would actually say are covered with synonyms: 'operate, drive, automate, or perform a GUI task in a real application on the host', plus continuation triggers 'continue, resume, or recall recent Cua activity'. Product jargon ('Cua') appears only in the continuation clause, where it names the specific activity being resumed.

5 / 5

Distinctiveness Conflict Risk

The niche is narrow and clearly fenced: 'native GUI app' with platform list distinguishes it from browser/DOM automation and scripting skills, and triggers are phrased around GUI operation in a real application. Minor overlap risk with 'browser page content' exists but the description scopes that as a sub-capability of the same driver, not a separate skill conflict.

5 / 5

Total

20

/

20

Passed

Validation

75%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 12 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 23 missing

Warning

Total

12

/

16

Passed

Repository
trycua/cua
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.