DeepSeek Harness Hub
← 返回列表

geohotstan/dsh-computer-use

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
⚠ 装前注意

@zibokapi/dsh-codex-computer-use

基本兼容但装前注意:未发布到 npm registry,仅可从源码安装 · 最近上游提交 2026/8/16 · 已提供中文文档

桌面电脑使用 DeepSeek Harness:macOS 应用列表、辅助功能树窗口捕获、屏幕截图和合成输入,克隆自 Codex Computer Use

综合分
33.5
GitHub 分
33.5
用户评分
★ Stars
6
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add geohotstan/dsh-computer-use
未发布到 npm registry,仅可从源码安装,改用 GitHub 源安装
数据截至 2026/9/17(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查⚠ 装前注意

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

npm 包@zibokapi/dsh-codex-computer-use(未发布到 npm,仅可源码安装)
Node 引擎要求 >=22.19.0 · 基线 Node 22.19 满足
dsh CLI 依赖未声明 dsh 版本约束
入口文件main/exports/bin 已声明

未发布到 npm registry,仅可从源码安装

验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/18 07:10:26

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/cordis@deepseek-ai/dsh-attachment@deepseek-ai/dsh-attachment-local@deepseek-ai/dsh-invariants@deepseek-ai/dsh-llm@deepseek-ai/dsh-settings@deepseek-ai/dsh-skill@deepseek-ai/dsh-subprocess@deepseek-ai/dsh-subprocess-local@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-timeout
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

@zibokapi/dsh-codex-computer-use

一个面向 DeepSeek Harness 的独立插件:macOS 桌面计算机操作——应用列举、以截图加模型可读辅助功能树捕获关键窗口、合成鼠标键盘输入——克隆自 OpenAI 的 Codex Computer Use 窗口 API。输入投递与 Codex 自身的执行模型一致、后台优先:语义 AX 动作完全不需要焦点,原始事件走私有 SkyLight 路径(SLEventPostToPid 加键盘认证信封、字段戳记与免提升聚焦记录,移植自 MIT 许可的 trycua/cua 项目),并按符号回退到公开的 CGEvent.postToPid,因此用户的前台从不改变。不需要任何 OpenAI 组件。

设计遵循“辅助功能树优先”:computer_use_get_app_state 返回带编号、制表缩进的元素树;模型按元素索引操作,窗口相对坐标作为回退;同一应用的后续捕获返回相对上一棵树的差异而非完整树。

全部内容都在这一个包里:接缝、本地 Swift 守护进程提供者、computer_use_ 工具、审批策略与独立 MCP 服务器。与 OpenAI 实现之间的完整功能差异见 docs/codex-parity.md,该参考文档即对齐清单。

安装

本仓库是一个 DSH bundle:根 package.json 声明 dsh.bundle.patch → cordis.patch.yml,后者以本包自己的子路径(@zibokapi/dsh-codex-computer-use/)插入三行 host 插件。一次安装带齐全部内容。

1. 把插件安装进 profile
dsh plugin --profile  add @zibokapi/dsh-codex-computer-use

2. 构建 macOS 守护进程并授权(每台机器一次)
npx @zibokapi/dsh-codex-computer-use

3. (重新)启动 profile —— computer_use_* 工具即可用
dsh --profile  web

第 2 步是唯一与 macOS 相关的部分:它用已安装包内自带的 native/ 目录构建 Swift 助手(需要 Xcode 命令行工具——xcode-select --install),打包并签名到 ~/.dsh/computer-use/dsh-computer-daemon.app,然后通过 macOS 系统对话框显式请求守护进程所需的两项权限——辅助功能与屏幕录制——并轮询直到授权生效。它不写任何配置,也不需要配置:helperPath 未设置时,引擎会回退到这个确切路径。

安装位置固定是有意为之。macOS TCC 以助手的 bundle id、代码签名和磁盘路径为键记录授权;node_modules 里的路径会随每次插件更新而变化,因此守护进程安装在 DSH home($DSH_HOME/computer-use)下,授权在插件更新后依然有效。

插件每次加载时都会重新检查授权:缺失或被撤销的授权意味着计算机操作在该授权补齐前不会加载(macOS 已记住拒绝时,守护进程会打开对应的系统设置面板)。随时可用 dsh-codex-computer-use status 查看安装状态。

registry 上的 tarball 自带 lib/,且 lib/ 已提交进 git,因此任何安装方式——npm、git URL、打包 tarball——都无需执行构建脚本(pnpm ≥10 默认禁止 git 托管依赖的生命周期脚本,所以构建产物直接随仓库分发)。

懒人版

对你的 dsh 说:

安装一下这个插件包:https://github.com/geohotstan/dsh-computer-use

然后执行上面第 2–3 步(npx @zibokapi/dsh-codex-computer-use,重启 profile)。

手动(从检出安装)

git clone https://github.com/geohotstan/dsh-computer-use
cd dsh-computer-use
pnpm install
pnpm exec dsh-codex-computer-use   # 构建 + 安装守护进程并请求授权
pnpm run build:native              # 可选:Developer ID / 自签名构建,见「权限」
cd
dsh plugin --profile  add ../dsh-computer-use

dsh plugin add 会把仓库注册为 profile 的一层 bundle(dsh.profile.bundles)。引擎按以下顺序解析守护进程:helperPath 配置 → DSH_COMPUTER_HELPER_PATH 环境变量 → 安装命令的安装位置(~/.dsh/computer-use/dsh-computer-daemon.app/Contents/MacOS/dsh-computer-daemon)。只有指向自定义构建时才需要设置 helperPath。

入口

一个包、五个子路径入口(另有 .//invariant 的 invariant 伴侣):

| 入口 | 角色 | 加载行 |
|---|---|---|
| ./computer | 服务定义——ctx.computer | 由 computer-local 注册 |
| ./computer-local | 本地提供者——常驻 Swift 守护进程(AX 树、截图、CGEvent 输入) | @zibokapi/dsh-codex-computer-use/computer-local |
| ./computer-tools | computer_use_ 工具与 computer-use skill | @zibokapi/dsh-codex-computer-use/computer-tools |
| ./computer-policy | 按应用审批闸门、Codex 风格分级指引与 computer_use_list_granted_applications | @zibokapi/dsh-codex-computer-use/computer-policy |
| ./computer-mcp | 独立 MCP stdio 服务器,为外部 MCP 客户端暴露同一表面 | 非加载行——独立二进制 |

组合

手工编写组合时使用同样的子路径:

plugins:
computer-engine:
plugin: '@zibokapi/dsh-codex-computer-use/computer-local'
computer-tools:
plugin: '@zibokapi/dsh-codex-computer-use/computer-tools'
computer-policy:
plugin: '@zibokapi/dsh-codex-computer-use/computer-policy'

helperPath 可选——引擎会回退到安装命令的安装位置;其余行同样可选(@zibokapi/dsh-codex-computer-use/computer-policy 需要挂载审批服务,例如 @deepseek-ai/dsh-user-approval)。可运行组合见 example/cordis.yml。

MCP 服务器

@zibokapi/dsh-codex-computer-use/computer-mcp 这个 bin 把同一表面——官方十个 Codex Computer Use 窗口工具加 request_access 与三个 event_stream_ 录制工具——发布为独立 MCP stdio 服务器,在同一引擎上运行,使 Codex CLI、Claude Code 或任何 MCP 客户端都能驱动 harness 的计算机操作。该 bin 与其他入口一样把 harness 包留在外部(@deepseek-ai/dsh-subprocess-local 带有 node-pty——无法打包的原生模块),因此在 pnpm install 已拉齐依赖的任何环境都能运行:

执行过 npx @zibokapi/dsh-codex-computer-use 后无需路径:
node lib/mcp.js
显式路径(第一个参数)与环境变量覆盖同样可用:
node lib/mcp.js /absolute/path/to/dsh-computer-daemon.app/Contents/MacOS/dsh-computer-daemon
DSH_COMPUTER_HELPER_PATH=/absolute/path/to/dsh-computer-daemon.app/Contents/MacOS/dsh-computer-daemon dsh-computer-mcp

服务器在 stdin/stdout 上讲换行分隔的 JSON-RPC 2.0,应答 initialize / ping / tools/list / tools/call,并复刻官方响应行为:动作工具以动作后状态作答(文本加捕获到的 JPEG 图像块)。

权限

守护进程需要两项 macOS 授权,启动时检查并请求:辅助功能(读树与输入定位)与屏幕录制(窗口截图)。两者都是 TCC 权限;插件绝不绕过它们。安装命令(npx @zibokapi/dsh-codex-computer-use)会提前请求两项授权,且插件每次加载都会复查:为任何缺失的授权弹出提示,并在 macOS 已记住拒绝时打开对应的系统设置面板;授权缺失期间插件拒绝激活,因此计算机操作不会加载。

macOS 以助手的 bundle id、代码签名和磁盘路径为键记录每一项授权。安装命令把守护进程安装到固定路径(~/.dsh/computer-use),授权因此可以留存;再用稳定身份签名,授权还能在重建后仍然有效。任何 designated requirement 为 identifier 加证书的代码签名证书都适用——包括用 Keychain Access 创建的自签证书(证书助理 → 创建证书 → 代码签名)。设置一次:

DSH_COMPUTER_SIGN_IDENTITY="" npx @zibokapi/dsh-codex-computer-use

默认的 ad-hoc 签名可用,但其 designated requirement 是二进制的 cdhash,因此 macOS 会在每次重建后忘记授权。

开发

pnpm install
pnpm test          # fake-daemon tests; nothing touches a live desktop
pnpm run typecheck
pnpm run build     # esbuild → lib/, tsc → lib/types

验证

- CI check 任务(Ubuntu):从 npm 全新 pnpm install——正是用户走的路径——然后对已发布的 @deepseek-ai/ 包做 typecheck 与 build。
- CI native 任务(macOS):构建并单测 Swift 助手守护进程,运行 Node 测试套件——引擎按设计只支持 macOS(在非 darwin 主机上构造时抛出平台闸门),因此启动引擎的测试放在这里,驱动 fake daemon、不触碰真实桌面——并端到端演练安装命令(构建、打包、签名、安装、status)。
- CI install 任务(Ubuntu):对真实 CLI 跑文档里的安装链路——dsh plugin --profile ci add 分别从检出路径、打包 tarball 与 git URL 安装——断言安装命令在非 macOS 主机上给出可操作的提示,然后组合 profile,断言 bundle 层已注册、三行已组合、且每个 @zibokapi/dsh-codex-computer-use/ 行都能通过已安装的包解析并加载。

许可证

MIT——见 LICENSE。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群