← Back to home@DaXiGua732

start-dsh

一个能够直接快速启动DSH的ps脚本,具备高峰时段检测功能,高峰时段启动时不会直接进入DSH,反之直接进入,帮助个人开发者省钱省力

Stars
0
Language
PowerShell
Created
Aug 22, 2026
Updated
Sep 23, 2026

Introduction

start-dsh

DSH(DeepSeek Harness)Web 界面一键启动脚本(Windows PowerShell)。

本脚本等价于执行官网命令 npx @deepseek-ai/dsh web,并在此基础上提供:

  • 高峰时段检查:北京时间周一至周五(不含中国法定节假日)9:00–12:00、14:00–18:00 启动前提示确认(y/n)
  • 空闲时段直接进入:其余时段(含周末及中国法定节假日全天)为空闲时段,价格为高峰时段的一半,无需提示直接启动
  • 内置法定节假日表:收录 2025、2026 年中国法定节假日;缺当年数据时退化为“仅按周一至周五”判定并给出警告
  • 端口占用检测:DSH 已在运行时只打开浏览器,不重复启动
  • 自动打开浏览器:端口就绪后自动访问
  • 前台 / 后台 两种运行方式

环境要求

  • Windows + PowerShell 5.1 及以上
  • Node.js(提供 npx;或 PATH 中已安装 dsh)

快速开始

.\start-dsh.ps1

空闲时段直接启动;高峰时段会提示:

当前为高峰时段(北京时间周一至周五 9:00-12:00、14:00-18:00,法定节假日除外),空闲时段价格为高峰时段的一半,是否继续进入?请输入 y/n

输入 y/Y 继续启动,输入 n/N 取消。

空闲时段(含周末与中国法定节假日全天)不会询问,直接进入并提示:

当前为空闲时段(周末),价格为高峰时段的一半,直接启动。

括号内为判定原因,可能为 周末、中国法定节假日、工作日非高峰时段。

参数

参数默认值说明
-Port3080监听端口,传 0 表示系统自动分配
-BindHost127.0.0.1绑定地址,仅本机可访问(安全默认值)
-TrustedHost(空)额外信任的浏览器来源,对应 dsh 的 --trusted-host(host 或 host:port)
-NoBrowser—启动后不自动打开浏览器
-Background—后台运行,日志写入 %USERPROFILE%\.dsh\logs

示例

# 默认启动(前端 http://127.0.0.1:3080)
.\start-dsh.ps1

# 指定端口,且不自动打开浏览器
.\start-dsh.ps1 -Port 8080 -NoBrowser

# 后台启动
.\start-dsh.ps1 -Background

后台模式会打印 PID、日志路径与停止命令:

taskkill /PID <pid> /T /F

实现细节

  • 北京时间以 UTC+8 计算,与本机时区无关(中国无夏令时)。
  • 峰谷判定规则:
    • 高峰时段:周一至周五(不含中国法定节假日)9:00–12:00 与 14:00–18:00(含起点、不含终点)。
    • 空闲时段:其余所有时间,包括周末及中国法定节假日全天;空闲时段价格为高峰时段价格的一半。
  • 法定节假日数据取自国务院办公厅通知,仅收录“放假”日期;调休补班日(周六/周日上班)仍按周末处理,全天为空闲时段。
  • 节假日表内置 2025、2026 年。国务院通常每年 11 月前后公布次年安排,届时需在脚本内的 $script:ChinaHolidays 中补充;若当前年份缺少数据,脚本仅按周一至周五判定并输出警告。
  • 若目标端口已有 DSH 实例在运行,脚本直接打开浏览器并退出,不再提示。
  • 工作目录固定为脚本所在目录,DSH 会话按该目录归类。