DSH_Shell
其他 活跃维护

DSH_Shell

lionheartjie/DSH_Shell

Rust与Tauri框架开发的跨平台桌面客户端封装工具,轻量化部署,内置底层能力调用接口,开箱即用无需额外配置,运行流畅且资源占用极低。

0
Stars 标星
0
Forks 分支
0
Watchers 关注
0
Open Issues
Rust
主要语言
MIT
开源协议
288 KB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:lionheartjie/DSH_Shell
git clone https://github.com/lionheartjie/DSH_Shell.git
git clone git@github.com:lionheartjie/DSH_Shell.git
README.md main

DSH_Shell — DeepSeek Harness 的 Rust/Tauri 套壳

用 Rust(+ Tauri 桌面窗口)启动并托管 DeepSeek Harness Web 服务,与 harness 只通过 4 个边界解耦,升级不影响壳。提供 自包含便携包,解压即用、无需安装 Node。

特性

  • 自包含:portable 包内含外壳、node.exe、dsh(harness 本体)、WebView2Loader.dll 与 dsh-home 模板;解压即用。
  • 数据隔离:使用程序同目录的 .dsh 作为 DSH_HOME,不读取本机 ~/.dsh,不加载本机已装插件/预设。
  • 跨平台:核心为 Rust-only(std::process + ctrlc);Tauri 窗口层支持 Windows / Linux / macOS。
  • 解耦:仅通过 进程启停 / 配置注入 / HTTP 就绪探测 / 生命周期 4 个边界与 harness 交互。
  • 桌面窗口:Tauri 开窗加载 harness Web UI,关窗自动终止子进程。
  • 托盘常驻 + 后台通知:最小化/关窗后托盘常驻;窗口不在前台时,通过 notify-rust 发送「启动失败 / 已停止运行 / 任务完成」等桌面通知。

快速开始

便携包(推荐)

从 Releases 下载
DSH_Shell_0.1.0_x64-portable.zip,解压后运行 DSH_Shell.exe。首次启动选择数据存储位置(默认程序目录下 .dsh)。

源码运行

# 前置:Node + 已安装 dsh-npm;DSH_HOME 指向数据目录
cd dsh_shell
cargo build
$env:DSH_HOME='<your-dsh-home>'
$env:DSH_NPM_DIR='<dsh-npm>'
.\target\debug\harness-shell.exe
# 输出 READY: http://127.0.0.1:<port>,浏览器打开;Ctrl+C 停止

构建桌面安装包

$env:CARGO_TARGET_DIR='<build>'   # 无空格,避开 gnu windres 坑
pnpm exec tauri build              # 生成 NSIS 安装包

配置(环境变量)

变量 默认 说明
DSH_HOME exe 同级 dsh-home harness 数据/配置目录
DSH_NPM_DIR exe 同级 dsh 已安装的 dsh 目录
NODE_BIN node node 可执行文件
DSH_PROFILE web 要启动的 profile
DSH_SHELL_PORT 0 端口,0=OS 随机分配
DSH_SHELL_PATCH ./patch.yml 传给 harness 的 --patch 覆盖层

目录结构

src/                   CLI 入口(启动/监视/退出)
harness-shell-core/    共享 launcher 库(spawn/解析端口/健康/停止)
src-tauri/             Tauri 桌面窗口层(DSH_Shell)
docs/macos.md          macOS 适配与打包说明

文档