Clawd Cursor

把屏幕编译成一张可寻址的 UI 地图,让任何 AI 代理安全地操控真实桌面——本地运行、跨平台、模型无关,并自动验证每一步操作。

Star 数
★ 406
最近更新
今天
License
MIT
主语言
TypeScript

30 秒速览

运行形态
MCP 服务器命令行工具Agent 插件 / 技能
可在哪里用
通用 · 跨平台Codex · Claude Code
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
Node.js 20+npm(全局安装:clawdcursor)macOS:用于截图/视觉的 Xcode Command Line ToolsLinux:tesseract-ocr、python3-gi、gir1.2-atspi-2.0、Wayland 上的 ydotoolShell / 命令行网络访问本地文件系统MCP Server
典型场景
使用 Claude Code 或 Cursor 的开发者,希望代理能直接操作 Outlook、记事本等没有 API 或 CLI 的本机 GUI 应用
不适合
  • 不愿授予辅助功能/屏幕录制权限的 macOS 用户
  • 无法安装 tesseract-ocr、python3-gi 等系统包的 Linux 环境

这个 Agent 能做什么,适合哪些场景?

Clawd Cursor 是一个本地 MCP 服务器,让 Claude Code、Cursor、Windsurf、Zed、OpenAI Codex 等任何支持工具调用的代理操控真实桌面:点击、输入、读屏、打开应用。它的核心创新是把可访问性树与 OCR 融合成一张置信度评分的 UI 状态地图(UI State Compiler),每个元素带有稳定的 el_NN 标识,代理按元素 ID 而非像素坐标操作,只有画布类应用才退回到截图/视觉这一最昂贵的层级。每一次操作都经过唯一的 safety.evaluate() 安全门(允许/确认/阻止),并支持通过 expect 参数在真实屏幕上复核操作结果,偏离时返回 DEVIATION。它跨 Windows、macOS 和 Linux 运行,提供 stdio 和 HTTP 两种 MCP 传输方式,工具面包括 7 个复合工具和 98 个细粒度原语。代理接管桌面时会显示带红点的横幅,双击即可紧急停止。

运行时通过 compile_ui 将可访问性树(免费)与 OS 级 OCR(低成本)融合为带置信度评分、以 el_NN 命名的元素地图,find_button / find_field 按语义定位目标;代理通过 computer、accessibility、window、system、browser、task、batch 七个复合工具执行 click、type、key、invoke、open_app 等约 10–20 个动作枚举,或直接调用 98 个细粒度工具。每个调用先经过 safety.evaluate() 安全门,分为允许(立即执行)、确认(发送、删除、购买等需人工批准)、阻止(Ctrl+Alt+Del 等)三级。带 expect 的操作会在短暂稳定窗口后重读实时屏幕,状态不符时返回 DEVIATION。稀疏的可访问性树通过 system.detect_webview 切换到基于 CDP 的 browser.* 工具;纯画布应用使用截图加坐标点击作为最后手段。部署边界为完全本地:stdio MCP 由编辑器宿主拉起,或以 clawdcursor agent 守护进程在 127.0.0.1:3847 提供 HTTP MCP(Bearer 令牌认证),不默认收集遥测。

  1. 使用 Claude Code 或 Cursor 的开发者,希望代理能直接操作 Outlook、记事本等没有 API 或 CLI 的本机 GUI 应用
  2. 需要自动化含遗留桌面软件的业务流程的用户,例如按名称找到表单字段并输入,替代脆弱的像素坐标脚本
  3. 在 macOS 上使用 Apple Vision OCR、Windows 上使用 Windows.Media.Ocr、Linux 上使用 Tesseract 的本地化场景,要求屏幕内容不出本机
  4. 把 Claude 等昂贵模型用于规划、把任务通过 task() 委托给内置低成本 LLM 循环执行的混合编排团队
  5. 需要审计能力的自动化运维:每步操作经统一安全门,敏感应用(邮箱、银行、密码管理器)自动升级为人工确认
  6. 使用无头代理(Agent SDK、自建循环)通过 HTTP MCP 在 127.0.0.1:3847 上调用同一套工具目录的集成者

