🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

大肥鱼桌面客户端 Amnesia-accompany/deepseek-harness-client

DeepSeek Harness
Amnesia-accompany72 天前有提交已提供中文文档扫描:含敏感能力

一键安装启动,在独立桌面窗口里使用全部功能

28.2/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/17 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Amnesia-accompany/deepseek-harness-client
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · ui
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 72 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 84 处,展示前 43 条)
  • 发起网络请求
    plugins/deepseek-harness-settings-enhancer/src/client.js:57
    const r = await fetch(path, body ? {
  • 请求外部主机api.github.com
    plugins/deepseek-harness-settings-enhancer/src/index.js:270
    const req = https.get('https://api.github.com/repos/Dominic789654/awesome-deepseek-harness/readme', {
  • 发起网络请求
    plugins/deepseek-harness-settings-enhancer/src/index.js:270
    const req = https.get('https://api.github.com/repos/Dominic789654/awesome-deepseek-harness/readme', {
  • 执行外部命令固定命令
    plugins/deepseek-harness-settings-enhancer/src/index.js:537
    execSync('npm install --no-save --no-package-lock ' + JSON.stringify(name) + ' js-yaml@^4.1.0', { cwd: pd, stdio: 'pipe', timeout: 120000 })
  • 执行外部命令固定命令
    plugins/deepseek-harness-settings-enhancer/src/index.js:621
    const out = execSync('git -C ' + JSON.stringify(CLIENT_ROOT) + ' describe --tags --always 2>nul', { encoding: 'utf8', timeout: 8000 })
  • 发起网络请求
    plugins/deepseek-harness-settings-enhancer/src/index.js:640
    const req = https.get(u, { headers: { 'User-Agent': 'deepseek-harness-settings-enhancer', Accept: 'application/json' }, timeout: 12000 }, (res) => {
  • 请求外部主机api.github.com
    plugins/deepseek-harness-settings-enhancer/src/index.js:674
    const r = https.get('https://api.github.com/repos/Amnesia-accompany/deepseek-harness-client/releases/latest', {
  • 发起网络请求
    plugins/deepseek-harness-settings-enhancer/src/index.js:674
    const r = https.get('https://api.github.com/repos/Amnesia-accompany/deepseek-harness-client/releases/latest', {
  • 执行外部命令固定命令
    plugins/deepseek-harness-settings-enhancer/src/index.js:752
    spawn('powershell.exe', ['-NoProfile', '-ExecutionPolicy', 'Bypass', '-File', ps1, '-Mode', 'update'], {
  • 发起网络请求
    plugins/dsh-dafeiyu/lib/client.js:67
    fetch(CONFIG_ENDPOINT, { cache: 'no-store' })
  • 发起网络请求
    plugins/dsh-dafeiyu/lib/client.js:84
    const response = await fetch(CONFIG_ENDPOINT, {
  • 读取本地文件
    plugins/dsh-dafeiyu/src/helper-process.js:19
    return readFileSync('/proc/sys/fs/binfmt_misc/WSLInterop', 'utf8').includes('enabled')
  • 读取本地文件
    plugins/dsh-dafeiyu/src/helper-process.js:22
    return /microsoft/i.test(readFileSync('/proc/version', 'utf8'))
  • 读取本地文件
    plugins/dsh-dafeiyu/src/helper-process.js:30
    return (process.platform === 'win32' || isWsl()) && existsSync(bundledHelperPath)
  • 执行外部命令固定命令
    plugins/dsh-dafeiyu/src/helper-process.js:34
    return execFileSync('wslpath', ['-w', path], { encoding: 'utf8' }).trim()
  • 执行外部命令来自配置/变量
    plugins/dsh-dafeiyu/src/helper-process.js:126
    child = spawn(command, [...args, ...extraArgs], {
  • 发起网络请求
    plugins/dsh-glass-ui/src/client.js:48
    const r = await fetch(path, body ? {
  • 执行外部命令固定命令
    plugins/dsh-glass-ui/src/index.js:34
    const out = execSync('reg query "HKCU\\Software\\Valve\\Steam" /v SteamPath', {
  • 发起网络请求
    plugins/dsh-glass-ui/src/index.js:142
    const req = https.request({
  • 发起网络请求
    plugins/dsh-glass-ui/src/index.js:160
    const imgReq = https.get(url, { timeout: 120000 }, (ir) => {
  • 发起网络请求
    plugins/dsh-global-persona/src/client.js:186
    fetch(CONFIG_ENDPOINT, { cache: 'no-store' })
  • 发起网络请求
    plugins/dsh-global-persona/src/client.js:209
    const response = await fetch(CONFIG_ENDPOINT, {
  • 发起网络请求
    plugins/dsh-lyric-sidebar/src/client.js:200
    fetch('/plugins/dsh-lyric-sidebar/config', { cache: 'no-store' })
  • 发起网络请求
    plugins/dsh-lyric-sidebar/src/client.js:210
    const r = await fetch('/plugins/dsh-lyric-sidebar/config', {
  • 读取本地文件
    resources/app/main.js:48
    const cfg = JSON.parse(stripBom(fs.readFileSync(CONFIG_FILE, 'utf8')));
  • 写入本地文件
    resources/app/main.js:59
    fs.mkdirSync(DATA_DIR, { recursive: true });
  • 写入本地文件
    resources/app/main.js:61
    fs.writeFileSync(CONFIG_FILE, JSON.stringify(cfg, null, 2));
  • 读取本地文件
    resources/app/main.js:68
    if (fs.existsSync(tools)) return tools;
  • 读取本地文件
    resources/app/main.js:70
    if (fs.existsSync(pf)) return pf;
  • 读取本地文件
    resources/app/main.js:77
    if (!fs.existsSync(CRED_FILE)) return false;
  • 读取本地文件
    resources/app/main.js:78
    return stripBom(fs.readFileSync(CRED_FILE, 'utf8'))
  • 写入本地文件
    resources/app/main.js:85
    fs.mkdirSync(HOME_DIR, { recursive: true });
  • 读取本地文件
    resources/app/main.js:87
    if (fs.existsSync(CRED_FILE)) {
  • 写入本地文件
    resources/app/main.js:96
    fs.writeFileSync(CRED_FILE, lines.join('\r\n'));
  • 发起网络请求
    resources/app/main.js:122
    const req = http.get({ host: '127.0.0.1', port: p, path: '/', timeout: 1500 }, (res) => {
  • 写入本地文件
    resources/app/main.js:149
    fs.mkdirSync(DATA_DIR, { recursive: true });
  • 写入本地文件
    resources/app/main.js:150
    fs.appendFileSync(LOG_FILE, line + '\r\n');
  • 执行外部命令来自配置/变量
    resources/app/main.js:173
    serverProc = spawn(nodeExe, [DSH_BIN, 'web', '--host', '127.0.0.1', '--port', String(port), '--no-open'], {
  • 发起网络请求
    resources/app/main.js:412
    const req = https.get(origin + '/user/balance', {
  • 发起网络请求
    resources/app/main.js:453
    const req = https.get(url, { headers, timeout: 15000 }, (res) => {
  • 发起网络请求
    resources/app/main.js:474
    const req = https.request(url, { method: 'POST', headers, timeout: 15000 }, (res) => {
  • 删除本地文件
    resources/app/main.js:835
    fs.rmSync(target, { recursive: true, force: true });
  • 删除本地文件
    resources/app/main.js:837
    fs.unlinkSync(target);
扫描于 2026/11/3(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库
涉及外部主机:api.github.com

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 一键安装启动
  • 独立桌面窗口使用
  • 内置桌宠

蓝色大肥鱼 DeepSeek Harness 懒人客户端:一键安装启动,内置桌面大肥鱼桌宠、玻璃拟态界面、MCP/Skills 管理、插件市场

README

由 DeepSeek 最新模型翻译生成
DeepSeek Harness 懒人客户端 🐟 基于开源项目 deepseek-ai/deepseek-harness 的一键部署 Windows 客户端:下载一个 exe,双击安装,只需输入你自己的 API Key。 界面是独立的无边框桌面应用窗口(Electron 客户端,高清显示,非浏览器),网页内容与官方 DeepSeek Harness 完全一致。 ⚠️ 本项目为第三方封装客户端,非 DeepSeek 官方出品。核心引擎与界面来自官方开源项目。 ✨ 功能特性 | 特性 | 说明 | | 🖥️ 独立桌面窗口 | 无边框、无地址栏、无标签页,像普通软件一样使用 | | 🔍 高清显示 | PerMonitorV2 高 DPI 感知,150% 缩放的屏幕上依然锐利 | | 🚀 一键安装 | 自动检测/下载 Node.js(免管理员)、自动安装依赖 | | 🔑 自己的 API Key | 首次打开输入你自己的 Key,只保存在本机,绝不预置/上传 | | ⚙️ 服务内嵌管理 | 后台拉起 dsh web,关窗确认后自动停服,无黑窗口 | | 🔄 端口自适应 | 默认 3080,被占用自动换端口并记忆 | | 🎭 全局人设 | 内置「全局人设」设置页:给所有工作区/会话统一一份人设词(默认关闭,可随时开启) |
展开完整文档(README 剩余 1 节)
DeepSeek Harness 懒人客户端 🐟

基于开源项目 deepseek-ai/deepseek-harness 的一键部署 Windows 客户端:下载一个 exe,双击安装,只需输入你自己的 API Key。

界面是独立的无边框桌面应用窗口(Electron 客户端,高清显示,非浏览器),网页内容与官方 DeepSeek Harness 完全一致。

⚠️ 本项目为第三方封装客户端,非 DeepSeek 官方出品。核心引擎与界面来自官方开源项目。

✨ 功能特性

| 特性 | 说明 |
| 🖥️ 独立桌面窗口 | 无边框、无地址栏、无标签页,像普通软件一样使用 |
| 🔍 高清显示 | PerMonitorV2 高 DPI 感知,150% 缩放的屏幕上依然锐利 |
| 🚀 一键安装 | 自动检测/下载 Node.js(免管理员)、自动安装依赖 |
| 🔑 自己的 API Key | 首次打开输入你自己的 Key,只保存在本机,绝不预置/上传 |
| ⚙️ 服务内嵌管理 | 后台拉起 dsh web,关窗确认后自动停服,无黑窗口 |
| 🔄 端口自适应 | 默认 3080,被占用自动换端口并记忆 |
| 🎭 全局人设 | 内置「全局人设」设置页:给所有工作区/会话统一一份人设词(默认关闭,可随时开启) |
| 🎵 音乐播放器 | 外接网易云单曲 / B站视频 / 音频直链,本地歌单 + 音量记忆 |
| 🎤 侧边栏歌词 | KTV 式多行歌词卡:渐变流动高亮、弹性动画、自动预位 |
| 📐 可拖动面板 | 文件树/编辑器/对话面板之间分隔条自由调宽,宽度记忆 |
| 🎬 精致启动动画 | 浅色渐变 + 扫光 + 进度条,尊重系统减弱动效 |
| 📦 内置插件 | 预置大肥鱼桌面伴侣、玻璃拟态界面、全局人设等插件,启动自动部署注册 |
| 📊 系统信息页 | 设置 → 系统信息:显示 DSH 核心版本/客户端版本/Node/端口,一键「检查更新」「立即更新」(npm 更新通道) |
| 🔄 一键智能重启 | 「重启DSH服务.bat」重做:自动读取真实端口、防误杀校验、停服后自动拉起客户端、就绪确认并显示新版本 |
| 🚫 无浏览器双开 | 桌面窗口启动服务时自动 --no-open,不再额外弹出浏览器;launcher 浏览器模式不受影响 |
| ⬆️ 核心版本跟随 | 内置 DeepSeek Harness 核心引擎包跟随官方 npm 最新版(当前 0.1.1-rc.2) |
| 📦 安装选项 | 可勾选「添加桌面快捷方式」「安装完成后直接打开」 |
| 🗑️ 干净卸载 | 设置 → 应用 → 卸载,自动清理全部文件 |

🚀 快速开始

方式一:安装包(推荐给别人)

1. 下载 deepseek-harness-client-v0.3.2.exe(约 182MB,自包含)
2. 双击运行:
- 自动检测 Node.js(没装会自动下载便携版,免管理员)
- 勾选「添加桌面快捷方式」「安装完成后直接打开」
- 点「安装」,约 1~5 分钟完成
3. 首次打开输入你自己的 DeepSeek API Key(platform.deepseek.com 申请)
4. 开始使用!

安装位置:C:\Users\你的用户名\DeepSeek Harness

方式二:便携包

1. 下载 deepseek-harness-client-v0.3.2.zip(约 182MB)
2. 解压得到 DeepSeek Harness 文件夹
3. 双击文件夹里的 蓝色大肥鱼DSH.exe(首次启动会自动安装依赖)
4. 输入你的 API Key 即可

方式三:从源码构建(开发者)

见下方 开发与构建。

🔑 关于 API Key(重要)

- 客户端不预置任何人的 Key,安装包里没有、也不会携带任何密钥
- Key 只保存在运行者自己电脑的 C:\Users\你的用户名\.dsh\.credentials.yaml
- 首次打开必须输入自己的 Key,否则无法使用
- 换 Key / 查余额:打开客户端后,点标题栏右侧的 🔑 按钮,在面板里直接修改 Key 或查询 DeepSeek 余额

📖 使用说明

日常使用
- 双击桌面快捷方式 DeepSeek Harness(或安装目录的 蓝色大肥鱼DSH.exe)
- 关闭窗口时会询问「是否同时停止服务」,点「是」即全部退出

两种模式
- 蓝色大肥鱼DSH.exe:桌面客户端(默认,推荐)
- launcher.exe:浏览器模式备选(双击后自动打开浏览器)

文件位置
| 内容 | 位置 |
| 客户端安装目录 | C:\Users\你的用户名\DeepSeek Harness |
| AI 工作目录(生成的文件) | C:\Users\你的用户名\DeepSeek-Harness-Workspace |
| API Key | C:\Users\你的用户名\.dsh\.credentials.yaml |
| 历史会话记录 | C:\Users\你的用户名\.dsh\sessions |
| 服务日志 | 安装目录 data\server.log |

升级与卸载
- 升级:双击安装目录里的 更新.bat
- 卸载:双击安装目录的 uninstaller.exe,或 设置 → 应用 → 卸载

🛠️ 开发与构建

环境要求
- Windows 10/11 x64
- .NET Framework 4.8(系统自带)+ csc.exe
- Node.js ≥ 20(构建 Electron 素材时需要网络)

目录结构

├── src/ C# 安装器/启动器源码 + build.ps1 构建脚本 ├── resources/app/ Electron 桌面客户端(main.js / preload / UI) ├── scripts/ 安装/配置/卸载 PowerShell 脚本 ├── app/ dsh 核心依赖(node_modules 不入库,npm install 生成) ├── data/ 图标素材 └── build/ (构建产物,不入库)

构建安装包
1. 安装依赖
cd app
npm install --registry=https://registry.npmmirror.com

2. 准备 Electron 素材库(首次)下载 electron 发行包解压到 build/electron-dist/,并将 electron.exe 改名 蓝色大肥鱼DSH.exe 后用 rcedit 换图标

3. 一键构建(生成安装器 exe + 便携 zip) powershell -File src\build.ps1

产物输出到 D:\DeepSeek Harness\:
- 蓝色大肥鱼DSH-安装程序.exe(自包含安装器)
- 蓝色大肥鱼-DSH懒人客户端.zip(便携包)

技术要点
- Electron 43:自包含 Chromium 内核,免疫杀毒软件 ML 误报(早期 WebView2 方案曾被 Defender 误报而弃用)
- C# 5 + .NET Framework 4.8:安装器/启动器用系统自带 csc.exe 编译,零额外运行时
- 代码签名:构建脚本自动用自签名证书签署全部 exe,降低杀软误报
- 国内网络友好:npm/Node 下载默认走 npmmirror 镜像,自动回退官方源

❓ 常见问题

Q: 杀毒软件提示"已保护你的电脑"?
A: 程序已带代码签名。若仍被拦截:点「更多信息」→「仍要运行」;或在 Windows 安全中心 → 排除项添加安装目录。

Q: 首次打开需要输入 Key?
A: 是的,必须输入你自己的 Key。安装包不携带任何 Key。

Q: 端口被占用?
A: 自动换端口。如果已有 DSH 在运行,客户端会直接复用。

Q: 安装包为什么这么大?
A: 内置了 Electron/Chromium 内核(约 250MB 解压后),换来稳定高清的独立窗口。

📄 许可

- 本项目为学习与分享用途,基于 deepseek-ai/deepseek-harness(MIT 协议)
- 使用时请遵守 DeepSeek 平台服务条款与相关法律法规
- API 费用由使用者自行承担(Key 归属使用者)

有问题欢迎提 Issue,或直接找蓝色大肥鱼 🐟
预览分享卡片长什么样 ↓Amnesia-accompany/deepseek-harness-client
分享 · DeepSeek Harness Hub
Amnesia-accompany/deepseek-harness-client

一键安装启动,在独立桌面窗口里使用全部功能

这是你的仓库?认领条目

回到顶部