在 DeepSeek Harness Web 中开发时,需要在浏览器环境内直接处理 Git 交互。dsh-git-sidebar 插件通过可视化的侧边栏面板,解决了在工作区切换、代码提交、分支管理等方面的操作割裂问题。
这是什么¶
该插件由 Adamaik 维护,提供了一套完整的 Git 集成方案。它跟随当前活动的对话工作区,自动定位 Git 仓库根目录,并在右侧边缘提供可拖拽的入口,支持查看变更、生成提交信息以及执行基础 Git 操作。
核心功能¶
- 工作区跟随:面板会根据左侧对话列表的选择切换,自动解析对应的 Git 根目录(支持从工作区路径向上查找或针对嵌套检出的一级向下查找)。
- 可拖拽入口:在窗口右侧边缘显示为垂直标签,点击展开面板,支持拖拽调整位置。
- 变更列表:按 staged(已暂存)和 unstaged(未暂存)分组,显示状态徽章(M/A/D/R/?),点击文件即可暂存或取消暂存。
- 分支切换:下拉菜单列出本地和远程分支,切换前会检查工作区是否干净,存在未提交变更时会给出警告。
- AI 提交信息:利用当前会话默认的模型,根据
git status和git diff HEAD生成符合 Conventional Commits 规范的中文主题提交信息,并填充到编辑框供修改。 - 操作:支持提交(可选择全部变更)、推送、拉取和刷新。
安装与启用¶
在终端执行以下命令安装。该插件要求 DSH 版本 >= 0.0.1。
dsh plugin --profile web add dsh-git-sidebar
典型用法¶
安装后,Git 标签会出现在窗口右侧边缘。点击标签打开面板,拖动标签可调整面板位置。在左侧侧边栏选择一个对话,面板即会指向该对话对应的工作区。
技术与注意¶
- 许可证:MIT。
- 架构:主机端通过
webServer服务注册 JSON 路由,通过shell服务运行 git 命令;AI 提交功能调用llm.stream接口。浏览器端是一个dsh.client模块,注册到shell.overlay中。 - 依赖:使用前请确保环境满足依赖要求。
总结¶
该插件为 DSH Web 用户提供了无需离开界面即可管理代码的途径。更多详情与源码可查阅 GitHub 仓库:https://github.com/Adamaik/dsh-git-sidebar