如何安装或部署这个 Agent?

需要 Node.js 20+。全局安装(推荐,可在磁盘上审查、可固定版本):

npm i -g clawdcursor

clawdcursor consent --accept # 一次性桌面控制授权(必需)
clawdcursor grant # 仅 macOS:批准辅助功能 + 屏幕录制

各系统前提:Windows 开箱即用(sharp 与 @nut-tree-fork/nut-js 提供预编译二进制);macOS 需 Xcode Command Line Tools(xcode-select --install)以启用截图/视觉;Linux 需 tesseract-ocr、python3-gi、gir1.2-atspi-2.0,Wayland 下还需 ydotool。

接入 Claude Code:

claude mcp add clawdcursor -s user -- clawdcursor mcp --compact

接入 OpenAI Codex(~/.codex/config.toml):
[mcp_servers.clawdcursor]

command = "clawdcursor"
args = ["mcp", "--compact"]

Cursor / Windsurf / Claude Desktop 在其 MCP 配置中加入 {"mcpServers":{"clawdcursor":{"command":"clawdcursor","args":["mcp","--compact"]}}};Zed 使用 context_servers 键。也可一键装插件:claude plugin marketplace add AmrDab/clawdcursor && claude plugin install clawdcursor@clawdcursor。

如何使用这个 Agent?

安装并配置后,编辑器宿主会在需要时自动通过 stdio 拉起 clawdcursor mcp。对代理直接下达自然语言任务即可,例如:"打开 Outlook 并回复 Sarah 的最新邮件"。无头/守护进程模式:运行 clawdcursor agent(在 127.0.0.1:3847 提供 HTTP MCP,Bearer 令牌位于 ~/.clawdcursor/token,POST JSON-RPC 到 /mcp),或 clawdcursor agent --no-llm(仅工具面)。典型调用示例:

computer({ action: "key", combo: "mod+s" }) // 跨平台的 Cmd+S / Ctrl+S
accessibility({ action: "invoke", name: "Send" }) // 按名称而非坐标点击

window({ action: "open_app", name: "Outlook" })

task({ instruction: "open Notepad and type hello" }) // 委托给内置循环

已知后续步骤时用 batch({steps:[…]}) 一次调用折叠多步,每步仍过安全门。故障排查可用 clawdcursor doctor(配置 agent 模式的 LLM)、clawdcursor status(就绪检查)、clawdcursor stop(停止所有模式)。

这个 Agent 有哪些优点和局限?

优点
  • 感知分层省钱:可访问性树免费 → OCR 低成本 → 截图昂贵,只有最后一级才把像素送入模型上下文,令牌成本随任务难度递增
  • 独有的事后验证:consequential 操作可带 expect 参数,代理在实时屏幕上复核结果,UI 未按预期变化时返回 DEVIATION 而非虚假成功
  • 统一安全门:所有调用(stdio、HTTP、内置循环)都经 safety.evaluate() 允许/确认/阻止,代理无法绕过;敏感应用自动升级为人工确认
  • 人在环中始终知情:代理操作时显示带闪烁红点的桌面控制横幅,双击即停
  • 完全本地、模型无关、跨三平台:配合本地模型时数据不出机器,单一 MCP 配置即可接入任何 MCP 宿主
局限
  • macOS 需授予辅助功能(必需)与屏幕录制(可选)权限,并安装 Xcode Command Line Tools 才能用截图/视觉,首次配置有摩擦
  • Linux 依赖系统级包(tesseract-ocr、python3-gi、gir1.2-atspi-2.0,Wayland 还需 ydotool),npm 无法自动安装
  • Windows/Linux 的 OCR 与截图能力依赖各 OS 自带栈,深色/非常规 UI 或空的可访问性树需逐级升级感知层级,画布类应用只能退回坐标点击
  • 验证与安全门带来额外往返开销;batch 虽可折叠步骤但每次仍是逐一感知并过安全门
  • 需要 Node.js 20+ 且推荐全局安装(而非 npx 自动拉取),对受限环境是额外的运维约束

这个 Agent 与同类方案有什么区别?

