Opencu

io.github.Daily-AC由 GitHub 帳號 Daily-AC 發布v0.9.1更新於 Nov 6, 2026

Independent local computer-use engine and MCP server for macOS, Windows, Linux and Android

已驗證STDIO僅桌面瀏覽器自動化開發者工具

概覽

AI 產生的概覽

本機電腦操作類 MCP 伺服器,讓 AI 助理讀取並操作 macOS、Windows、Linux 與 Android 上的桌面應用程式。

可以做什麼
  • 列出執行中和可啟動的應用程式,讀取視窗的無障礙樹,並可視需要附上截圖。
  • 點擊、拖曳、捲動,輸入文字、貼上、送出按鍵與快速鍵,修改數值並觸發元素自帶的操作。
  • 將應用程式切到前景,並在一次呼叫中批次執行最多 16 個操作,回傳單一最終狀態。
  • 啟動、檢查或停止代理桌面:macOS 與 Android 上是虛擬顯示器,Windows 上是獨立工作階段。
適用情境
適合需要助理完成只能在圖形介面中進行的任務,例如填寫表單、執行安裝程式、使用「另存新檔」對話框或關閉彈出視窗,且希望在自己的電腦而非託管服務上完成。
執行需求
以本機 stdio 程序執行,透過 npm 安裝;macOS 需 Apple 晶片、macOS 14 以上與 Node.js 22+,Windows 與 Linux 使用預先建置的 x64 版本(Linux 僅支援 X11),Android 需從電腦透過 adb 驅動。macOS 需授予輔助使用與螢幕錄製權限。不需帳號或模型金鑰。
安裝前請注意
它是人工急停開關而非沙箱:助理操作的應用程式共用你的帳號與檔案,任何能執行該指令的本機程序都會使用其權限。它會在你的應用程式中執行真實的點擊、輸入與數值修改,且在 Windows、Linux 與 Android 上,你 10 秒沒有輸入後會佔用前景。Windows 版本未簽章,macOS 套件未公證。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Opencu,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[OpenCU]

OpenCU

Computer use for any AI agent, on your own machine.

https://github.com/user-attachments/assets/5da04b21-47fe-44c4-9d3d-e2b3a2e9a9c6

Re-created in code from a real session.

OpenCU is an MCP server that lets Claude Code, Codex or any other MCP client read
and operate the apps on macOS, Windows, Linux and Android. It runs locally, needs no account
or model key, and the person at the keyboard can stop it at any time.

[Latest release] [macOS, Windows, Linux, Android] [MIT license]

Install · Connect · Measured · Limitations · 简体中文


Why OpenCU

It works beside you. On macOS, input goes to the target app's process and window. Your cursor stays where it is and the app in front keeps the keyboard.

It can have a screen of its own. Start the agent desktop and the agent works on a virtual display (macOS) or in a separate session (Windows), which you watch in an ordinary window.

You stay in charge. You can always stop it: the Stop button on macOS, a physical Escape on Windows and Linux, three presses of volume-down on Android. On Windows, Linux and Android it will not take the foreground within 10 seconds of your last input. A stopped connection never restarts on its own.

It is measured. On Windows tasks that can only be done through the UI, the same agent passed 7 of 8 trials with OpenCU and 2 of 8 with a shell and screenshots. Details below.

It is yours. MIT licensed, with no account, no proprietary runtime and nothing hosted. The agent you already use brings the model.

Install

Windows · PowerShell, as your normal user, no administrator rights

powershell
irm https://github.com/Daily-AC/opencu/releases/latest/download/install.ps1 | iex

Linux · x86_64 with glibc, X11 desktops

sh
curl -fsSL https://github.com/Daily-AC/opencu/releases/latest/download/install.sh | sh

macOS · Apple silicon, macOS 14 or later, Node.js 22+

sh
npm install -g @z10/opencuopencu setup    # grant Accessibility and Screen Recording

Android · preview, Android 14 or later, driven from a computer over adb (USB or wireless debugging)

sh
npm install -g @z10/opencu    # Apple silicon Macs, with adb; other computers build from source, see the Android guideopencu android doctor

To check an installation, run opencu doctor (on Windows and Linux, the command from the table below). Platform guides: macOS · Windows · Linux · Android. Connecting your own host to Android: Android integration.

Connect your agent

OpenCU is a stdio MCP server. The command to register is:

PlatformCommand
macOSopencu
Windows%LOCALAPPDATA%\OpenCU\bin\opencu.cmd
Linux~/.local/share/opencu/bin/opencu
Androidopencu android (one phone on adb, or set ANDROID_SERIAL)
sh
# Claude Codeclaude mcp add --scope user opencu -- opencu
# Codexcodex mcp add opencu -- opencu

On Windows, Linux and Android, use the command from the table instead of opencu.

Any other MCP client (on Android, add "args": ["android"]):

json
{  "mcpServers": {    "opencu": { "command": "opencu" }  }}

Then ask your agent to do something in an app. It starts by reading the app with get_app_state.

What the agent can do

ToolWhat it does
list_appsList running and launchable apps
get_app_stateRead a window's accessibility tree, with a screenshot on request; launches the app if needed
click · drag · scrollAct on an element by its index, or on screenshot coordinates
type_text · paste · press_keyType Unicode text, paste, send keys and shortcuts
set_value · select_text · perform_secondary_actionChange values and use an element's own actions
activate_appBring an app to the front when a step needs it
run_actionsRun up to 16 actions in one call and return one final state
agent_desktopStart, check or stop the agent desktop

