DSH Launcher:macOS 状态栏开发服务器管理工具

前言

在 DeepSeek Harness (DSH) 的开发流程中,pnpm dsh web 是启动本地开发服务器的标准命令。但在实际使用中,保持终端窗口打开以维持服务器运行、更新代码后手动重启、以及从日志中提取令牌化 URL,都构成了繁琐的仪式性操作。DSH Launcher 旨在解决这一问题,将服务器的启动、重启、停止以及浏览器跳转等操作封装为 macOS 菜单栏应用,无需终端介入即可管理开发服务器。

是什么

songer522/dsh-launcher 是一个针对 DeepSeek Harness 的 macOS 菜单栏工具。它允许开发者在菜单栏中直接控制本地开发服务器的生命周期(启动、停止、重启),无需打开终端或保持标签页打开。该工具包含一个配套的 DSH 插件,用于将运行中的服务器端口、进程 ID (PID) 和令牌化 URL 发布给菜单栏应用。

核心功能

  1. macOS 菜单栏应用:应用以状态栏图标形式存在,无 Dock 图标,常驻后台。
  2. 无需终端操作:支持启动、重启和停止服务器,所有操作通过菜单或点击完成。
  3. 信息发布:通过配套 DSH 插件,自动获取服务器的运行端口、进程 ID (PID) 和令牌化 URL。
  4. 高度可配置:支持自定义启动命令、端口号、工作目录和默认浏览器。
  5. 原生实现:基于原生 AppKit 开发,单 Swift 文件实现,无外部依赖。

安装与启用

安装前需确保环境满足以下条件:macOS 13+ 以及已安装 Xcode 命令行工具。

  1. 安装 DSH 插件(推荐):
    插件默认安装到 web 配置文件中。
dsh plugin --profile web add https://github.com/songer522/dsh-launcher/releases/latest/download/dsh-menubar-launcher.tgz

安装后需重启服务器以使插件生效。

  1. 安装菜单栏应用:
    从 GitHub 仓库克隆代码并执行构建脚本。
git clone https://github.com/songer522/dsh-launcher.git
cd dsh-launcher
./build.sh

构建后的应用会自动安装到 /Applications 并在菜单栏显示。

配置说明

配置文件位于 ~/.config/dsh-launcher/config。首次运行时,应用会尝试在常见工作目录中查找 DeepSeek Harness 项目(如 ~/Workspace、~/Projects 等)。如果项目位置不同,可在应用的偏好设置中手动指定。

配置项包括:
* repo:工作目录
* command:启动命令,支持 {port} 占位符
* port:监听端口
* browser:默认浏览器
* logFile:日志文件路径

注意事项

  1. 插件依赖:菜单栏应用在没有插件的情况下也能工作,它会读取自己启动的服务器的日志来获取端口和 PID。但为了支持从终端启动的服务器,推荐安装插件。
  2. 权限运行:插件以当前 DSH 进程的权限运行,请确保从可信来源安装并检查源码。
  3. 配置文件:插件配置文件位置为 ~/.config/dsh-launcher/runtime.json。若配置文件不存在,说明服务器未重启或未运行。
  4. 状态栏交互:菜单栏图标每 3 秒轮询一次服务器状态,运行时为实心,停止时为变暗。

结语

DSH Launcher 将 DeepSeek Harness 的终端启动仪式转化为菜单栏的一键操作,减少了维护服务器状态的精力消耗。对于频繁使用 DSH 进行本地开发的 macOS 用户,这是一个提升效率的实用工具。

目录链接:https://www.skillhub.cn/plugins/songer522/dsh-launcher
GitHub 链接:https://github.com/songer522/dsh-launcher

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