Mac Computer Use
To3akaRin/mac-computer-use
操作 macOS 桌面应用,探测窗口和自动化接口、截图、读取或修改辅助功能元素、执行鼠标键盘动作,以及通过 CDP 操作内嵌 Chromium 页面。适用于桌面应用自动化与界面验收;普通网页任务优先使用已有浏览器工具。
Debug and validate OpenBridge on a real macOS desktop through mini-machine plus full VNC computer-use.
$ npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install AFK-surf/OpenBridge openbridge-debug --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/AFK-surf/OpenBridge.git skills-src && mkdir -p .claude/skills && cp -r skills-src/macos/DevKit/skill .claude/skills/openbridge-debug && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "openbridge-debug" agent skill from https://github.com/AFK-surf/OpenBridge/tree/main/macos/DevKit/skill into .claude/skills/openbridge-debug/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openbridge-debug", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/AFK-surf/OpenBridge/tree/main/macos/DevKit/skillType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install AFK-surf/OpenBridge openbridge-debug --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AFK-surf/OpenBridge.git skills-src && mkdir -p .agents/skills && cp -r skills-src/macos/DevKit/skill .agents/skills/openbridge-debug && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "openbridge-debug" agent skill from https://github.com/AFK-surf/OpenBridge/tree/main/macos/DevKit/skill into .agents/skills/openbridge-debug/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openbridge-debug", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install AFK-surf/OpenBridge openbridge-debug --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AFK-surf/OpenBridge.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/macos/DevKit/skill .cursor/skills/openbridge-debug && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "openbridge-debug" agent skill from https://github.com/AFK-surf/OpenBridge/tree/main/macos/DevKit/skill into .cursor/skills/openbridge-debug/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openbridge-debug", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/AFK-surf/OpenBridge.git --path macos/DevKit/skill--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install AFK-surf/OpenBridge openbridge-debug --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AFK-surf/OpenBridge.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/macos/DevKit/skill .gemini/skills/openbridge-debug && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "openbridge-debug" agent skill from https://github.com/AFK-surf/OpenBridge/tree/main/macos/DevKit/skill into .gemini/skills/openbridge-debug/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openbridge-debug", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install AFK-surf/OpenBridge openbridge-debugInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/AFK-surf/OpenBridge.git skills-src && mkdir -p .github/skills && cp -r skills-src/macos/DevKit/skill .github/skills/openbridge-debug && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "openbridge-debug" agent skill from https://github.com/AFK-surf/OpenBridge/tree/main/macos/DevKit/skill into .github/skills/openbridge-debug/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openbridge-debug", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install AFK-surf/OpenBridge openbridge-debug --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AFK-surf/OpenBridge.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/macos/DevKit/skill .opencode/skills/openbridge-debug && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "openbridge-debug" agent skill from https://github.com/AFK-surf/OpenBridge/tree/main/macos/DevKit/skill into .opencode/skills/openbridge-debug/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openbridge-debug", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
openbridge-debugDebug and validate OpenBridge on a real macOS desktop through mini-machine plus full VNC computer-use.
Openbridge Debug is an agent skill from AFK-surf/OpenBridge. Debug and validate OpenBridge on a real macOS desktop through mini-machine plus full VNC computer-use. Use when local broker automation is not enough, when you need end-to-end GUI verification on macOS, or when local changes should be pushed to a branch and rebuilt from a fresh machine clone instead of transferred manually.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files (for example `machine.sh`, `publish_branch_for_machine.sh` and `rerun_setup_on_machine.sh`).
It sits in Productivity & Automation, covering Desktop control. It works with macOS. The repository describes itself as: A free, safe and open agent for everything. Alternative to Claude Cowork & Codex. Open Bridge, the AI bridge between your intention and get the job done. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a9ca905. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Shell), which the agent can run.
Shell commands in SKILL.md call:
ghsshpython3yarnbashFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, ssh and yarn, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
CUEBOARD_GH_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Openbridge Debug loads about 2.2k tokens when it runs. Until then it costs about 86 tokens; SKILL.md has 915 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from AFK-surf/OpenBridge at commit a9ca905, republished under its MIT licence (© AFK-surf). 915 words, ~2,228 tokens.
.claude/skills/openbridge-debug/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.This skill replaces the old local OpenBridge automation MCP flow.
Use a remote macOS machine plus full computer-use instead:
machine.sh creates/lists/gets/stops mini-machine sessions and requires a request description for each new machine.publish_branch_for_machine.sh snapshots local changes to a git branch so the remote Mac can build them directly; a local compile pass is optional, not required.rerun_setup_on_machine.sh reruns setup on an already-running machine so OpenBridge reopens with the updated branch after you push.setup_bridge_on_machine.sh clones OpenBridge on the remote Mac, builds OpenBridge, and opens the app.vnc is the actual computer-use tool for screenshots, clicks, typing, keys, and scroll.From the local machine:
gh auth status
python3 -m pip install --user --break-system-packages vnc-computer-use # if `vnc` is missingIf your Python install is externally managed and you do not want --break-system-packages, install vnc-computer-use with a virtualenv or pipx instead.
You need repo + workflow scopes for gh.
For private repo clone inside the remote macOS machine, use one of these:
gh auth login on the machine.CUEBOARD_GH_TOKEN on the machine before cloning.CUEBOARD_REPO_URL to a clone URL the machine can access.You do not need a successful local build before creating or using a machine. A remote machine build can be your first compile/validation pass; a local build is only an optional preflight when you want faster feedback before pushing.
If you want a quick local preflight before pushing, run from the repo root:
cd web && yarn install --immutable && yarn build:embedded
cd ../macos && BUILD_CONFIGURATION=UnsignedDebug bash DevKit/Scripts/workspace_build_debug.shIf you do not need the local preflight, skip straight to the publish step. In either case, push the branch snapshot so the remote Mac can do the compile/validation pass:
macos/DevKit/skill/publish_branch_for_machine.sh \
--message "wip: describe the current OpenBridge fix" \
--branch your-branch-nameThat prints the matching machine-side setup command.
After you push the latest branch snapshot, run:
macos/DevKit/skill/publish_branch_for_machine.sh \
--branch your-branch-name \
--message "wip: describe the latest OpenBridge change"
macos/DevKit/skill/rerun_setup_on_machine.sh \
--run-id <run-id> \
--branch your-branch-nameIf the branch is already committed and clean locally, omit --message from the publish step.
This keeps the update flow atomic:
Forward any extra machine setup flags after --, for example:
macos/DevKit/skill/rerun_setup_on_machine.sh \
--run-id <run-id> \
--branch your-branch-name \
-- --skip-openAlways create a fresh mini-machine for your own validation run. Do not take over or reuse a machine that someone else may already be using, even if it looks idle. If you need to continue your own in-flight debugging session, only reconnect to the machine that you created for that same task.
macos/DevKit/skill/machine.sh new "Validate OpenBridge on branch your-branch-name"Save:
Use macos/DevKit/skill/machine.sh list to see active run titles/request descriptions, and get <run-id> if you need the connection info later.
vnc connect tunnel.eyhn.in::<vnc-port> --username <user> --password=<password>Always drive the UI with the full screenshot loop:
vnc get_screenshot -o /tmp/bridge-machine.png
# inspect the screenshot
vnc left_click <x> <y>
vnc type "text"
vnc key enter
vnc scroll down:400 700 500
vnc get_screenshot -o /tmp/bridge-machine-after.pngRules:
Over SSH:
ssh -i <key> -o StrictHostKeyChecking=no -p <ssh-port> admin@tunnel.eyhn.inFor a fresh machine with no repo checkout yet, run the setup script from your local machine and stream it over SSH:
ssh -i <key> -o StrictHostKeyChecking=no -p <ssh-port> <user>@tunnel.eyhn.in \
'bash -s -- --branch your-branch-name --repo-dir ~/openbridge' \
< macos/DevKit/skill/setup_bridge_on_machine.shThat keeps the heavy transfer on the machine side: the script itself is tiny, but the repository clone and build happen on the remote Mac.
For the first clone against the private OpenBridge repo, the easiest path is to inject your local GitHub token into the remote command:
ssh -i <key> -o StrictHostKeyChecking=no -p <ssh-port> <user>@tunnel.eyhn.in \
"CUEBOARD_GH_TOKEN='$(gh auth token)' bash -s -- --branch your-branch-name --repo-dir ~/openbridge" \
< macos/DevKit/skill/setup_bridge_on_machine.shsetup_bridge_on_machine.sh will also bootstrap a portable Node.js toolchain on the machine when node/corepack are missing, pin the same SwiftFormat version used in CI, mark onboarding as complete, seed the user TCC database through a pinned copy of jacobsalmela/tccutil plus the required AppleEvents rows for OpenBridge / Terminal / osascript, and open the local OpenBridge build.
If the repo is already present on the machine, you can instead SSH in and run:
bash ~/openbridge/macos/DevKit/skill/setup_bridge_on_machine.sh \
--branch your-branch-name \
--repo-dir ~/openbridgeIf the repo is private and the machine is not authenticated yet, first do one of:
gh auth login
# or
export CUEBOARD_GH_TOKEN=...For day-to-day iteration, prefer publish_branch_for_machine.sh followed by rerun_setup_on_machine.sh instead of typing the SSH command manually; that keeps “push code” and “rerun machine setup” as two explicit steps while still making the warm-machine rebuild short.
After the script opens OpenBridge.app, switch back to VNC and test the real UI.
Common loop:
vnc get_screenshotvnc get_screenshot againBy default the setup script marks onboarding as complete for the private repo workflow, so a fresh UnsignedDebug machine should open directly into the local app. Override BRIDGE_COMPLETE_ONBOARDING when you need a different bootstrap state.
vnc disconnect
macos/DevKit/skill/machine.sh stop <run-id>Only use this when you are resuming your own existing debugging session. Do not use list/get to adopt a machine created by someone else; start a new machine instead for any new validation run.
macos/DevKit/skill/machine.sh list
macos/DevKit/skill/machine.sh get <run-id>macos/DevKit/skill/publish_branch_for_machine.sh --branch test-branch --message "test" --dry-run
macos/DevKit/skill/rerun_setup_on_machine.sh --run-id 123456789 --branch test-branch --dry-run
macos/DevKit/skill/setup_bridge_on_machine.sh --branch test-branch --repo-dir ~/openbridge --dry-runmachine.sh new fails immediately: provide a request description, then re-check gh auth status and token scopes.vnc is missing: python3 -m pip install --user vnc-computer-use.gh on the machine or export CUEBOARD_GH_TOKEN.setup_bridge_on_machine.sh; it kills older OpenBridge.app processes before opening the fresh build.-: use --password=<password>.© AFK-surf, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files in macos/DevKit/skill of AFK-surf/OpenBridge.
Open the folder on GitHubat commit a9ca905
Openbridge Debug next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Openbridge Debug this skillAFK-surf/OpenBridge | 430 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Mac Computer UseTo3akaRin/mac-computer-use | 1.1k | 1 repos | ~495 | Automated safety check: Pass | MIT | |
| Verify Reelrselbach/reel | 118 | — | ~2k | Automated safety check: Pass | Unlicense | |
| Steerdisler/mac-mini-agent | 272 | — | ~2.1k | Automated safety check: Pass | None | |
| Computer Usekunpengtalk/PeakCode | 166 | — | ~2.5k | Automated safety check: Pass | MIT | |
| Computer Useclacky-ai/openclacky | 1.2k | — | ~1.7k | Automated safety check: Pass | MIT |
To3akaRin/mac-computer-use
操作 macOS 桌面应用,探测窗口和自动化接口、截图、读取或修改辅助功能元素、执行鼠标键盘动作,以及通过 CDP 操作内嵌 Chromium 页面。适用于桌面应用自动化与界面验收;普通网页任务优先使用已有浏览器工具。
rselbach/reel
Verify Reel, the macOS menu-bar screen recorder, by launching a disposable app bundle and driving its real UI with Computer Use.
disler/mac-mini-agent
macOS GUI automation CLI. An agent skill from disler/mac-mini-agent.
kunpengtalk/PeakCode
Drive a macOS app through the computer tool — read its accessibility tree, act on elements, and use real input only when the tree cannot reach the target.
clacky-ai/openclacky
Drive the desktop — macOS, or the Windows desktop through WSL — when a task needs a native app, dialog, menu bar, file picker or anything the terminal and browser tools cannot reach.
vellum-ai/vellum-assistant
Automate native macOS apps and system interactions via osascript (AppleScript)
AFK-surf/OpenBridge
Best practices and example-driven guidance for building SwiftUI views and components.
AFK-surf/OpenBridge
Write, review, or improve SwiftUI code following best practices for state management, view composition, performance, modern APIs, Swift concurrency, and iOS 26+ Liquid Glass adoption.
AFK-surf/OpenBridge
Design or restyle user interfaces using vendored DESIGN.md references from popular product and brand-inspired visual systems.
AFK-surf/OpenBridge
Analyze Bridge agent execution logs from ~/.bridge/sessions, reconstruct the agent's actual runtime behavior, and explain tool execution, failures, retries, and artifacts from persisted session files.
AFK-surf/OpenBridge
Convert files between formats. An agent skill from AFK-surf/OpenBridge.
AFK-surf/OpenBridge
Manage skills: create, install, modify, or delete skills. An agent skill from AFK-surf/OpenBridge.
Works with
Categories
Debug and validate OpenBridge on a real macOS desktop through mini-machine plus full VNC computer-use. Openbridge Debug is an agent skill from AFK-surf/OpenBridge. Debug and validate OpenBridge on a real macOS desktop through mini-machine plus full VNC computer-use.
Openbridge Debug fits situations like: local broker automation is not enough; you need end-to-end GUI verification on macOS; local changes should be pushed to a branch and rebuilt from a fresh machine clone instead of transferred manually.
Run `npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a claude-code`. Or copy the skill folder (macos/DevKit/skill in AFK-surf/OpenBridge) into .claude/skills/openbridge-debug in your project. Claude Code loads it when a task matches its description.
Run `npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a codex`. Or copy the skill folder (macos/DevKit/skill in AFK-surf/OpenBridge) into .agents/skills/openbridge-debug in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AFK-surf/OpenBridge --skill openbridge-debug -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/openbridge-debug, .gemini/skills/openbridge-debug, .github/skills/openbridge-debug and .opencode/skills/openbridge-debug in your project.
Going by SKILL.md and its folder, Openbridge Debug needs a shell for the scripts in its folder, the command-line tools its instructions call (gh, ssh, python3, yarn and bash) and credentials named CUEBOARD_GH_TOKEN. Our summary lists: Python 3; Node.js; A Bash shell; A credential in CUEBOARD_GH_TOKEN.
SKILL.md contains no URLs. Its commands use gh and ssh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Openbridge Debug is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Openbridge Debug: Mac Computer Use (To3akaRin/mac-computer-use, 1.1k stars), Verify Reel (rselbach/reel, 118 stars), Steer (disler/mac-mini-agent, 272 stars) and Computer Use (kunpengtalk/PeakCode, 166 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
AFK-surf (a GitHub organization) maintains it in AFK-surf/OpenBridge, which has 430 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on June 10, 2026.
Source: AFK-surf/OpenBridge on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.