deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:hxwi1/dsh-desktop-window
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
# dsh-desktop-window
把 DSH 的 WebUI 变成桌面窗口,双击就能用。 Turn the DSH WebUI into a desktop window — double-click and go.
无需开浏览器 · 双击即用 · 关窗即退 · 一次构建永久使用 No browser · double-click · close-to-exit · build once, use forever
三步,之后每次都是双击。
① 下载 / Download
从 GitHub 下载本仓库,解压成一个文件夹。
Download this repo and extract it into a folder.
② 粘贴 / Paste
把整个文件夹放进 DSH 源码根目录(放哪都行,自动识别)。
Copy the folder into the DSH source tree (anywhere works).
③ 双击 / Double-click
双击启动入口,桌面窗口就出来了。
Double-click the entry for your OS — the window opens.
| 平台(OS) | 启动(Start) | 停止(Stop) |
|---|---|---|
| Windows | start-desktop-window.bat |
stop-desktop-window.bat |
| macOS | start-desktop-window.command |
stop-desktop-window.command |
| Linux | start-desktop-window.sh |
stop-desktop-window.sh |
macOS/Linux 若提示无权限,执行一次
chmod +x *.command *.sh(一般无需,仓库已带执行位)。If you hit "permission denied" on macOS/Linux:
chmod +x *.command *.sh(usually not needed).
| 你需要什么(What you get) | 它怎么满足(How) |
|---|---|
| 不用每次开浏览器 | 双击图标,WebUI 直接变成桌面窗口 / Double-click and it's a desktop app |
| 不想留后台进程 | 关窗即退,无残留 / Close = exit, no residue |
| 习惯用浏览器 | 两者共存,互不干扰 / Coexists with the browser |
| 出了故障能收拾 | stop-desktop-window.* 一键清理 / Force-clean on demand |
| 不想反复折腾 | 构建一次,永久使用 / Build once, use forever |
| 担心动源码 | 零侵入,完全兼容 / Zero-intrusion, fully compatible |
--patch 注入的一个配置层,DSH 本体零改动,升级 DSH 也不会冲突。No source is modified — a single --patch layer, the harness stays untouched.缺哪样启动脚本都会明确报错;以下每步只需做一次,约 3 分钟。
第一步 / Step 1 — 装好 DSH 本体,在 DSH 源码根目录执行:
pnpm install # 安装全部依赖 / install all dependencies
pnpm run build # 构建网页界面(只需这一次) / build the Web UI (once)
第二步 / Step 2 — 安装窗口引擎 Electron,在粘贴好的 <desktop> 文件夹里执行:
npm install # 下载 Electron(约 100MB) / ~100 MB;国内可用 ELECTRON_MIRROR 镜像
第三步 / Step 3 — 配置 API Key:WebUI 设置页,或在家目录放 .env:
DEEPSEEK_API_KEY=sk-...
没有 Key,窗口能打开,但对话无法回复 / Without a key the window opens, but conversations stay silent.
完全不改动源码——本仓库只是 --patch 注入的一个配置层,DSH 本体一行不改,兼容性良好。只要不跳出 WebUI(在窗口内使用),就完全兼容,与浏览器里用 WebUI 完全一致;所有功能都在窗口内使用也完全没有限制。
It changes no source — this repo is only a --patch config layer; the harness stays untouched and compatibility is good. As long as you stay inside the WebUI, it is fully compatible — identical to using the WebUI in a browser, with no feature restrictions in the window.
可以,两者是同一个 WebUI 的独立入口,互不干扰。 Yes — they are independent entries to the same WebUI, so both work concurrently.
按顺序检查:① 在 DSH 根目录跑过 pnpm install 与 pnpm run build;② 在 <desktop> 里跑过 npm install;③ 已配置 API Key。
In order: ① pnpm install + pnpm run build at the source root; ② npm install in <desktop>; ③ an API key is set.
不用,构建一次即可,之后都是双击启动。 No — once is enough; every later launch is a double-click.
目录结构与配置细节,普通使用可以跳过。
plugin/index.js Cordis 插件本体(纯 ESM,零构建)
electron-app/ 被插件拉起的 Electron 主进程
start.mjs / stop.mjs 跨平台核心逻辑(自动判断 pnpm dsh / 全局 dsh)
start-desktop-window.* 各平台启动入口
stop-desktop-window.* 各平台停止入口
| 场景(Scenario) | 命令(Command) |
|---|---|
在 DSH 源码内(检测到 apps/cli/src) |
pnpm dsh web --patch <plugin> |
| 独立运行(DSH 源码外) | dsh web --patch <plugin>(需 npm i -g @deepseek-ai/dsh) |
覆盖 patch 行的 config(默认值如下):
- insert:
- id: desktop-window
name: '<plugin file:// path>'
config:
title: DeepSeek Harness WebUI # 默认
width: 1280 # 默认
height: 860 # 默认
quitOnClose: true # 默认
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。