桌面安装包 Onenightcarnival/deepseek-harness-desktop
DeepSeek Harnessv0.4.1DeepSeek Harness 的非官方桌面安装包,支持 Windows 与…
35.5/100
综合分
8
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/30 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查有告警:npm 同名包「deepseek-harness-desktop」归属 hzhe0083-source/deepseek-harness-desktop,装到的可能不是本插件。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Onenightcarnival/deepseek-harness-desktop该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · desktop
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 4 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意npm 同名包「deepseek-harness-desktop」归属 hzhe0083-source/deepseek-harness-desktop,装到的可能不是本插件
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包deepseek-harness-desktop @ 0.4.1
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/1 22:53:30
🔴 安全扫描发现高危能力自动 · 静态分析源码
v2.7.0🔴 扫描:高危尚无人工评估
静态扫描发现安装期即执行代码,或命令参数由运行时变量拼接(参数来源无法静态判定,从严处理)。
命令参数由运行时变量拼接读写/删除本地文件发起外部网络请求
查看扫描证据(共 174 处,展示前 86 条)
- 读取本地文件main.js:25
uiLanguage = normalizeLanguage(JSON.parse(fs.readFileSync(path.join(app.getPath('userData'), 'ui-language.json'), 'utf8'))) - 写入本地文件main.js:33
try { fs.writeFileSync(path.join(app.getPath('userData'), 'ui-language.json'), JSON.stringify(language)) } catch { } - 请求外部主机api.github.commain.js:185
const res = await electronNet.fetch(`https://api.github.com/repos/${UPDATE_REPO}/releases/latest`, { - 发起网络请求main.js:185
const res = await electronNet.fetch(`https://api.github.com/repos/${UPDATE_REPO}/releases/latest`, { - 读取本地文件main.js:234
if (fs.existsSync(path.join(packaged, ENTRY_REL))) return packaged - 写入本地文件main.js:267
fs.writeFileSync(dest, fs.readFileSync(path.join(__dirname, 'win-spawn-shim.js'))) - 请求外部主机registry.npmjs.orgmain.js:302
const res = await electronNet.fetch('https://registry.npmjs.org/@deepseek-ai/dsh/latest', { - 发起网络请求main.js:302
const res = await electronNet.fetch('https://registry.npmjs.org/@deepseek-ai/dsh/latest', { - 删除本地文件main.js:377
fs.rmSync(dir, { recursive: true, force: true }) - 写入本地文件main.js:378
fs.mkdirSync(dir, { recursive: true }) - 写入本地文件main.js:379
fs.writeFileSync(path.join(dir, 'package.json'), JSON.stringify({ name: 'dsh-runtime', private: true }, null, 2)) - 读取本地文件main.js:387
const presets = JSON.parse(fs.readFileSync(path.join(bundledDshDir(), 'preset-plugins.json'), 'utf8')) - 执行外部命令来自配置/变量main.js:392
const child = spawn(process.execPath, [...nodePreloadArgs(), pnpmCjs, '--config.minimum-release-age=0', '--config.auto-install-peers=false', 'add', `@ - 读取本地文件main.js:411
const appManifest = JSON.parse(fs.readFileSync(appManifestPath, 'utf8')) - 写入本地文件main.js:417
fs.writeFileSync(appManifestPath, JSON.stringify(appManifest, null, 2)) - 读取本地文件main.js:423
for (const name of fs.readdirSync(runtimesDir())) { - 删除本地文件main.js:424
if (name !== version) fs.rmSync(path.join(runtimesDir(), name), { recursive: true, force: true }) - 删除本地文件main.js:428
fs.rmSync(dir, { recursive: true, force: true }) - 读取本地文件main.js:454
const p = candidates.find((c) => c && fs.existsSync(c)) - 写入本地文件main.js:476
try { fs.writeFileSync(proxyStorePath(), JSON.stringify(c, null, 2)) } catch { } - 删除本地文件main.js:598
fs.rmSync(dest, { recursive: true, force: true }) - 删除本地文件main.js:891
fs.rmSync(dir, { recursive: true, force: true }) - 删除本地文件main.js:910
try { fs.rmSync(stubDir, { recursive: true, force: true }) } catch { } - 执行外部命令来自配置/变量main.js:1297
serverProc = spawn(process.execPath, ['--expose-internals', ...nodePreloadArgs(), entry, 'web', ...desktopPatchArgs(), ...pickerPatchArgs(), '--no-ope - 执行外部命令来自配置/变量main.js:1603
const child = spawn(process.execPath, ['--expose-internals', ...nodePreloadArgs(), dshEntry(), ...args], { - 执行外部命令来自配置/变量main.js:1796
const child = spawn(process.execPath, ['-e', script], { env, stdio: ['ignore', 'pipe', 'pipe'], windowsHide: true }) - 读取本地文件runtime.js:39
const version = JSON.parse(fs.readFileSync(manifest, 'utf8')).version - 读取本地文件runtime.js:40
return fs.existsSync(path.join(dir, ENTRY_REL)) ? version : null - 读取本地文件runtime.js:55
try { entries = fs.readdirSync(runtimesDir) } catch { } - 读取本地文件runtime.js:241
if (!fs.lstatSync(file).isFile()) continue - 读取本地文件runtime.js:242
const text = fs.readFileSync(file, 'utf8') - 删除本地文件runtime.js:243
if (text.includes('UV_CACHE_DIR') && text.includes('UV_PYTHON_INSTALL_DIR') && /[ /]tools[ /]uv[ /]uvx?(?: exe)?[" ]/.test(text)) fs.unlinkSync(fi - 发起网络请求proxy-forward.js:123
const upstream = http.request(opts, (r) => { - 读取本地文件window-chrome.js:59
const css = fs.readFileSync(path.join(__dirname, 'desktop.css'), 'utf8') - 读取本地文件vendor/deepseek-desktop/keybindings.js:12
return await readFile(path, 'utf8'); - 读取本地文件afterPack.js:19
const src = candidates.find((p) => fs.existsSync(p)) - 删除本地文件afterPack.js:31
fs.rmSync(dest, { recursive: true, force: true }) - 读取本地文件build/sync-official-browser.cjs:9
const read = name => normalize(fs.readFileSync(path.join(vendor, 'src', name + '.ts'), 'utf8')) - 读取本地文件build/sync-official-browser.cjs:16
if (normalize(fs.readFileSync(file, 'utf8')) !== text) throw new Error('Generated source differs: ' + file) - 写入本地文件build/sync-official-browser.cjs:17
} else fs.writeFileSync(file, text) - 读取本地文件build/sync-official-browser.cjs:48
const source = normalize(fs.readFileSync(preload, 'utf8')) - 执行外部命令来自配置/变量build/test-desktop-browser.cjs:10
const run = spawnSync(process.env.DSHDESKTOP_TEST_ELECTRON || require('electron'), [__filename], - 写入本地文件build/test-desktop-browser.cjs:21
fs.mkdirSync(home) - 读取本地文件build/test-desktop-browser.cjs:23
const presets = JSON.parse(fs.readFileSync(path.join(runtime, 'preset-plugins.json'), 'utf8')) - 写入本地文件build/test-desktop-browser.cjs:25
fs.mkdirSync(profile, { recursive: true }) - 写入本地文件build/test-desktop-browser.cjs:26
fs.writeFileSync(path.join(profile, 'package.json'), JSON.stringify({ name: 'dsh-profile-web', private: true, - 执行外部命令来自配置/变量build/test-desktop-browser.cjs:56
kernel = spawn(process.execPath, ['--expose-internals', path.join(runtime, 'node_modules/@deepseek-ai/dsh/lib/bin.js'), - 写入本地文件build/test-desktop-browser.cjs:75
if (event.level === 'error') fs.appendFileSync(path.join(work, 'console.log'), event.message + '\n') - 写入本地文件build/test-desktop-browser.cjs:151
await main.webContents.capturePage(undefined, { stayHidden: true, stayAwake: true }).then(image => fs.writeFileSync(path.join(work, 'browser.png'), im - 写入本地文件build/test-desktop-browser.cjs:171
fs.writeFileSync(path.join(work, 'failure.txt'), await js('document.body.innerText').catch(() => '')) - 执行外部命令固定命令build/test-desktop-browser.cjs:178
if (process.platform === 'win32') spawnSync('taskkill.exe', ['/PID', String(kernel.pid), '/T', '/F'], { windowsHide: true, stdio: 'ignore' }) - 执行外部命令来自配置/变量build/test-installer-copy.mjs:27
execFileSync(sevenzip, ['a', '-bd', archive, '.'], { cwd: source, windowsHide: true, stdio: 'ignore' }) - 执行外部命令来自配置/变量build/test-installer-copy.mjs:53
execFileSync(compiler, ['/V2', script], { windowsHide: true, stdio: 'pipe' }) - 执行外部命令来自配置/变量build/test-installer-copy.mjs:58
const result = spawnSync(exe, ['/S'], { windowsHide: true, timeout }) - 读取本地文件build/test-installer-copy.mjs:73
const contents = await Promise.all([readFile(original), readFile(installed)]) - 执行外部命令固定命令build/test-installer-copy.mjs:100
const blocked = spawnSync('powershell.exe', ['-NoProfile', '-EncodedCommand', Buffer.from(lockScript, 'utf16le').toString('base64')], { windowsHide: t - 读取本地文件build/test-server-output.cjs:9
const source = fs.readFileSync(path.join(__dirname, '../main.js'), 'utf8') - 写入本地文件build/test-uv-removal.cjs:12
fs.writeFileSync(path.join(temporary, 'uvx.cmd'), windows) - 写入本地文件build/test-uv-removal.cjs:13
fs.writeFileSync(path.join(temporary, 'uv'), mac) - 写入本地文件build/test-uv-removal.cjs:14
fs.writeFileSync(path.join(temporary, 'uv.cmd'), '@echo off\r\n"C:\\custom\\uv.exe" %*\r\n') - 写入本地文件build/test-uv-removal.cjs:15
fs.writeFileSync(path.join(temporary, 'uvx'), '#!/bin/sh\nexec /custom/uvx "$@"\n') - 写入本地文件build/test-uv-removal.cjs:16
fs.writeFileSync(path.join(temporary, 'node.cmd'), 'keep') - 读取本地文件build/test-uv-removal.cjs:18
assert.equal(fs.existsSync(path.join(temporary, 'uvx.cmd')), false) - 读取本地文件build/test-uv-removal.cjs:19
assert.equal(fs.existsSync(path.join(temporary, 'uv')), false) - 读取本地文件build/test-uv-removal.cjs:20
for (const file of ['uv.cmd', 'uvx', 'node.cmd']) assert.equal(fs.existsSync(path.join(temporary, file)), true) - 删除本地文件build/test-uv-removal.cjs:25
fs.rmSync(temporary, { recursive: true, force: true }) - 执行外部命令来自配置/变量build/test-window-chrome.cjs:15
const run = spawnSync(process.env.DSHDESKTOP_TEST_ELECTRON || require('electron'), [__filename], { env, windowsHide: true, stdio: 'inherit', timeout: - 写入本地文件build/test-window-chrome.cjs:29
fs.mkdirSync(output, { recursive: true }) - 写入本地文件build/test-window-chrome.cjs:102
fs.writeFileSync(path.join(output, name + '.png'), (await settings.webContents.capturePage(undefined, { stayHidden: true, stayAwake: true })).toPNG()) - 执行外部命令来自配置/变量build/test-window-chrome.cjs:193
kernel = spawn(process.execPath, ['--expose-internals', '--require', path.join(root, 'win-spawn-shim.js'), entry, - 写入本地文件build/test-window-chrome.cjs:211
if (event.level === 'warning' || event.level === 'error') fs.appendFileSync(path.join(output, 'runtime-console.log'), event.message + '\n') - 写入本地文件build/test-window-chrome.cjs:227
fs.writeFileSync(path.join(output, 'main-runtime.png'), (await main.webContents.capturePage(undefined, { stayHidden: true, stayAwake: true })).toPNG() - 写入本地文件build/test-window-chrome.cjs:263
const captureMain = async name => fs.writeFileSync(path.join(output, name + '.png'), (await main.webContents.capturePage(undefined, { stayHidden: true - 写入本地文件build/test-windows-execution-level.cjs:15
await fs.mkdir(output, { recursive: true }) - 写入本地文件build/test-windows-execution-level.cjs:17
await fs.copyFile(source, file) - 读取本地文件build/test-windows-execution-level.cjs:19
const resources = NtExecutableResource.from(NtExecutable.from(await fs.readFile(file))) - 写入本地文件build/test-windows-execution-level.cjs:24
await fs.writeFile(path.join(output, 'manifest.xml'), xml) - 执行外部命令运行时拼接stage-dsh.mjs:87
execSync(`npm ${['ci', '--force', ...baseFlags, ...crossFlags].join(' ')}`, { cwd: dir, stdio: 'inherit' }) - 执行外部命令运行时拼接stage-dsh.mjs:97
execSync(`npm ${['install', `@deepseek-ai/dsh@${version}`, ...baseFlags, ...crossFlags].join(' ')}`, { cwd: dir, stdio: 'inherit', env: liveEnv }) - 执行外部命令运行时拼接stage-dsh.mjs:101
execSync(`npm ${['install', ...extraPackages, ...baseFlags, ...crossFlags].join(' ')}`, { cwd: dir, stdio: 'inherit', env: liveEnv }) - 执行外部命令运行时拼接stage-dsh.mjs:160
execSync(`npm ${['install', 'pnpm@11', ...baseFlags, '--omit=optional', ...crossFlags].join(' ')}`, { cwd: toolsDir, stdio: 'inherit' }) - 请求外部主机registry.npmjs.orgupdate-locks.mjs:45
const res = await fetch(`https://registry.npmjs.org/${name.replace('/', '%2f')}`, { - 发起网络请求update-locks.mjs:45
const res = await fetch(`https://registry.npmjs.org/${name.replace('/', '%2f')}`, { - 执行外部命令固定命令update-locks.mjs:312
execSync('npm install --package-lock-only --force --ignore-scripts --no-audit --no-fund', { cwd: tmp, stdio: 'pipe' }) - 读取本地文件win-spawn-shim.js:123
try { if (fs.statSync(file).size > 256 * 1024) return } catch { } - 写入本地文件win-spawn-shim.js:125
fs.appendFileSync(file, `${new Date().toISOString()} pid=${process.pid} ppid=${process.ppid} ${tag}: ${msg}\n`)
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库
涉及外部主机:api.github.com、registry.npmjs.org
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- macOSdmg安装包
- Electron打包壳
README
由 DeepSeek 最新模型翻译生成DeepSeek Harness Desktop
DeepSeek Harness 的非官方桌面安装包,支持 Windows 与 macOS。当前内置内核:0.2.1-rc.5。
应用在本机随机端口运行 dsh Web UI。数据与配置位于 ~/.dsh,与命令行版共享。默认关窗退出;开启托盘模式后,关窗保留服务与任务。
安装包
| 版本 | 内容 |
| 常规版 | 官方 dsh 与桌面壳 |
| full 版(文件名含 -full) | 常规版 + 任务看板、SSH、better-sidebar |
任务看板与 SSH 来自 dsh-web。SSH 支持终端会话分离与重连。better-sidebar 提供文件管理、编辑预览、内嵌浏览器、终端、Git 与后台任务。
两种版本共享数据,可互相覆盖安装。full 预置插件每次启动同步,手动移除后会恢复;常规版不启用这些预置。
展开完整文档(README 剩余 1 节)
DeepSeek Harness Desktop DeepSeek Harness 的非官方桌面安装包,支持 Windows 与 macOS。当前内置内核:0.2.1-rc.5。 应用在本机随机端口运行 dsh Web UI。数据与配置位于 ~/.dsh,与命令行版共享。默认关窗退出;开启托盘模式后,关窗保留服务与任务。 安装包 | 版本 | 内容 | | 常规版 | 官方 dsh 与桌面壳 | | full 版(文件名含 -full) | 常规版 + 任务看板、SSH、better-sidebar | 任务看板与 SSH 来自 dsh-web。SSH 支持终端会话分离与重连。better-sidebar 提供文件管理、编辑预览、内嵌浏览器、终端、Git 与后台任务。 两种版本共享数据,可互相覆盖安装。full 预置插件每次启动同步,手动移除后会恢复;常规版不启用这些预置。 | 平台 | 安装说明 | | Windows | 未签名,可能显示 SmartScreen 提示;支持长路径与复制重试,错误日志为 %TEMP%\\dsh-install-copy.log | | macOS | 未签名,使用右键打开或 xattr -cr "/Applications/DeepSeek Harness.app" | Windows 桌面程序默认请求管理员权限,由系统 UAC 确认。内核和本地工具继承启动权限。 窗口与菜单 主窗口与配置中心使用一体化标题栏,并同步深浅主题;启动前跟随系统主题。菜单和配置窗口跟随主界面的中英文选择,首次启动使用系统语言。 左侧栏底部仅显示「设置」入口。 主窗口与配置中心的右键菜单:输入区域提供撤销、重做、剪切、复制、粘贴、全选;选中文本提供复制。浏览器标签页不提供右键菜单。 | 平台 | 标题栏与入口 | | Windows | 原生窗口按钮;「应用 / 编辑」菜单;配置中心位于「应用 → 配置中心…」(Ctrl+,) | | macOS | 原生红黄绿按钮、系统菜单;主内容延伸至顶部,窗口按钮融入侧栏;侧栏收起后保留切换与新建入口;「插件 → 配置中心…」 | | Linux 开发环境 | 「插件 → 配置中心…」 | 启动 启动页显示应用标识与等待状态,覆盖在主界面之上;内核启动与重启期间显示,界面就绪后移除。鼠标侧键与键盘的后退、前进不离开主界面。 浏览器 右侧栏「开始 → 浏览器」打开独立网页标签;Windows / Linux 使用 Ctrl+T,macOS 使用 Cmd+T。地址栏支持 HTTP(S),包括本机开发服务;提供后退、前进、刷新和在系统浏览器中打开。快捷键可在内核的快捷键设置中修改。 - 网页由 Electron webview 加载。切换标签、会话、收起侧栏与浮动页面时保留页面状态。 - 同一工作区共享内存中的 Cookie 与网页存储;不同工作区隔离,应用退出后清除。 - 重启后保留标签标题和地址,点击恢复或刷新后加载;页面内存、未提交表单和历史栈不恢复。 - 网页没有 Node / Electron 权限,不能访问当前 dsh 服务;设备权限与下载关闭,允许的网页弹窗在侧栏新标签打开。 - 浏览器沿用配置中心的代理设置。本地文件使用文件预览。 - 浏览页面不会自动进入模型上下文;浏览器标签不提供 Agent 操作工具。 界面与导航使用内核自带的官方浏览器插件。桌面桥、网页实例管理与原生快捷键复用官方源码,来源及同步方式见 vendor/deepseek-desktop。 更新 更新由「帮助」菜单手动触发,第一项显示当前内核版本。 | 操作 | 来源 | 生效方式 | | 检查应用更新 | GitHub Release | Windows 后台下载整包,立即重启或下次退出时安装;macOS 打开下载页 | | 检查内核更新 | npm @deepseek-ai/dsh | 安装到用户数据目录 runtimes/<版本>/,重启生效;失败回退内置版本 | 内核仅支持同一版本线内升级,例如 0.2.1-rc.3 → 0.2.1-rc.5。跨版本线使用新安装包。 配置中心 | 页面 | 功能 | | 插件 | 按 npm 包名、Git 来源、本地目录或 .tgz 安装;移除插件;重启生效 | | 通用 | 启动、托盘与系统唤醒设置 | | 代理 | 无代理、系统代理或手动代理;测试连接与 TLS 配置 | 目录安装采用软链。构建脚本审批在「插件 → 打开命令行窗口」中完成。 插件操作结果直接显示,命令输出位于可展开的「诊断详情」。 技能管理由 toolkit 配置中心插件提供,入口为主侧栏「技能」。桌面壳向插件传递旧停用目录,原有技能继续可用。 通用 所有选项默认关闭,切换即时生效。 | 选项 | 行为 | | 开机自动启动 | 注册系统登录项 | | 显示托盘图标 | 提供主窗口、配置中心与退出入口;macOS 显示菜单栏图标 | | 启动时最小化到托盘 | 隐藏启动窗口 | | 关闭时最小化到托盘 | 保留服务与任务;通过菜单退出,双击应用或托盘图标恢复窗口 | | 运行任务时保持系统唤醒 | Agent 运行、输入排队或作业执行期间阻止系统休眠 | Windows / Linux 的隐藏窗口选项依赖托盘图标。 代理 系统代理按目标地址读取 PAC 与例外列表。手动代理支持主机、端口、认证和例外列表(corp.com、.corp.com、10.、<local>)。 TLS 选项包含系统证书库、自定义 CA 和关闭证书校验。密码可选择记住,勾选后以明文保存在本机。模型、插件安装、内核升级与 MCP 共用代理,本机地址直连。保存后重启服务。 插件菜单 | 操作 | 行为 | | 重新同步预置插件 | 清除当前版本的冲突排除记录,重启并恢复预置 | | 打开命令行窗口 | 打开终端,PATH 包含应用的 dsh / pnpm / node / npx;沿用代理设置 | 长期使用 CLI 可将用户数据目录的 bin/ 加入 PATH。 Python MCP 环境 安装 @onenightcarnival/dsh-toolkit 或 @onenightcarnival/dsh-config-center 后,在「设置 → 环境依赖」里安装专属 uv 环境。桌面安装包不捆绑 uv/uvx。 安装完成后,当前配置档里的裸 uv / uvx 命令会转为专属路径;显式自定义路径保持不变。首次使用需联网下载 Python 与依赖。 本地构建 构建使用精确版本 Electron 44.0.0,产物位于 dist/。 node stage-dsh.mjs npm install npx electron-builder --win --x64 npx electron-builder --mac --arm64 设置 DSH_FLAVOR=full 选择 full 清单。开发调试在 staging 后运行 npm start。架构、文件职责和验证入口见 AGENTS.md。 预置插件 | 文件 | 内容 | | plugins.json / plugins-<flavor>.json | 预置包与版本;stage 按 DSH_FLAVOR 选择 | | desktop-patch.yml | 禁用、覆盖或挂载组合条目;通过 --patch 在用户配置档层之后应用 | | locks/ | 各 flavor 的完整安装锁 | 带 dsh.bundle 的包可直接登记到清单。其他插件通过补丁的 insert 挂载;带界面的插件须成对挂载 host 与 client-ui。插件版本必须匹配内核版本线。 用户插件通过 dsh plugin 管理;用户覆盖层为 ~/.dsh/profiles/web/cordis.patch.yml。 发版 1. 修改预置或内核后,运行 node update-locks.mjs <dsh版本> ["插件@版本"...] 更新锁。 2. 运行 staging 与相应验证,提交改动。 3. 推送与发布版本对应的 vX.Y.Z 标签。 .github/workflows/release.yml 在 Windows 与 macOS runner 原生构建。版本号取自标签,产物与 SHA256SUMS.txt 发布到 GitHub Release。应用更新元数据为常规版的 latest.yml 与 full 版的 full.yml。 协议 MIT。应用图标改自上游 favicon。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
Onenightcarnival/deepseek-harness-desktop
DeepSeek Harness 的非官方桌面安装包,支持 Windows 与…
相关插件 · 桌面端
Codex 任务面板chuspeeism/dashi-taskboard
现代化可灵活嵌入的任务面板,支持 Codex、DeepSeek Harness
★ 3,409已汉化DSH
71.7
多智能体自进化开发平台Prism-Shadow/penguin-harness
统一、稳定的 Agent 自进化框架全自动优化:任意模型 · 任意算法 · 任意 Benchmark
★ 3,111已汉化DSH
71.1
桌面宠物PC2005-cloud/dsh-pet
DSH 桌面宠物:一行命令装好即用的透明动画小桌宠,支持多开、大小位置随心配置;还内置 DIY 素材链,能用 AI…
★ 5,341已汉化DSH
71
多端 Agent 工作台GCWing/OpenBitFun
OpenBitFun 是一个高度可定制的开源 Agent 工作台,让任务按你的方式持续推进。
★ 3,449已汉化DSH
70.8
DSH Desktopanywhere-labs/dsh-desktop
为 DeepSeek Harness DSH 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。
★ 34,532已汉化DSH
70.7
桌面宠物伴侣OpenPetsHQ/openpets
桌面伴侣平台,带宠物、插件,还能选配本地智能体集成。
★ 1,353已汉化DSH
70.2