computer-use
Drive the desktop in the background without stealing focus.
Skill by merllinsbeard
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/merllinsbeard-computer-use
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/computer-use
What's inside
- Skill name
computer-use- Description
- Drive the desktop in the background without stealing focus.
- License
- MIT
- Instructions
- 376 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Files (1)
- SKILL.md
SKILL.md (first lines)
# Computer Use (universal, any-model, cross-platform)
You have a `computer_use` tool that drives the user's desktop in the
**background** — your actions do NOT move the user's cursor, steal
keyboard focus, or switch virtual desktops / Spaces. The user can keep
typing in their editor while you click around in a browser in another
window. This is the opposite of pyautogui-style automation.
Everything here works with any tool-capable model — Claude, GPT, Gemini,
or an open model on a local OpenAI-compatible endpoint. There is no
Anthropic-native schema to learn.
Hermes drives [cua-driver](https://github.com/trycua/cua) under the hood.
This wrapper skill teaches the Hermes `computer_use` workflow and action
vocabulary. Call the actions documented below instead of raw cua-driver MCP
tools. For driver internals and platform-specific behavior, follow the Cua
skill installed by `cua-driver skills install`. Hermes autodetection is a
planned cua-driver follow-up, so currently point Hermes at the resulting
`~/.cua-driver/skills/cua-driver` directory or symlink it into your skill space.
## The canonical workflow
**Step 1 — Capture first.** Almost every task starts with:
```
computer_use(action="capture", mode="som", app="<the app you're driving>")
```
Returns a screenshot with numbered overlays on every interactable
element AND an AX-tree index like:
```
#1 AXButton 'Back' @ (12, 80, 28, 28) [Chrome]
#2 AXTextField 'Address bar' @ (80, 80, 900, 32) [Chrome]
#7 Link 'Sign In' @ (900, 420, 80, 24) [Chrome]
...
```
The role names match the host platform's accessibility framework
(`AXButton` on macOS, `Button` on Windows UIA, `push button` on Linux
AT-SPI) — treat them as labels, not as strict types.
**Step 2 — Click by element index.** This is the single most important
habit:
```
computer_use(action="click", element=7)
```
Much more reliable than pixel coordinates for every model. Claude was
trained on both; other models are often only reliable with indices.
**Step 3 — Verify.** After any state-changing action, re-capture. You
can save a round-trip by asking for the post-action capture inline:
```
computer_use(action="click", element=7, capture_after=True)
```
## Capture modes
| `mode` | Returns | Best for |
|---|---|---|
| `som` (default) | Screenshot + numbered overlays + AX index | Vision models; preferred default |
| `vision` | Plain screenshot | When SOM overlay interferes with what you want to verify |
| `ax` | AX tree only, no image | Text-only models, or when you don't need to see pixels |
## Actions
```
capture mode=som|vision|ax app=… (default: current app)
click element=N OR coordinate=[x, y] button=left|right|middle
double_click element=N OR coordinate=[x, y]
right_click element=N OR coordinate=[x, y]
middle_click element=N OR coordinate=[x, y]
drag from_element=N, to_element=M (or from/to_coordinate)
scroll direction=up|down|left|right amount=3 (ticks)
type text="…"
key keys="<save shortcut>" | "return" | "escape" | "<modifier>+t"
wait seconds=0.5
list_apps
focus_app app="<app name>" raise_window=false (default: don't raise)
```
All actions accept optional `capture_after=True` to get a follow-up
screenshot in the same tool call. All actions that target an element
accept `modifiers=[…]` for held keys.
The input actions (`click`, `double_click`, `right_click`, `middle_click`,
`drag`, `scroll`, `type`, `key`) also accept `delivery_mode`. The optional
`bring_to_front=True` request invokes a separately approved standalone focus
tool before foreground input; it is never an input-action property.
## The verify → escalate ladder (background-first)
cua-driver delivers input in the **background** by default (no focus steal),
but that is the first rung, not the only one. Every input action returns a
structured verdict; read it and climb only when the driver tells you to.
Returned fields (present when the driver supports them):
- `effect`: `"confirmed"` (driver read the result back — done), `"unverifiable"`
(delivered, but confirm it yourself by re-capturing), or `"suspected_noop"`
(ran but almost certainly did nothing).
- `escalation`: `{recommended: "px" | "foreground" | "page", reason}` — present
only when there's a next rung to try.
- `code`: a structured refusal like `"background_unavailable"` or
`"foreground_unsupported"`.
- `verified`: `true` only on AX read-back.
Walk it in order:
1. **Element, background (default).** `click(element=N)`. If `effect:"confirmed"`,
you're done.
2. **Fresh verification.** `effect:"unverifiable"` means inspect a fresh
capture/state before any retry. Do this even when `escalation.recommended`
is present; it is advisory, not proof that successful input should repeat.
3. **Pixel, background.** After `effect:"suspected_noop"` or a structured
refusal recommends `"px"` (or a `degraded` capture has no elements), click
by `coordinate=[x,y]` instead of `element`.From merllinsbeard/merlin-CTO, MIT.
More from merllinsbeard/merlin-CTO
- 0.548score
ask-merlin
merllinsbeard
Use only when the user asks which skill or flow.
SkillBFreshness: B★ 1Claude Code +9 - 0.548score
kanban-board-operations
merllinsbeard
Use when cleaning or reconciling a crowded Kanban board.
SkillBFreshness: B★ 1Claude Code +9 - 0.548score
codebase-capability-map
merllinsbeard
Use when mapping platform capabilities from source+docs.
SkillBFreshness: B★ 1Claude Code +9 - 0.546score
cli-agent-first
merllinsbeard
Use when choosing direct, subagent, or coding CLI execution.
SkillBFreshness: B★ 1Claude Code +9 - 0.543score
production-release-verification
merllinsbeard
Verify immutable production releases.
SkillBFreshness: B★ 1Claude Code +9 - 0.542score
concise
merllinsbeard
Concise response style — lead with the result, cut narration.
SkillBFreshness: B★ 1Claude Code +9 - 0.538score
merge-reconciler
merllinsbeard
Neutral third-party resolution of agent merge conflicts.
SkillBFreshness: B★ 1Claude Code +9 - 0.538score
how-to-talk
merllinsbeard
Apply before every human-facing response.
SkillBFreshness: B★ 1Claude Code +9 - 0.519score
blast-radius
merllinsbeard
Find what a change could break somewhere else before it ships, beyond the diff, and prove the one fact it's safe because of by running real code instead of…
SkillBFreshness: B★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 25, 2026 (2 months ago)
- Last release
- Aug 25, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/merllinsbeard/merlin-CTO
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
- 0.333score
computer-use
yadav-prakhar
Drive the desktop in the background without stealing focus.
SkillAFreshness: AClaude Code +9 - 0.323score
computer-use
debzroot
Drive the desktop in the background without stealing focus.
SkillBFreshness: B★ 1Claude Code +9 - 0.323score
computer-use
semyonfox
Drive the desktop in the background without stealing focus.
SkillBFreshness: B★ 1Claude Code +9 - 0.323score
computer-use
supplefrog
Drive the desktop in the background without stealing focus.
SkillBFreshness: B★ 1Claude Code +9 - 0.309score
computer-use
brotherzhafif
Drive the desktop in the background without stealing focus.
SkillBFreshness: BClaude Code +9 - 0.309score
computer-use
obsiagent-boop
Drive the desktop in the background without stealing focus.
SkillBFreshness: BClaude Code +9
More from merllinsbeard
- 0.548score
ask-merlin
merllinsbeard
Use only when the user asks which skill or flow.
SkillBFreshness: B★ 1Claude Code +9 - 0.548score
kanban-board-operations
merllinsbeard
Use when cleaning or reconciling a crowded Kanban board.
SkillBFreshness: B★ 1Claude Code +9 - 0.548score
codebase-capability-map
merllinsbeard
Use when mapping platform capabilities from source+docs.
SkillBFreshness: B★ 1Claude Code +9 - 0.546score
cli-agent-first
merllinsbeard
Use when choosing direct, subagent, or coding CLI execution.
SkillBFreshness: B★ 1Claude Code +9 - 0.543score
production-release-verification
merllinsbeard
Verify immutable production releases.
SkillBFreshness: B★ 1Claude Code +9 - 0.542score
concise
merllinsbeard
Concise response style — lead with the result, cut narration.
SkillBFreshness: B★ 1Claude Code +9
Cite this page
computer-use skill. Agent Mart. https://agentmart.dev/skills/merllinsbeard-computer-use (last updated 2026-10-24)