dsh-git-vcs:DSH Web GUI 的 Git 版本管理插件

DSH(DeepSeek Harness)采用插件化架构,支持在 Web 界面中扩展功能。dsh-git-vcs 是一个实现 Git 版本控制能力的插件,它在 DSH Web GUI 的右侧栏新增了「版本管理」页,将本地变更管理、提交树查看、分支与贮藏管理等核心操作集成到浏览器端。

插件定位与功能

该插件由 TiChuXiXi 维护,基于 MIT 协议开源。它主要解决在 Web 界面下进行代码版本管理的问题,功能参照 IntelliJ IDEA 的 Version Control 工具窗(Alt+9)与 Commit 工具窗(Alt+0)设计。

核心功能点如下:

  • 右侧栏入口:在右侧栏注册了「版本管理」页(order: 20),同时引导页提供胶囊入口。分栏、全屏及展开/收起由官方的 @deepseek-ai/dsh-client-ui-sidebar-right 插件处理。
  • 版本管理能力:支持本地变更查看与勾选提交、提交树(多泳道图,支持 --all)、分支/远程/贮藏管理、以及 Git 命令流水记录。
  • 非仓库处理:当打开的目录不是 Git 仓库时,页面会切换为居中的空态,并提供一键初始化仓库的按钮。

安装与启用

  1. 安装插件
    通过官方 CLI 安装该插件:
    dsh plugin --profile web add dsh-git-vcs
确保当前环境兼容。该插件需要 DeepSeek Harness 版本 **≥ 0.1.7-rc.2**。
  1. 验证安装
    安装完成后,检查配置是否生效:
    dsh --profile web --dump-config | Select-String "dsh-git-vcs"
  1. 代码生效
    插件采用零构建策略,但修改了 index.js(host 侧)或 cordis.patch.yml 后,必须重启 dsh web 进程才能生效。修改 lib/client.js(浏览器侧)则只需刷新页面。

技术实现与依赖

  • 零构建:插件无编译步骤,直接使用 ESM 格式,不依赖运行时库。
  • 依赖服务:
    • subprocess:用于在 host 进程中执行 git 命令(以 argv 形式,不进 shell)。
    • connection:用于 RPC 通道的信任栅栏校验。
    • webServer:用于注册 /git-vcs RPC 路由。
  • RPC 通道:插件通过 /git-vcs RPC 通道向 host 发起 Git 操作请求。Host 侧执行后,返回标准化的错误码(如 git-vcs/not-a-repo、git-vcs/write-disabled 等)及数据。

典型用法

  1. 查看仓库状态:在右侧栏打开「版本管理」页,查看当前会话工作目录下的变更、分支与提交历史。
  2. 初始化仓库:如果打开的目录不是 Git 仓库,点击页面中央的「在当前目录初始化 Git 仓库」按钮即可完成初始化。
  3. 调用命令:通过 /git-vcs RPC 通道调用具体的 Git 命令端点(如 repo/info 获取仓库元数据,status 获取变更状态等)。

总结

dsh-git-vcs 为 DSH Web 界面提供了完整的 Git 版本控制能力,使其具备了类似 IDE 的操作体验。开发者可以通过标准的 RPC 接口或右侧栏 UI 进行代码的提交、分支管理与历史回溯。

  • 仓库地址: https://github.com/TiChuXiXi/dsh-git-vcs
  • 目录页: https://www.skillhub.cn/plugins/TiChuXiXi/dsh-git-vcs
羽毛球分组比赛记分
小程序二维码

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

小夜