{"_id":"@bondli-skills/desktop-operator","_rev":"4-61d457bfa51025206b05a47ca915fcd9","name":"@bondli-skills/desktop-operator","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@bondli-skills/desktop-operator","version":"1.0.0","keywords":["openclaw","automation","rpa","macos","electron","cdp"],"license":"MIT","_id":"@bondli-skills/desktop-operator@1.0.0","maintainers":[{"name":"bondli","email":"250934756@qq.com"}],"dist":{"shasum":"7c6e7d33dfa85e1fd560b9993d7b960f75f93904","tarball":"https://registry.npmjs.org/@bondli-skills/desktop-operator/-/desktop-operator-1.0.0.tgz","fileCount":6,"integrity":"sha512-wAccHsLwRb/xX5AfdjtdzljjfUU7K4qwSdtd/8MxxpYhhKoeuJW3COxkBMK86NP4HS4nP7d1pk144Df7yiqjBA==","signatures":[{"sig":"MEUCIQD+AGsH2bSorCZvWnKNyCTbsikWoUp97+ji1uWv3L03RAIgVXMqRMn0mQfH8KPBspI+QOeMP5hEwF6/Hin+J2MtI1Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13667},"main":"dist/index.js","type":"module","_from":"file:bondli-skills-desktop-operator-1.0.0.tgz","types":"dist/index.d.ts","scripts":{"build":"tsc","clean":"rm -rf dist","start":"tsx src/index.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bondli","email":"250934756@qq.com"},"_resolved":"/private/var/folders/y7/4446sqhs4g3f3bmjzxmbdc740000gn/T/eccef59a3483b33a196a27cd8b5d8c49/bondli-skills-desktop-operator-1.0.0.tgz","_integrity":"sha512-wAccHsLwRb/xX5AfdjtdzljjfUU7K4qwSdtd/8MxxpYhhKoeuJW3COxkBMK86NP4HS4nP7d1pk144Df7yiqjBA==","_npmVersion":"11.11.0","description":"OpenClaw desktop automation skill for Electron apps via CDP","directories":{},"_nodeVersion":"22.18.0","dependencies":{"puppeteer":"^22.0.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/desktop-operator_1.0.0_1773903869203_0.6783286318116406","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bondli-skills/desktop-operator","version":"1.0.1","keywords":["openclaw","automation","rpa","macos","electron","cdp"],"license":"MIT","_id":"@bondli-skills/desktop-operator@1.0.1","maintainers":[{"name":"bondli","email":"250934756@qq.com"}],"dist":{"shasum":"9a2c422955d5a361fea296d9cda0c3ec0a64ece4","tarball":"https://registry.npmjs.org/@bondli-skills/desktop-operator/-/desktop-operator-1.0.1.tgz","fileCount":7,"integrity":"sha512-mhgPreSSbGZiLsrC4IP3YkhhTckcxyefFerCIVzB02iKW93QTTXLUbQAGIwcKHBUs5bjN27nMrovLrHHlDxczQ==","signatures":[{"sig":"MEYCIQCxZySSXiLWKYJiCIl3bja/vAXnUNA71vP8TDlU93gS8AIhAMqEjF9OX9mYUPDnpHFeXlX2p7hjDdKHnCKrjFn0qLj4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14067},"main":"dist/index.js","type":"module","_from":"file:bondli-skills-desktop-operator-1.0.1.tgz","types":"dist/index.d.ts","scripts":{"build":"tsc","clean":"rm -rf dist","start":"tsx src/index.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bondli","email":"250934756@qq.com"},"_resolved":"/private/var/folders/cj/r9_g5rts3xv744s65g3mg8q40000gn/T/84201522fe3070f0c2afa0d3d71be496/bondli-skills-desktop-operator-1.0.1.tgz","_integrity":"sha512-mhgPreSSbGZiLsrC4IP3YkhhTckcxyefFerCIVzB02iKW93QTTXLUbQAGIwcKHBUs5bjN27nMrovLrHHlDxczQ==","_npmVersion":"11.5.2","description":"OpenClaw desktop automation skill for Electron apps via CDP","directories":{},"_nodeVersion":"22.17.0","dependencies":{"puppeteer":"^22.0.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/desktop-operator_1.0.1_1773991868430_0.9817424370185901","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bondli-skills/desktop-operator","version":"1.0.2","keywords":["openclaw","automation","rpa","macos","electron","cdp"],"license":"MIT","_id":"@bondli-skills/desktop-operator@1.0.2","maintainers":[{"name":"bondli","email":"250934756@qq.com"}],"dist":{"shasum":"9eaa690c00d78d787b068cf4b8e268c523600bee","tarball":"https://registry.npmjs.org/@bondli-skills/desktop-operator/-/desktop-operator-1.0.2.tgz","fileCount":7,"integrity":"sha512-ul4XjxXJEmMP8wHpGDjl2xuYwRLd6bExsxhu4qwfXsbiFgZDrXqm7nYTEGKEEz9UEUt9W6K3dmlTiuE9lfgRGw==","signatures":[{"sig":"MEYCIQDOT1zpcRdvLQUGU+w9w0GnytvSlNjeAjkawETZwNBGeAIhAJxfwjFhpX9v6+A07mVqXxXaWveldSKpK2ETtFPG00I6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14360},"main":"dist/index.js","type":"module","_from":"file:bondli-skills-desktop-operator-1.0.2.tgz","types":"dist/index.d.ts","scripts":{"build":"tsc","clean":"rm -rf dist","start":"tsx src/index.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bondli","email":"250934756@qq.com"},"_resolved":"/private/var/folders/cj/r9_g5rts3xv744s65g3mg8q40000gn/T/d3b339594e61e407b3f57d99bcbc08b7/bondli-skills-desktop-operator-1.0.2.tgz","_integrity":"sha512-ul4XjxXJEmMP8wHpGDjl2xuYwRLd6bExsxhu4qwfXsbiFgZDrXqm7nYTEGKEEz9UEUt9W6K3dmlTiuE9lfgRGw==","_npmVersion":"11.5.2","description":"OpenClaw desktop automation skill for Electron apps via CDP","directories":{},"_nodeVersion":"22.17.0","dependencies":{"puppeteer":"^22.0.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/desktop-operator_1.0.2_1774266843524_0.8142568375240291","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@bondli-skills/desktop-operator","version":"1.0.3","description":"OpenClaw desktop automation skill for Electron apps via CDP","type":"module","main":"dist/index.js","types":"dist/index.d.ts","keywords":["openclaw","automation","rpa","macos","electron","cdp"],"dependencies":{"puppeteer":"^22.0.0","puppeteer-core":"^22.15.0"},"license":"MIT","scripts":{"build":"tsc","typecheck":"tsc --noEmit","clean":"rm -rf dist","start":"tsx src/index.ts"},"_id":"@bondli-skills/desktop-operator@1.0.3","_integrity":"sha512-NzJdLCKUkHjGFQNKtrm+sq+HZpykc9yDwXjusBqNulk4X0W4Rfs3KrqXqX/spNFDdPkyyN+CtEcj/lgUvl5nZQ==","_resolved":"/private/var/folders/cj/r9_g5rts3xv744s65g3mg8q40000gn/T/b682b312f4a0433fe34723f58db52e6d/bondli-skills-desktop-operator-1.0.3.tgz","_from":"file:bondli-skills-desktop-operator-1.0.3.tgz","_nodeVersion":"22.17.0","_npmVersion":"11.5.2","dist":{"integrity":"sha512-NzJdLCKUkHjGFQNKtrm+sq+HZpykc9yDwXjusBqNulk4X0W4Rfs3KrqXqX/spNFDdPkyyN+CtEcj/lgUvl5nZQ==","shasum":"b2461891f7a9421a830acc59f22ffae4d5aa26bb","tarball":"https://registry.npmjs.org/@bondli-skills/desktop-operator/-/desktop-operator-1.0.3.tgz","fileCount":7,"unpackedSize":16244,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD+pR94iEHzbVqv9Yg63gZ6BIWzSPwZOi7kIWuVCgSyIAIgKlmygPuwv8RetIuC08MJ0xkviqNuqkF6hB1cHqhj3sY="}]},"_npmUser":{"name":"bondli","email":"250934756@qq.com"},"directories":{},"maintainers":[{"name":"bondli","email":"250934756@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/desktop-operator_1.0.3_1774532309830_0.5384940170136843"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-19T07:04:29.145Z","modified":"2026-03-26T13:38:30.213Z","1.0.0":"2026-03-19T07:04:29.375Z","1.0.1":"2026-03-20T07:31:08.586Z","1.0.2":"2026-03-23T11:54:03.672Z","1.0.3":"2026-03-26T13:38:30.087Z"},"license":"MIT","keywords":["openclaw","automation","rpa","macos","electron","cdp"],"description":"OpenClaw desktop automation skill for Electron apps via CDP","maintainers":[{"name":"bondli","email":"250934756@qq.com"}],"readme":"# Desktop Operator Skill\n\n通过 **Puppeteer CDP** 连接 Electron 应用，实现自动打开应用、查找文本元素、点击、截图的 OpenClaw Skill。\n\n## 原理\n\nElectron 应用基于 Chromium，支持通过 `--remote-debugging-port` 开启 Chrome DevTools Protocol（CDP）。本 Skill 启动 Electron 应用时注入该参数，再用 Puppeteer 连接 CDP，像操作网页一样精确定位 DOM 元素并点击，无需 OCR，准确率 100%。\n\n## 功能特性\n\n- 自动找到应用可执行文件并以 CDP 模式启动\n- Puppeteer 连接 CDP，枚举所有页面\n- 遍历 DOM 找到包含目标文本的可见元素并点击\n- 等待页面渲染稳定后截图\n- 纯 Node.js 实现，无 Python 依赖\n\n## 使用\n\n```bash\nnode dist/index.js --app \"应用名称\" --target \"目标文本\"\n```\n\n**参数说明：**\n\n| 参数       | 说明                                        | 示例        |\n| ---------- | ------------------------------------------- | ----------- |\n| `--app`    | 应用名称（`/Applications/` 下的 `.app` 名） | `DaveBella` |\n| `--target` | 要点击的元素文本                            | `订单中心`  |\n\n**示例：**\n\n```bash\nnode dist/index.js --app \"DaveBella\" --target \"订单中心\"\n```\n\n## 输出\n\n标准输出 JSON：\n\n```json\n{ \"screenshot\": \"/tmp/desktop_operator_skill_1234567890.png\" }\n```\n\n## macOS 权限\n\n首次使用需在系统设置中授权：\n\n**系统设置 → 隐私与安全性 → 辅助功能** — 允许 Terminal / Node\n\n## 注意事项\n\n- 仅适用于 Electron 应用（基于 Chromium）\n- 应用必须安装在 `/Applications/` 目录下\n- 如果应用已在运行，建议先退出再重新启动（避免 CDP 端口冲突）\n\n## 技术栈\n\n- **Node.js**: >= 18\n- **TypeScript**\n- **Puppeteer**: CDP 连接与 DOM 操作\n","readmeFilename":"README.md"}