README 将其与多类方案对比:Windows-MCP 和 Terminator 是同类桌面 MCP 服务器;browser-use 与 Playwright MCP 仅限浏览器;OmniParser 与 UI-TARS 是以视觉为中心的解析方法,每次观察都需截图进模型上下文;Anthropic computer-use 仅限 Claude 且屏幕数据上云。Clawd Cursor 的差异点在于:任意桌面应用(非仅网页)、跨三 OS、无需视觉模型的感知(a11y+OCR 融合)、自验证操作、单安全门、任意模型/厂商、MCP 原生且完全本地。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Clawd Cursor 当前 74 · 存在缺口 MCP 服务器免费 + 模型费 ★ 406 今天 TypeScript Codex · Claude Code
Open Computer Use(MCP 桌面服务) 44 · 缺口较多 命令行工具免费 + 模型费 ★ 2.7k 5 天前 Swift Codex · Claude Code
AIHawk – AI 浏览器代理 59 · 缺口较多 MCP 服务器免费 + 模型费 ★ 32k 今天 TypeScript Codex · Claude Code
macOS Harness 55 · 缺口较多 命令行工具免费 + 模型费 ★ 965 9 天前 Python Codex · Claude Code

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
存在缺口
74/ 100 五分制 3.7 / 5
本评测基于 2026年9月9日 的源码;此后该项目发布了 14 个正式版本,尚未复审。分数与结论只代表评测时的版本。 最近版本 ↓
信任安全 21/29
可靠稳定 9/14
适用触发 15/18
规范维护 14/18
有效结果 10/13
证据核验 5/8
查看各维度的扣分理由
信任安全21 / 29 · 3.6/5

证据显示:单点 safety.evaluate() 门禁(allow/confirm/block)、HTTP 仅绑定 127.0.0.1 并带 bearer token、屏幕文本包在 <untrusted-screen-content> 标签中、日志脱敏密码字段、明确的确认/阻断分级表、consent 一次性授权可撤销(--revoke)、uninstall 提供清除路径、MIT + 作者署名。扣分点:safety gate 与平台适配层的声明主要来自 README,未见 gate 实现代码本身;授予的桌面级权限(Accessibility、屏幕录制、合成输入)本质上远超最小权限,扣至 2。

可靠稳定9 / 14 · 3.2/5

CI 矩阵覆盖 3 OS × 2 Node 版本,含 lint、typecheck、audit 门禁、覆盖率棘轮和性能冒烟;测试文件(pidfile、orphan teardown、credentials)质量高、注释详尽,含合理的 skip 理由。扣分点:断言 '1,000+ tests' 未能从提供的样本核实;headless Linux 上存在已知原生模块段错误(测试注释自认)。

适用触发15 / 18 · 4.2/5

明确的目标受众(MCP agent 用户)、清晰的'最后一步回退'定位、跨 Windows/macOS/Linux/Wayland 的环境矩阵含每系统前置条件与已知限制(Wayland 需 ydotool、无头 Linux 段错误),README 对最佳使用场景与反场景都有说明。扣分点:触发精度与能力边界主要由叙述支持而非规范文件。

规范维护14 / 18 · 3.9/5

README 结构清晰(安装/工作原理/工具箱/平台/安全/架构/CLI),package. 元数据完整(repository、bugs、bin、files、engines、overrides),MIT LICENSE 全文、SECURITY.md 有漏洞报告渠道、CHANGELOG 存在、版本同步脚本(sync-version)。扣分点:CHANGELOG 与 SKILL.md 内容未在样本中,维护责任仅有 CI 配置间接体现,发布者未经验证。

有效结果10 / 13 · 3.8/5

a11y+OCR 融合、stable el_NN 寻址、expect 验证与 DEVIATION 报告、分层感知控制 token 成本——相对纯截图方案有明确边际价值,且对比表诚实标注竞品。扣分点:token/性能收益为宣称未实测;cost_benefit 依赖使用场景(需 Node 20+、各 OS 原生依赖)。

证据核验5 / 8 · 3.1/5

