geohotstan/dsh-computer-use 预览 preview

geohotstan/dsh-computer-use

DeepSeek Harness 的桌面计算机使用:macOS 应用列表、辅助功能树窗口捕获、截图及合成输入,克隆自 Codex Computer Use。

Project Overview项目介绍

This package is a native plugin built exclusively for DeepSeek Harness (DSH) that brings Codex-style computer use capabilities to DSH agents running on macOS. It replicates OpenAI’s Codex Computer Use window API, enabling DSH to list running apps, capture active window screenshots and accessibility trees, and synthesize mouse and keyboard input. Unlike many implementations, it delivers inputs in a background-first pattern, so semantic actions on accessibility elements do not require window focus, and raw inputs leave the user’s foreground window untouched.

The plugin follows an accessibility-tree-first design, where computer_use_get_app_state returns a numbered, tab-indented tree of UI elements for the model to act on via element index. Window-relative coordinates are only used as a fallback when the model cannot target a specific element. When capturing the same app multiple times, the plugin only returns tree diffs instead of the full tree to reduce token usage and speed up model response times. This tool is built specifically for DSH users that want autonomous macOS desktop control.

Installation is straightforward: after adding the plugin to your DSH profile via the dsh plugin add command, run the provided npx script to build the Swift daemon and request the required Accessibility and Screen Recording permissions from macOS. The daemon is installed to a fixed path under ~/.dsh/computer-use so permissions survive plugin updates, which avoids macOS TCC permission invalidation that happens when the daemon is stored in versioned node_modules paths. Released under the permissive MIT license, the plugin requires no OpenAI dependencies and includes pre-built artifacts for all common installation methods.

这是一个DeepSeek Harness(DSH)原生插件,仅支持macOS平台,为DSH提供Computer Use能力,功能复刻自OpenAI的Codex Computer Use窗口API。它可以获取应用列表、捕获目标窗口的截图与模型可读取的可访问性树,合成鼠标和键盘输入,输入交付采用后台优先模式,语义操作无需焦点,不改变用户当前的前台焦点。

它面向需要让DSH Agent控制本地macOS桌面的开发者,安装流程简洁,一条命令即可将插件添加到指定DSH配置文,之后执行npx命令编译构建Swift守护进程并申请系统权限,重启DSH后就能使用。它采用可访问性树优先的设计,模型通过元素索引操作,仅在需要时回退到坐标,同一应用重复捕获仅返回差异树,提升运行效率。

它使用MIT许可证开源,无需OpenAI相关组件,所有功能集成在单个安装包中,依赖Xcode命令行工具编译原生Swift守护进程,守护进程需要用户授权可访问性和屏幕录制权限。安装路径固定在~/.dsh/computer-use,避免权限随插件更新失效,预编译产物已提交至仓库,兼容多种安装方式。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 2 warnings2 项注意
  • Only 6 stars - very few users, little community feedback星标只有 6,几乎没人在用,遇到问题缺少社区反馈
  • Desktop client: installation downloads an executable - verify the publisher and checksums桌面客户端:安装会下载可执行文件,请核对发布者与校验和
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add @zibokapi/dsh-codex-computer-use

把 geohotstan/dsh-computer-use 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

@zibokapi/dsh-codex-computer-use

English | 中文

A standalone plugin for the DeepSeek Harness: desktop computer use on macOS — app listing, key-window capture as a screenshot plus model-readable accessibility tree, and synthesized mouse and keyboard input — cloned from OpenAI's Codex Computer Use window API. Input delivery is background-first like Codex's own execution model: semantic AX actions need no focus, and raw events ride the private SkyLight path (SLEventPostToPid with the keyboard authentication envelope, field stamps, and focus-without-raise records, ported from the MIT-licensed trycua/cua project) with a public CGEvent.postToPid fallback per symbol, so the user's foreground never changes. It needs no OpenAI components.

The design is accessibility-tree-first: computer_use_get_app_state returns a numbered, tab-indented element tree; the model acts on element indexes, with window-relative coordinates as a fallback, and later captures of the same app return diffs instead of the full tree.

Everything ships in this one package: the seam, the local Swift-daemon provider, the computer_use_* tools, the approval policy, and a standalone MCP server. The complete feature delta against OpenAI's implementation lives in docs/codex-parity.md; that reference is the parity checklist.

Install

This repository is a DSH bundle: the root package.json declares dsh.bundle.patch → cordis.patch.yml, which inserts the three host rows under this package's own subpaths (@zibokapi/dsh-codex-computer-use/*). One install brings everything.

# 1. install the plugin into a profile
dsh plugin --profile <name> add @zibokapi/dsh-codex-computer-use

# 2. build the macOS daemon and grant it permissions (once per machine)
npx @zibokapi/dsh-codex-computer-use

# 3. (re)start the profile — the computer_use_* tools are live
dsh --profile <name> web

Step 2 is the only macOS-specific part. It builds the Swift helper from the native/ directory shipped inside the installed package (Xcode Command Line Tools required — xcode-select --install), bundles and signs it into ~/.dsh/computer-use/dsh-computer-daemon.app, then explicitly asks for the two permissions the daemon needs — Accessibility and Screen Recording — through the macOS system dialogs, polling until the grants land. It writes no configuration and none is needed: with helperPath unset, the engine falls back to that exact path.

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-harness-zh-cn 下一个 Next dsh-codex-harness →