DSH Web 插件:悬浮式 Git 提交面板

前言

在使用 DeepSeek Harness (DSH) 进行开发时,Git 仓库的提交管理往往是打断对话流的一个环节。传统的做法是切换终端、运行 git 命令,或者手动复制粘贴 diff 信息。DSH 的设计理念是「一切皆插件」,社区开发者 135ty 提供了一个名为 dsh-git-commit-panel 的 Web GUI 插件,旨在将 Git 提交操作直接集成到 DSH 的网页界面中,通过悬浮胶囊的形式,让改动一目了然,提交信息可以手写也可以由 AI 起草,实现一键提交。

插件定位

这是一个运行在 DSH Web / CLI 环境下的插件,由开发者 135ty 维护。它解决的核心问题是:在 DSH 的 Web 界面中,如何直观地查看当前对话工作区的 Git 变更,并方便地完成提交或推送操作。

核心功能

  1. 悬浮胶囊通知
    当当前对话所在目录的 Git 仓库有未提交改动时,DSH 网页界面会浮出一枚胶囊。它显示当前分支名称、待提交的文件数量以及增删行数(例如 ⑂ main 6 个更改 +61 -5)。如果工作区干净或目录不是 Git 仓库,胶囊不会出现。

  2. 提交信息处理
    提交信息支持两种方式:手写输入,或者点击「AI 生成」。如果留空直接点击提交,插件会自动调用 AI 根据变更内容生成符合规范的提交信息。
    提交信息遵循 Conventional Commit 规范:首行是 type 与 scope(使用英文),主题不超过 72 字符。

  3. 提交与推送
    提供两个主要动作:「提交」和「提交并推送」。插件行为对齐 ZCode 的 Git 工具,支持在提交前选择是否暂存全部更改(包括未跟踪文件)。

  4. 语言与主题
    插件界面支持中英双语,跟随 GUI 的语言设置;同时跟随界面的浅色或深色主题。

安装与启用

本插件不发布 npm 包,只从 GitHub 分发。推荐使用预编译的 Release 包以避免本地构建的麻烦。

前提条件:
* DeepSeek Harness 版本 >= 0.2.0-rc.1
* Host 的 PATH 环境变量中包含 git

安装步骤:
1. 执行以下命令安装插件(使用预编译包):

    dsh plugin --profile web add https://github.com/135ty/dsh-git-commit-panel/releases/latest/download/dsh-git-commit-panel.tgz
  1. 安装完成后,需要重启 dsh web 进程以使插件生效。

从 GitHub 源安装(需构建):
如果需要安装源码或钉定特定版本,可以使用以下命令:

dsh plugin --profile web add github:135ty/dsh-git-commit-panel

注意:从 GitHub 源安装会下载源码并在本地构建。由于 pnpm 的安全策略,首次从源码安装需要配置 pnpm-workspace.yaml 中的构建授权。

注意事项

  • 安装范围:此插件只能在 dsh web 或 CLI 环境下安装。DSH Desktop 客户端仅接受已发布到 npm 的包,因此无法通过 GitHub 源安装此插件。
  • 作用域限制:插件只识别当前对话所在的工作区。如果切换到其他对话或非已注册工作区,胶囊不会出现。
  • 运行环境:插件只在本机环境生效,且仅对已注册的工作区有效。由于浏览器安全限制,不能指定任意目录来运行 git 命令。

总结

这个插件通过 UI 悬浮组件,将 Git 提交流程无缝嵌入 DSH 的工作流,利用 AI 辅助生成规范化的提交信息,适合习惯在浏览器中进行代码管理的 DSH 用户。

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

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

小夜