claims 大多可追溯到具体机制(safety gate、consent 文件、pidfile 测试、CI workflow 与 README 描述一致),测试注释坦诚记录失败尝试与 skip 理由,已知接受的 audit 告警(issue #117)如实披露。扣分点:性能/成本/可靠性结论为推断,静态审查无法执行验证,故保持低置信度。

风险与缓解建议
  • 本工具要求桌面级高权限(辅助功能、屏幕录制、合成输入),任何漏洞等同攻击者获得与会话用户相同的控制权——仅在你信任本机运行的 agent 时启用。
  • safety gate 的 allow/confirm/block 行为主要由 README 描述,本次静态审查未含实现代码;部署前应自行审查 src/core 中的 SafetyLayer 实现并验证确无绕过路径。
  • HTTP 模式的 bearer token 存于 ~/.clawdcursor/token,注意日志、错误响应与本地网页(CORS)泄漏风险;定期确认端口仅绑定 127.0.0.1。
  • CI 已知接受两处 moderate 级依赖告警(file-type 无补丁、ip-address XSS);生产使用前复核这些传递依赖的现状。
  • 无头 Linux 上存在原生模块退出段错误的已知问题,Wayland 支持依赖外部 ydotool,部署前用 clawdcursor status 自检。
证据充分度:低 评估于 2026年9月9日 审查版本 7761183b5a2d 评估后仓库已有新提交,评分可能未覆盖最新改动
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v1.5.23
    发布说明摘录
    Fixed - **Windows: find, wait_for and invoke no longer match single letters.** An element whose name sits inside the request matched however short it was: a lone "C" from a PDF tab matched "User code 0" and "MCP Registry". That reverse match now needs a real part of the request (3+ characters, at least half its length), close to macOS and Linux, which only match the forward way.
    在 GitHub 查看 ↗
  2. v1.5.22
    发布说明摘录
    Added - A pause ends the moment the user's step is done. pause_for_user (MCP) and the built-in agent's ask_user take done_when: what is true on screen once the user has done their part (the same checks as expect). clawdcursor checks it every 1.5 s and continues by itself, so the prompt goes from blue back to amber with no Resume click. A done_when that is already true is rejected. Resume still works. Changed - Agents ask the user for one step only. Tool descriptions, the MCP instructions and SKILL.md now say: hand over only what the user must do …
    在 GitHub 查看 ↗
  3. v1.5.21
    发布说明摘录
    Fixed - set_value with no field name or role types nothing. It fell back to typing into the window's largest editable field (seen live: the browser's address bar) and reported Set "" = … chars. It now fails and says to name the field, pass a compile_ui reference, or use type. - **macOS: a failed screen capture at startup no longer breaks every tool (#244).** With no screenshot helper and no Screen Recording grant, the startup probe failed and took window, key and accessibility down with it. The screen size now comes from NSScreen; only screenshots and OCR …
    在 GitHub 查看 ↗

常见问题

它会把我的屏幕数据发送到哪里?
默认无遥测,HTTP 服务仅绑定 127.0.0.1 并要求 Bearer 令牌。截图保留在内存中;使用本地模型时数据不出机器,使用云端供应商时截图只发往你配置的端点。
用截图还是可访问性树?会花多少令牌?
感知按成本分层:可访问性树约免费、OCR 低成本、截图昂贵(唯一把像素放入模型上下文的层级),代理只在必要时逐级上升,令牌成本大致随任务难度变化。
代理会不会误删文件或误发邮件?
所有调用经过唯一的 safety.evaluate() 门:读取、导航类直接允许;发送、删除、购买、转账及敏感应用(邮箱、银行、密码管理器)暂停等待人工批准;Ctrl+Alt+Del、注销、强制退出等组合键直接拒绝。代理无法绕过该门。
如何随时中断正在操作的代理?
代理操控桌面期间屏幕会显示带闪烁红点的"桌面控制进行中"横幅,双击即可停止。也可用 clawdcursor stop 停止所有运行模式。
支持哪些宿主和运行方式?
任何 MCP 宿主均可:Claude Code、Claude Desktop、Cursor、Windsurf、Zed、OpenAI Codex 或自建循环。stdio 模式由宿主按需拉起;HTTP 模式由 clawdcursor agent 守护进程在 :3847 提供,两者共享同一工具目录。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents