zhenghaoyang24/dsh-desktop 预览 preview

zhenghaoyang24/dsh-desktop

桌面端Desktop ⭐ 2 MIT 客户端与启动器Clients & Launchers

A desktop client for DeepSeek Harness — start dsh as easily as using Claude Code or Codex. Double-click and go, no commands needed.

catalog 简介 / catalog descriptioncatalog description:DeepSeek Harness desktop.DeepSeek Harness 桌面端。

项目介绍Project Overview

dsh-desktop 是 DeepSeek Harness 的 Windows 桌面客户端,基于 Electron 封装 dsh 网页界面。核心能力包括一键启动与 dsh 路径自动检测、主题与中英文随 dsh 同步、任务完成系统通知、F11/F12 快捷键控制。适用于希望免命令行、双击即用 dsh 的 Windows 用户。注意:仅支持 Windows x64,单文件版每次启动会自解压约 15 秒,且与官方无关联。

dsh-desktop is a Windows desktop client for DeepSeek Harness, wrapping the dsh web interface in Electron. Core features include one-click launch with automatic dsh path detection, theme and English/Chinese language syncing, system notifications on task completion, and F11/F12 shortcuts. It targets Windows users who want to run dsh without command-line setup. Caveat: Windows x64 only, the single-file build self-extracts about 15 seconds per launch, and the project is unofficial and unaffiliated with DeepSeek.

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

命令行安装CLI Install

dsh plugin --profile web add github:zhenghaoyang24/dsh-desktop

zhenghaoyang24/dsh-desktop 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-desktop

dsh-desktop logo

GitHub Release License Platform

English | 中文

A desktop client for DeepSeek Harness — start dsh as easily as using Claude Code or Codex. Double-click and go, no commands needed.

This project is not affiliated with or endorsed by DeepSeek Harness. It is an independent effort to fill the gap of an official Harness desktop client and make it easier to use.

Screenshots

Startup Main UI

Features

  • 🚀 One-Click Launch — Double-click to run, automatically detects and remembers dsh path
  • 🔄 Smart Management — Auto-scans PATH candidates, port reuse, graceful exit prompts
  • 🎨 Theme Sync — Real-time follow of dsh light/dark/system theme
  • 🌐 Multilingual — English & Chinese, instantly switches with dsh settings
  • 📋 Help Menu — Current dsh info, check for updates, refresh page, quick links
  • 🖥️ View Controls — Fullscreen, refresh page...
  • 🔔 Task Notifications — Get notified when dsh completes answering, even when window is minimized
  • 🔒 Security Assurance — Loads only verified dsh pages, external links open in browser

Requirements

  • dsh installed: Run dsh -V in a terminal; it should print a version number

Installation

Note: Currently only supports Windows x64.

Download from GitHub Releases:

Package File Description
Portable folder (recommended) dsh-desktop-0.1.5-windows-x64.zip Unzip to any folder, then double-click dsh-desktop.exe
Single-file portable dsh-desktop-0.1.5-windows-x64.exe Double-click directly (self-extracts ~15s on each launch)

Usage

  1. First Launch: The app will scan for dsh installations and prompt you to select one
  2. Subsequent Launches: Starts automatically using your saved dsh path
  3. Close: Click the window close button — if dsh was running before the app, you'll be asked whether to close it

Keyboard Shortcuts

Shortcut Action
F11 Toggle fullscreen mode
F12 Toggle DevTools

Building from Source

# Clone the repository
git clone https://github.com/zhenghaoyang24/dsh-desktop.git
cd dsh-desktop

# Install dependencies
pnpm install

# Run in development mode
npx electron .

# Run tests
pnpm test

# Build for Windows
pnpm run build

Build Mirrors (for China network)

If GitHub downloads time out, set these mirrors before building:

$env:ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"
$env:ELECTRON_BUILDER_BINARIES_MIRROR="https://npmmirror.com/mirrors/electron-builder-binaries/"
pnpm run build

Project Structure

dsh-desktop/
├── main.js                  # App entry: lifecycle management
├── preload.js               # Context bridge for IPC
├── src/                     # Main process modules
│   ├── constants.js         # Port, URLs, timeouts
│   ├── dsh.js               # dsh process management
│   ├── startup.js           # Boot state machine
│   ├── view.js              # dsh WebContentsView
│   ├── window.js            # Window creation and management
│   ├── ipc.js               # IPC handlers
│   ├── theme.js             # Theme synchronization
│   ├── i18n.js              # Language support
│   ├── task-events.js       # Completion notification (dsh official event streams)
│   └── injected/            # Scripts injected into dsh page
│       ├── chrome.js        # Custom title bar
│       ├── dropdown.js      # Help/View menus
│       └── about.js         # About overlay
├── renderer/                # Startup page UI
│   ├── status.html          # Main HTML
│   ├── status.js            # UI logic
│   └── status-core.js       # i18n strings
├── test/                    # Automated tests
└── buildResources/          # Icons and logos

FAQ

Q: Port 3080 is occupied by another program? A: The app will show an error. Free the port or close the other program, then click Retry.

Q: dsh not found in PATH? A: Install dsh globally (npm install -g @deepseek-ai/dsh) or manually enter the path when prompted.

Q: How to change dsh path after initial setup? A: Delete settings.json in %APPDATA%\github.zhenghaoyang24.dsh-desktop\ and restart the application.

Q: I didn't get a notification when the task finished? A: Notifications only appear when the window is minimized at the exact moment a task ends (whether it succeeds or fails); no toast is shown while the window is visible. If you still get nothing while minimized, check Windows notification settings: Settings → System → Notifications, make sure the top-level "Notifications" toggle is on and dsh-desktop is allowed under "Notifications from these senders", and don't enable Focus Assist / Do Not Disturb.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License — see the LICENSE file for details.

Acknowledgments

上一个 Prev dsh-better-stats 下一个 Next dsh-desktop-tools