只审新增改动,批准后自动记录检查点并回传意见
28.1/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add wuxiangru915/dsh-review-loop该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:待复验
是什么
dsh 原生插件 · ui
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 74 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 9 处,展示前 9 条)
- 读取本地文件lib/index.mjs:28
if (!existsSync(file)) return void 0; - 读取本地文件lib/index.mjs:30
return JSON.parse(readFileSync(file, "utf8")); - 写入本地文件lib/index.mjs:38
mkdirSync(dir, { recursive: true }); - 写入本地文件lib/index.mjs:40
writeFileSync(tmp, JSON.stringify(checkpoint, null, 2)); - 写入本地文件lib/index.mjs:41
renameSync(tmp, file); - 执行外部命令固定命令lib/index.mjs:62
const r = spawnSync("git", args, { - 读取本地文件lib/index.mjs:112
const lines = readFileSync(joinPath(cwd, path), "utf8").split("\n"); - 发起网络请求lib/client.js:71
const res = await fetch(`${STATE_PATH}?session=${encodeURIComponent(sessionId)}`, { headers: { accept: "application/json" } }); - 发起网络请求lib/client.js:207
const res = await fetch(`${APPROVE_PATH}?session=${encodeURIComponent(session.sessionId)}`, {
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-commands@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-llm@deepseek-ai/dsh-session@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-ui-conversation@deepseek-ai/dsh-client-ui-primitives给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 只审新增改动
- 批准后记录检查点
- 回传审查意见
DeepSeek Harness 增量 diff 审查器——带 Web UI 审查面板和 /review 命令。
README
由 DeepSeek 最新模型翻译生成dsh-review-loop
面向 DeepSeek Harness 的增量代码审查插件。
English · MIT License
dsh-review-loop 把"人审查 agent 干的活"变成增量、闭环、不重复的过程:批准一批改动后记录审查检查点(checkpoint),下次审查只显示此后新增的改动——已看过的内容不会再次出现。审查意见通过 harness 常规消息通道注入 agent,不打断它正在进行的任务。
解决什么问题
agent 跑完一个任务通常改动十几个文件。每次都看完整 diff 很慢,重复看已审查的内容更是浪费。本插件让审查跟着 agent 的进度推进:
agent 干活(改文件) -> 打开审查面板:只显示上次审查检查点之后的改动 -> 逐文件查看 diff、填写审查意见 -> 批准:记录新的检查点,意见注入 agent -> agent 响应意见继续工作;新改动成为下一批审查
特性
- 增量审查(since-review):批准时把工作区快照记为检查点;下次审查只比较「检查点 -> 当前」,已审文件从队列中消失,除非再次被修改。
- 双入口:Web UI 审查面板(输入框上方 dock,2 秒轮询)+ /review 命令(键盘优先)。两者共用同一套核心逻辑。
展开完整文档(README 剩余 1 节)
dsh-review-loop 面向 DeepSeek Harness 的增量代码审查插件。 English · MIT License dsh-review-loop 把"人审查 agent 干的活"变成增量、闭环、不重复的过程:批准一批改动后记录审查检查点(checkpoint),下次审查只显示此后新增的改动——已看过的内容不会再次出现。审查意见通过 harness 常规消息通道注入 agent,不打断它正在进行的任务。 解决什么问题 agent 跑完一个任务通常改动十几个文件。每次都看完整 diff 很慢,重复看已审查的内容更是浪费。本插件让审查跟着 agent 的进度推进: agent 干活(改文件) -> 打开审查面板:只显示上次审查检查点之后的改动 -> 逐文件查看 diff、填写审查意见 -> 批准:记录新的检查点,意见注入 agent -> agent 响应意见继续工作;新改动成为下一批审查 特性 - 增量审查(since-review):批准时把工作区快照记为检查点;下次审查只比较「检查点 -> 当前」,已审文件从队列中消失,除非再次被修改。 - 双入口:Web UI 审查面板(输入框上方 dock,2 秒轮询)+ /review 命令(键盘优先)。两者共用同一套核心逻辑。 - 反馈闭环:批准时可附评论,通过 agent.inject() 作为用户消息送达 agent。 - 不解析工具调用:任何磁盘改动(agent、你或其它进程产生)都会被反映——插件读的是 git,不是 agent 循环。 - 检查点持久化:$DSH_HOME/review-loop/.json,原子写入,绝不污染工作区自身的 git 状态。 - 零核心修改:纯 bundle 插件(dsh.bundle patch 层),不动 agent-loop 骨架。 安装 一行安装(git 源) dsh plugin --profile web add github:wuxiangru915/dsh-review-loop 重启 web 服务,然后强制刷新页面 本地开发: 开发需要 DSH 源码仓库的 sibling checkout(位于 ../deepseek-harness): @deepseek-ai/dsh-* 尚未完整发布到 npm(缺 dsh-type-meta),devDependencies 通过 link 指向该工作区;checkout 不在该路径时请调整 package.json 中的 link 路径。 pnpm install && pnpm build dsh plugin --profile web add /path/to/dsh-review-loop 仓库已随附构建产物 lib/,git 源安装无需在用户机器上执行构建。 用法 Web UI 审查面板(中文) 任意工作区为 git 仓库的会话中,输入框上方会出现审查面板: - 状态行显示 N 个文件待审查 及展开审查按钮。 - 展开后面板列出待审文件,diff 可折叠查看且按行着色(新增行使用 success 语义色、删除行使用 error 语义色,行首符号始终可见,不依赖颜色传递语义)。 - 提供可选的意见输入框与批准并记录审查点按钮。 - 批准后面板显示已审查状态;之后若有改动,对应文件会重新进入队列。 命令行 | 命令 | 行为 | | /review | 增量:上次检查点之后的改动(无检查点时显示相对 HEAD 的完整改动集) | | /review all | 相对 HEAD 的完整改动集,忽略检查点 | | /review approve | 记录检查点 | | /review approve | 记录检查点并将评论注入 agent | 架构 src/ ├── review.ts 纯核心逻辑(collectState / approve / renderState)——命令与 HTTP 共用 ├── git.ts git 操作封装(status / diff / hash-object;零依赖 spawnSync) ├── checkpoint.ts 检查点持久化($DSH_HOME/review-loop/.json,原子写) ├── http.ts Web 路由:GET /plugins/dsh-review-loop/state · POST /plugins/dsh-review-loop/approve └── client/ └── review-panel.tsx 浏览器端面板(conversation.input.dock 槽位,轮询刷新) 命令: /review ------> renderState() ----+ +--> src/review.ts(纯核心,共享) Web: GET /state ----> collectState() --+ POST /approve --> approve() + agent.inject() 客户端 bundle 为 CJS __ModuleLoader__ 产物,服务路径 /plugins/@dsh-plugin/dsh-review-loop/client.js;路由与命令共享同一检查点存储,UI 批准与 /review 命令推进的是同一条队列。 增量算法 对每个相对 HEAD 的改动文件:将其内容 hash 与检查点记录的 hash 比较相同 -> 已审查(隐藏)变化 / 新增 / HEAD 移动 -> 待审查(增量队列)批准时重新快照工作区 -> 检查点前移 测试 pnpm test # 7 个集成测试:真实 cordis + 真实 git 仓库 pnpm typecheck pnpm build # 双 half 构建:host ESM + client bundle Roadmap - [x] /review 命令(增量 diff / 批准 / 反馈注入) - [x] Web UI 审查面板(文件列表 + diff + 批准) - [x] 检查点持久化(增量队列) - [ ] 行级评论(diff 解析) - [ ] 会话分支联动(检查点随分支) - [ ] npm 发布(@dsh-plugin/dsh-review-loop) 环境要求 - DeepSeek Harness >= 0.1.0-rc.5(Cordis 4.x) - git 仓库(硬前置) - Node.js >= 22 License MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
wuxiangru915/dsh-review-loop
只审新增改动,批准后自动记录检查点并回传意见
相关插件 · UI / 主题
破甲增强版JeffKeeping/dsh-purge-plus
dsh-purge 的非官方分支fork:适配 DeepSeek Harness 0.2.1-rc.2、破甲内核…
★ 387已汉化DeepSeek 客户端
71.9
无代码业务系统平台nocobase/nocobase
NocoBase 是什么
★ 24,804已汉化DSH
71.8
1Panel 服务器面板1Panel-dev/1Panel
全球 250 万+ 自托管用户共同喜爱。
★ 37,344已汉化DSH
71.5
终端编码代理esengine/DeepSeek-Reasonix
· 指南 · ACP · 扩展开发 · 规格 · 官方网站 · Discord · QQ
★ 36,045已汉化DSH
71.2
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 151,202已汉化DSH
71.1
这是你的仓库?认领条目