dsh-worktree-bar:工作区状态与 Git 工作树快速管理

在使用 DeepSeek Harness(DSH)进行开发时,我们需要频繁在多个仓库、分支和工作树之间切换,并确保每个会话运行在正确的隔离环境中。Composer 区域通常仅用于输入,缺乏直观的状态展示和快速创建隔离环境的入口。dsh-worktree-bar 在 Composer 上方增加了一行动态状态栏,并在启动会话时提供了创建 Git 工作树的复选框。

这是一个为 DeepSeek Harness Web UI 提供的插件,由 Hermannmayer 维护。它解决的核心问题是:如何在会话开始前快速准备隔离的开发环境,以及在对话过程中实时监控当前运行的工作区、分支及文件差异。该插件是一个独立 bundle,不依赖其他运行时环境。

核心功能

  1. 上下文状态行:在 Composer 上方显示当前会话所属的仓库、工作区、分支名称以及未提交和未跟踪文件的差异统计。
  2. 会话启动复选框:在首次提示之前,显示一个复选框。勾选该框会创建一个链接的 Git 工作树,并将随后打开的空白会话置于该工作树内。
  3. 项目级准备:通过项目根目录的配置文件,定义工作树需要链接的目录(如虚拟环境)、需要复制的文件(如配置)以及初始化命令(如 npm install)。

安装与启用

安装前请确保已安装 Node.js 20 或更高版本,且 DeepSeek Harness 版本不低于 0.1.7-rc.1。使用以下命令进行安装:

dsh plugin --profile desktop install Hermannmayer/dsh-worktree-bar

安装完成后,重启 Harness 或重新加载页面即可看到新增的状态栏。

典型用法

  1. 创建会话:在开始屏幕勾选 worktree 复选框,系统会根据项目配置准备环境并打开新会话。
  2. 查看状态:在对话中,上方状态行会显示当前分支(如 main 或 worktree-calm-otter)和工作树路径,悬停 +N -M 可查看具体的差异文件数量。
  3. 移除工作树:在对话过程中,点击状态行中的分支名称菜单,选择“Remove worktree…”即可删除该插件创建的工作树(未提交更改会提示丢弃)。

适用场景与注意

该插件适合需要严格隔离开发环境、或项目依赖本地缓存/虚拟环境的场景。安装前建议查阅源码与 MIT 许可证,确认符合项目规范。注意:由于插件是独立 bundle,客户端代码的修改需要刷新页面生效,主机代码的修改需要重启 Harness。移除工作树前会要求确认,若存在未提交更改,会提示直接丢弃。

通过该插件,可以在 Composer 区域之上获得清晰的状态视图和便捷的工作树操作入口,简化了 Git 工作树的使用流程。更多信息请参考 GitHub 或 SkillHub 目录。

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

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

Xiaoye