select_text is macOS and Linux only. Linux has no agent_desktop.

Input requires a fresh observation of the same app, and every error starts with a stable code such as STOPPED_BY_PERSON. Details are in Tools and the engine contract.

Measured

With and without OpenCU. The same agent and model, with a shell and screenshots alone or with OpenCU added:

PlatformTasksShell and screenshotsWith OpenCU
Windows 11 VM4 tasks that need the UI: a form, an installer, Save As, an interrupting popup2/87/8
Windows 11 VM3 Office and OBS tasks that can be scripted around6/63/6
Linux XFCE container5 desktop tasks10/1010/10, 40–65% faster inside app windows

On the scriptable tasks the shell-only agent wrote LibreOffice and OBS scripts instead of using the UI; two of OpenCU's three failures there were a modal-dialog defect fixed in 0.3.2. Evidence: Windows, Linux.

Against open-computer-use. The same agents, models and tasks with OpenCU and with iFurySt/open-computer-use 1.1.2 at its default settings:

PlatformTasksOpenCUopen-computer-use
Linux5 desktop tasks, 2 trials each10/109/10
Windows 11 VM4 UI-only tasks, 2 trials each7/84/8
macOS VM (MacArena subset)10 tasks, 1 trial each4/104/10, the same tasks
  • Linux: the two Firefox tasks took OpenCU 244 and 96 seconds (median) and open-computer-use 872 and 552. open-computer-use did not list Firefox until the agent turned on the AT-SPI bus itself, and in one trial its set_value and type_text left the Firefox entries empty without an error.
  • Windows: in all eight open-computer-use trials the agent also wrote its own Win32 input code, and its four passes completed input that way. It wrote none with OpenCU. open-computer-use ran behind a bridge on the VM (1.5 to 7 seconds per call), so its Windows timings are not comparable.
  • macOS: both passed the same four tasks. On those, the agent took 544 seconds in total with OpenCU and 1,498 with open-computer-use; median click time was 292 ms against 2,029 ms. The OpenCU build in that VM was 0.2.0.

The samples are small and each platform used one model. We did not test open-computer-use's locked-screen mode, its background input on covered Chrome windows, or its global pointer setting (evidence).

Platforms

macOSWindowsLinuxAndroid
Installnpm, Apple siliconPrebuilt x64, unsignedPrebuilt x64npm on Apple silicon Macs, otherwise build from source; runs over adb
InputBackground, to the target app onlyForeground, after 10 s without your inputForeground, after 10 s without your inputForeground, after 10 s without your input
Agent desktopVirtual display with a watch-only previewSeparate session in a windowNot availableVirtual display; watch-only preview with the optional phone app
Screen lockedRefused; the agent desktop pausesRefused; the agent desktop keeps indexed clicks and valuesRefusedRefused

Stopping it

  • macOS: the V in the menu bar has Stop. In agent desktop mode, the preview's Stop button does the same.
  • Windows and Linux: a physical Escape stops input for the rest of the connection, and your own input during an action stops that action. The Windows agent desktop also has a Stop button.
  • Android: press volume-down three times within 1.5 seconds. While the agent works on its background screen, the optional phone app's status island also has Stop. Touching the main screen during an action there stops that action.
  • A person's stop is final for the connection. Agents must never reconnect around it.

OpenCU is a person-facing brake, not a sandbox: the agent's apps share your account and files, and any local process that can run opencu uses its permissions.

Limitations

  • macOS: Apple silicon only. The package is signed with OpenCU's own certificate and is not notarized, so install it with npm, not a browser download. macOS asks about once a month whether OpenCU may keep capturing the screen. It cannot operate a locked Mac.
  • Windows: the package is unsigned, so SmartScreen or Defender may warn. Outside the agent desktop, input uses the foreground.
  • Linux: X11 only; Wayland is refused. Input uses the foreground.
  • Android: a preview, tested on one phone (OPPO PGBM10, Android 14). It runs from a computer over adb; the npm package installs only on Apple silicon Macs, and other computers build from source. The phone app is optional and only shows status, a preview and Stop.
  • Custom-drawn apps such as Blender, and windows in the Stage Manager strip, need the foreground.

The full list, with measurements, is in Limitations.

Documentation

Development

sh
npm testpython3 scripts/test-native.pynode scripts/verify-gui.mjs

verify-gui.mjs builds two disposable AppKit fixtures, keeps one in the foreground and operates the other in the background through the MCP server. On Windows, node scripts/verify-gui-win.mjs uses disposable WinForms and Chrome fixtures and takes the foreground.

python3 scripts/package-opencu.py builds a self-contained archive with Node and the MCP dependencies for your own Macs, signed with your local identity, and python3 scripts/verify-release.py checks it offline.

License

Original OpenCU code is available under the MIT License. Bundled open source dependencies retain their own licenses. No license for proprietary third party software is included or implied.

來源:README.md,提交 eda54d0

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:軟體包安裝失敗。

版本歷史

2
  1. v0.9.1最新Nov 6, 2026
  2. v0.9.0Nov 5, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分