dsh-desktop-lite
Ultra-lightweight cross-platform native desktop client for DeepSeek Harness (macOS / Linux / Windows, <1MB)
- Stars
- 0
- Language
- Swift
- Created
- Aug 19, 2026
- Updated
- Aug 19, 2026
Introduction
DSH Desktop Lite (DeepSeek Harness 轻量化桌面)
DeepSeek Harness (DSH) Web UI 的超轻量跨平台原生桌面客户端,专为极致性能与高效协同设计。
一、项目概述
本项目为 DeepSeek Harness (DSH) Web UI(默认运行在 http://127.0.0.1:3080)提供了专属的原生桌面客户端(全面支持 macOS、Linux 与 Windows)。
🌟 核心亮点
- 系统级原生轻量架构:
- macOS:基于 Swift (
AppKit + WebKit) 原生单进程实现,产物仅 ~500KB,DMG 安装包仅 ~276KB。 - Linux:基于
GTK3 + WebKit2GTK,无缝适配 GNOME / KDE / XFCE 等各大主流桌面环境。 - Windows:基于 Microsoft Edge
WebView2原生内核与 C# 启动器,安装包仅 < 1MB。
- macOS:基于 Swift (
- macOS Universal 2 双架构原生加速:同时提供 Apple Silicon (
arm64) 与 Intel (x86_64) 原生架构支持。 - 双运行模式无缝切换:支持在菜单栏一键切换【常驻模式】与【随窗模式】,兼顾 24/7 后台挂机任务与轻量即用即走需求。
- 全自动依赖自愈与智能探测:内置环境探测引擎,自动识别系统的 PATH、Homebrew、NVM、FNM、Volta 等多环境路径;执行一键安装时可自动配置
@deepseek-ai/dsh核心依赖。 - 深度系统集成:支持 macOS 原生应用菜单与全局快捷键、Linux 标准 XDG 桌面项与用户级 systemd 管理、Windows 系统托盘看护。
二、双运行模式说明
客户端提供了两种运行模式,满足不同工作场景下的资源与任务管理需求:
| 模式 | 运行机制 | 适用场景 |
|---|---|---|
| 常驻模式 (KeepAlive) [默认启用] | - macOS:由系统 launchd 进行守护(KeepAlive: true, ThrottleInterval: 5s)。- Linux:由 systemd --user 用户服务进行常驻守护。- Windows:系统托盘常驻守护 + 进程看护自动拉起。 - 关窗不中断:关闭界面仅退出前端窗口,后台 AI 挂机任务和远程/局域网连接保持 24/7 运行;再次打开窗口即可瞬间接入。 | 长期挂机运行大任务、需要手机或远程设备随时随地通过网络访问。 |
| 随窗模式 (On-Demand) | - 窗口为主进程。 - 打开客户端时启动后端服务并加载界面。 - 关闭窗口时立即停止后台服务并释放端口与系统内存。 | 临时本地轻量使用、使用完毕后希望完全释放系统资源。 |
如何切换模式?
- macOS:在屏幕顶部主菜单栏点击 【运行模式】,勾选
常驻模式 (Cmd+1)或随窗模式 (Cmd+2)。 - Linux / Windows:在窗口菜单栏/标题栏点击 【运行模式】 即可实时切换。
- 偏好设置会自动保存至用户配置目录。
三、快速安装与使用指南
💡 自动就绪特性:本项目安装脚本内置环境检测引擎,会自动探测并在必要时协助配置
@deepseek-ai/dsh核心服务,实现全自动一键就绪。
🍎 macOS
方式 1:一键安装(推荐)
在项目根目录下执行以下命令,脚本将自动完成依赖检测、双架构编译并部署至 /Applications:
bash scripts/install.sh
启动方式:在启动台/程序坞中点击 DSH Web,或在终端执行 open -a "DSH Web"。
方式 2:下载 DMG 安装包
前往 GitHub Releases 下载 DSH-Web-Desktop-macOS.dmg,双击后将 DSH Web.app 拖入 Applications 文件夹即可。
🐧 Linux
1. 安装基础依赖
- Ubuntu / Debian:
sudo apt update && sudo apt install -y libgtk-3-0 libwebkit2gtk-4.1-0 python3-gi - Fedora / RHEL:
sudo dnf install -y gtk3 webkit2gtk4.1 python3-gobject - Arch Linux:
sudo pacman -S gtk3 webkit2gtk-4.1 python-gobject
2. 一键安装
bash scripts/install.sh
安装后将自动注册应用启动器图标与 systemd --user 用户级常驻守护,亦可在终端直接运行 dsh-web 启动。
🪟 Windows
方式 1:一键安装至开始菜单(推荐)
在 PowerShell 中运行安装脚本:
powershell -ExecutionPolicy Bypass -File scripts\install-windows.ps1
安装后可在 Windows「开始菜单」中直接点击 DSH Web 图标启动。
方式 2:免安装即时启动
powershell -ExecutionPolicy Bypass -File windows\launcher.ps1
四、目录结构
dsh-web-desktop/
├── app/ # macOS 原生 App 源码与资源
│ ├── Contents/
│ │ ├── Info.plist # macOS App 元数据
│ │ └── Resources/
│ │ └── icon.icns # macOS Squircle 图标
│ └── launcher/
│ └── main.swift # macOS Swift 原生启动器与生命周期
├── linux/ # Linux 原生客户端
│ └── src/
│ ├── main.c # Linux C + WebKitGTK 客户端源码
│ └── dsh-web.py # Linux Python + GTK 跨发行版客户端
├── windows/ # Windows 原生客户端
│ ├── DshWeb.csproj # Windows .NET 8 WebView2 工程
│ ├── src/
│ │ └── Program.cs # Windows C# 原生主程序与托盘看护
│ └── launcher.ps1 # Windows 免编译快速启动脚本
├── assets/
│ ├── ai.deepseek.dsh-web-desktop.plist # macOS 登录自启模板
│ ├── dsh-web.desktop # Linux XDG 桌面项
│ ├── dsh-web.service # Linux systemd 用户守护服务模板
│ └── icons/ # 包含 icns, ico, PNG 全套多分辨率图标
├── configs/
│ ├── ai.deepseek.dsh-web.plist.template # macOS KeepAlive 守护模板
│ └── config.example.json # 客户端配置示例
├── scripts/ # 全平台构建与安装运维脚本
│ ├── assemble.sh # 编译 macOS Universal 2 应用
│ ├── build-icon.sh # 重新绘制全套 icns, ico, PNG 图标
│ ├── build-linux.sh # 构建 Linux 客户端
│ ├── build-windows.ps1 # 构建 Windows 客户端
│ ├── package-dmg.sh # 打包 macOS .dmg 安装包
│ ├── install.sh # 跨平台一键安装入口 (macOS & Linux)
│ ├── install-windows.ps1 # Windows 一键安装脚本
│ ├── uninstall.sh # 跨平台卸载与清理工具
│ ├── uninstall-windows.ps1 # Windows 卸载脚本
│ ├── enable-autostart.sh # 启用开机自启
│ ├── disable-autostart.sh # 禁用开机自启
│ ├── ensure-dsh.sh # 依赖检测与自动安装引擎
│ └── check-service.sh # 诊断 3080 端口与进程服务状态
├── .github/workflows/build.yml # GitHub Actions 多平台自动化 CI/CD
├── LICENSE # MIT 开源协议
└── README.md # 项目说明文档
五、配置自定义(可选)
客户端配置文件路径:
- macOS:
~/Library/Application Support/DSH Web/config.json - Linux:
~/.config/dsh-web/config.json - Windows:
%APPDATA%\DSH Web\config.json
{
"keepAlive": true,
"port": 3080,
"dshPath": null,
"nodePath": null
}
keepAlive:true(常驻模式) /false(随窗模式)。port:自定义服务监听端口(默认3080)。dshPath:显式指定dsh可执行文件路径(留空则自动探测)。nodePath:显式指定node可执行文件路径(留空则自动探测)。
六、开源协议
本项目基于 MIT License 开源。