dsh-commit-review:在 DSH 侧边栏按仓库查看会话内提交

前言

在 DeepSeek Harness(DSH)里让智能体改代码,一个常见问题是:这一轮会话里到底动过哪些仓库、提交了几次、每个 commit 改了什么文件。靠终端自己 git log 可以查,但要在多仓库工作区里来回切目录,也不方便和当前会话 UI 对齐。

dsh-commit-review 把「本会话工作区里产生了哪些提交」做成只读侧边栏页签,按仓库分组,并可展开到单文件 diff。下面介绍它的定位、能力、安装与入口。

这是什么

插件由 LiuQhahah 维护,仓库为 LiuQhahah/dsh-commit-review,在 SkillHub 目录中归类为客户端插件。package.json 版本为 1.0.0,许可证 MIT。

设计上只读:Host 侧仅执行 git log、git show、git rev-parse,不会 stage、commit 或写入仓库。目标是回答「智能体在本会话工作区里实际提交了哪些变更」,而不是替代 Git 客户端做写操作。

核心功能

右侧栏 Commit review 页签提供:

  1. 时间范围:预设 Today / Last 7 days / Last 30 days,或手动指定 since / until。
  2. 仓库筛选:自动发现工作区下各 git 仓库(多仓库工作区可用;README 中作者示例为 55 个仓库)。
  3. 按仓列表:每个仓库一节,提交按时间从新到旧;展示短 hash、时间戳、提交说明,以及 +N/−M 行数统计。
  4. Diff:任意提交可 Show diff,统一 diff 带红绿行级高亮;支持 AbortController 取消,过大 diff 会截断。
  5. 文件列表:点击 N files 可查看该提交涉及文件及每个文件的增删行数。

Host 注册三个只读 GET 路由:/api/commit-review/repos、summary、diff;Client 通过 dsh-better-sidebar 注册页签,与 Host 共用路径前缀 api/commit-review(Client 使用同源相对路径,无前导斜杠)。

安装与启用

在插件源码目录下执行(使用该目录的绝对路径作为目标;示例假设已把仓库放在 ~/dsh-plugins/commit-review):

# Use this directory's absolute path as the target
# (the example assumes you cloned to ~/dsh-plugins/commit-review)
dsh plugin --profile web add "$(pwd)"

也可由智能体调用 plugin_manager 的 install_bundle,目标同样为该目录的绝对路径。

安装后必须重启 dsh web,再在浏览器中硬刷新(如 Cmd+Shift+R),Host 路由才会加载。dsh plugin 以 link: 方式装入 profile,改源码后重启即可生效,无需重复安装。

若写入 ~/.dsh 时权限不足,可对 dsh plugin 使用 danger-full-access 重试。

典型用法:三种入口

三种打开方式

A — 底部面板仍为空: 点击右上角 Expand bottom panel(快捷键 ⌃ + `),出现卡片行,点 Commit review。

B — 底部面板已有页签: 卡片会消失,只剩页签条。点底部面板页签条最左侧的小 +,在菜单中选 Commit review。注意屏幕上有两个 +:窗口右上角是新建会话页签;需要的是底部面板内部、紧贴左缘的那个。

C — 右侧边栏: 点 Open right sidebar(⇧⌘B),在列表中选 Commit review。

常见误解:A 中的卡片仅在底部面板完全没有页签时出现;打开过 Terminal 或 Git 后布局会被 DSH 持久化,卡片不再显示——这不代表插件未加载,请改用 B 的 + 菜单。

Commit review 页签界面

适用场景与注意

适合: 在 DSH Web 会话中复盘智能体或本人在当前工作区产生的提交,尤其多仓库 monorepo 或大量子仓库时,用时间范围和仓库过滤器缩小范围。

权限与安全: 插件随当前 DSH 进程权限运行,通过 Host 在工作区根目录上调用 git。安装前应阅读源码与 MIT 许可证,确认符合你的安全策略。

会话与 cwd: SessionStore.get(id) 仅返回进程内存中的会话;dsh web 重启后旧 session 可能不在内存,单靠 sessionId 无法解析工作区。Client 会同时发送侧边栏 scope 的 cwd,Host 在 session 不可用时回退到该路径(sessionCwd(scoped, sessionId, explicit))。

结尾

dsh-commit-review 把会话内 git 提交整理成只读侧边栏视图,按仓库与时间筛选,并支持 commit 级与文件级 diff,适合在 DSH 里做提交复盘而不离开 IDE 式 Web 界面。

中文 README:README.zh-CN.md

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

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

小夜