在侧边栏逐行查看智能体改动的文件并一键撤销
29.3/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add whybebabo/dsh-file-review-tab该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · market
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 24 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 5 处,展示前 5 条)
- 读取本地文件lib/index.js:87
const root = await realpath(cwd); - 读取本地文件lib/index.js:90
const linkStat = await lstat(candidate); - 读取本地文件lib/index.js:93
const filename = await realpath(candidate); - 读取本地文件lib/index.js:95
const bytes = await readFile(filename); - 读取本地文件lib/index.js:247
const current = await readFile(resolved.filename);
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-api-gateway@deepseek-ai/dsh-api-remotes@deepseek-ai/dsh-api-session-controller@deepseek-ai/dsh-atomic-write@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-store@deepseek-ai/dsh-client-ui-chat@deepseek-ai/dsh-client-ui-conversation@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-renderer给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
展开完整介绍(124 字)↓
dsh-better-sidebar 的侧边栏标签页,用来查看智能体改动的文件:行级红绿 diff 加撤销,聊天回合尾部深链(Lzh3070/dsh-file-review-tab 的分叉/镜像版,兼容 DSH 0.2.0-rc.2,v0.7.0)
README
由 DeepSeek 最新模型翻译生成dsh-file-review-tab
前置依赖:DeepSeek Harness web(0.2.0-rc.2+,已在 0.2.0-rc.2 上真机验证)+ dsh-better-sidebar(≥ 0.19.1,已在 0.24.1 上验证)。仍停留在低版本 DSH 的用户请按 版本对应 选择插件版本。
Requirements: DeepSeek Harness web (0.2.0-rc.2+, verified on 0.2.0-rc.2) + dsh-better-sidebar (≥ 0.19.1, verified on 0.24.1). On an older DSH, pick the plugin version per version mapping.
把 dsh-file-review(作者 left0ver)的「改动审查」能力移植为 dsh-better-sidebar 的侧边栏 Tab,并保留对话尾部的审查行——两个入口同源,互不干扰。
展开完整文档(README 剩余 1 节)
dsh-file-review-tab 前置依赖:DeepSeek Harness web(0.2.0-rc.2+,已在 0.2.0-rc.2 上真机验证)+ dsh-better-sidebar(≥ 0.19.1,已在 0.24.1 上验证)。仍停留在低版本 DSH 的用户请按 版本对应 选择插件版本。 Requirements: DeepSeek Harness web (0.2.0-rc.2+, verified on 0.2.0-rc.2) + dsh-better-sidebar (≥ 0.19.1, verified on 0.24.1). On an older DSH, pick the plugin version per version mapping. 把 dsh-file-review(作者 left0ver)的「改动审查」能力移植为 dsh-better-sidebar 的侧边栏 Tab,并保留对话尾部的审查行——两个入口同源,互不干扰。 Port of left0ver/dsh-file-review's change-review capability into a dsh-better-sidebar sidebar tab, keeping the chat turn-tail review row. 镜像说明:本仓库(whybebabo/dsh-file-review-tab)是 Lzh3070/dsh-file-review-tab 的 fork 镜像,保留其完整提交历史与原插件名(未改名)。基线 commit 为 1de22fc(上游 main 头部,版本 0.5.0,面向 DSH 0.1.5);本仓库在其之上带有 21 个提交(面向 DSH 0.2.0),并以 @whybebabo/dsh-file-review-tab 发布到 npm。npm 上的裸名 dsh-file-review-tab 由上游作者持有(维护者 phynez_1103,最高 0.5.0),本仓库无权也未曾发布到该名下——因此想装本仓库版本必须使用带 scope 的包名,见 安装。上游若更新,其 main 与裸名 npm 包仍应视为权威。 Mirror notice: this repository (whybebabo/dsh-file-review-tab) is a fork of Lzh3070/dsh-file-review-tab with the same commit history and the same plugin name (no rename). Its baseline commit is 1de22fc (upstream main head, version 0.5.0, targeting DSH 0.1.5); this fork carries 21 further commits (targeting DSH 0.2.0) and publishes to npm as @whybebabo/dsh-file-review-tab. The bare npm name dsh-file-review-tab is owned by upstream (maintainer phynez_1103, highest 0.5.0), so a fork release must use the scoped name — see Install. Treat upstream's main and its bare-name npm package as canonical. 与上游的差异 本 fork 相对上游 main(1de22fc,0.5.0)的差异集中在「面向 DSH 0.2.0 的适配」与「本 fork 自己的发布决策」两类: | 项 | 上游 dsh-file-review-tab@0.5.0 | 本 fork @whybebabo/dsh-file-review-tab@0.7.1 | | 目标 DSH | 0.1.5 | 0.2.0-rc.2 | | Typert 编解码 | 旧 schema: 形状(0.2.0 注册即抛错) | 严格 TypertCodec.create() 工厂 | | 对话尾部槽位 | turnTail 链式(select + priority,首个声明者胜) | turnTail 加法列表(id + order,多入口共存) | | 尾部改动卡片 | 自定义卡片 | 原生 ui-deliverables 卡片同款外观 + 撤销/审查两个按钮 | | 侧边栏 Tab 表头 | 自定义 | 原生 38px 对照条 + 分栏/换行/刷新工具行(各带 500ms 提示) | | 自动归档 | 无 | 主列表保留最近 5 轮,更早轮次折叠分页(每页 10 轮) | | 删除文件可见 | 无 | 解析 rm 族命令字面路径,标记「已删除」 | | Code Mode(PTC) | 无 | run_code 子调用被捕获并入所属轮次 | | npm 包名 | dsh-file-review-tab | @whybebabo/dsh-file-review-tab(裸名由上游持有) | 不要同时安装两者:两个包注册同一个 turnTail 槽位与同一个 ui-deliverables 补丁(都会禁用内置 ui-deliverables 行),共装会出现重复卡片。 功能 - 对话尾部审查行(与原生同款外观):回合结束出现「已编辑 N 个文件 +M −K」卡片,其外观逐像素对齐 DSH 内置的 ui-deliverables 改动卡片——同一个 60px 头部、40px 文件类型图标块、13px 标题、悬停时 +N −K 让位给「在侧边栏预览」、等宽字体文件行、超过 4 行折叠为「全部 N 个文件」,并同样复用官方的 FileTypeIcon / HoverCard / 折叠箭头。差异只有一处:头部右上角多出「撤销(撤销后可点「重新应用」)与「审查」两个按钮——内置卡片标题栏没有任何插槽,所以本插件自渲染同款卡片以容纳这两个按钮。鼠标悬停 500ms 即弹出该文件的 diff 预览;点「审查」或单个文件名,深链打开侧边栏 Tab,自动展开对应文件的 diff 并定位到该轮分组顶部(不再弹全宽 drawer)。 - 侧边栏 Tab「文件审查」:按轮次分组列出本会话改动文件;点击展开行级红绿 diff;支持撤销本轮 / 单文件撤销 / 重新应用;Tab 角标实时显示改动文件数。表头是与原生同款的 38px 对照条(文件选择器 + 统计),工具行提供「分栏 / 换行 / 刷新」三个可切换/可用的控件,每个都带 500ms 提示气泡。 - 删除文件可见:dsh 没有删除文件的工具,删除发生在终端命令里——插件解析 rm 族命令(rm / rmdir / unlink / shred / trash / Remove-Item / del / rd / erase 等)的字面路径参数,被删文件以「已删除」标记出现在两个入口(内容已不存在,故无行级 diff、不可撤销)。带通配符(rm .log)或命令替换(rm $(...))的删除不识别——受影响文件事后无法枚举。 - 自动归档:主列表只保留最近 5 轮(进行中的轮次永不归档),更早的已完成轮次沉入底部「已归档 N 轮」折叠区。折叠时归档内容零渲染,展开后每页加载 10 轮(「加载更多」续页),diff 行另有懒挂载——长会话不再一次性挂载几十个 diff 组。深链跳到已归档轮次会自动展开并定位;展开状态按会话记忆;角标只统计主列表。 - PTC / Code Mode 支持:run_code 程序内部的 edit/write 子调用也会被捕获——Host 端快照完整 before/after,浏览器端重建带行号的行级 hunks 并入所属轮次;diff 查看、状态检查、撤销/重做均可用。标准模式行为不变(对话尾部审查行仍只覆盖标准模式轮次)。 - 会话隔离:每个会话只看自己的改动;Tab 不可见时暂停状态巡检。 - 窄容器自适应:工作台横向分屏半宽或浮动独立窗口下,轮次头部自动换行、次要信息(行数统计、「在编辑器中打开」)让位,撤销操作与文件名始终完整。 - 样式隔离:全部 CSS Module + 宿主 --dsw-alias- 主题令牌,不与对话区或其他插件冲突。 在 dsh 中查看本轮文件改动:按文件展开的新增/删除对比 安装 本 fork 的发布版(scoped 包名) dsh plugin --profile web add @whybebabo/dsh-file-review-tab 或直接从本仓库的 GitHub 源安装(与 npm 发布同源) dsh plugin --profile web add github:whybebabo/dsh-file-review-tab 上游版本(DSH 0.1.5,功能较少、无 0.2.0 适配) dsh plugin --profile web add dsh-file-review-tab@0.5.0 ⚠️ 裸名 dsh-file-review-tab 在 npm 上由上游作者持有。dsh plugin --profile web add dsh-file-review-tab 装到的是上游 0.5.0(DSH 0.1.5),不是本仓库的 0.7.1——要装本 fork 的版本必须用上面的 scoped 名或 GitHub 源。 dsh plugin 会把参数转发给 profile 目录下的 pnpm,所以 github:owner/repo 这类 pnpm 支持的源都可用。 装好后重启 dsh web,在 better-sidebar 侧边栏「+」菜单打开「文件审查」即可。dsh-better-sidebar 是前置依赖、不会随本插件自动装上,需另行安装(dsh plugin --profile web add dsh-better-sidebar)。 刚发布的版本首次安装可能被 pnpm 的 minimumReleaseAge(默认 24 小时)挡下——用精确版本可绕过:dsh plugin --profile web add @whybebabo/dsh-file-review-tab@0.7.1。 版本对应 @whybebabo/dsh-file-review-tab@0.7.x 面向 DSH 0.2.0(服务端严格的 TypertCodec.create() 工厂 + conversation.chat.turnTail 加法列表槽 + 原生同款改动卡片),也是本 fork 唯一的 npm 发布版本;仍停留在 DSH 0.1.5 的用户请使用上游的 dsh-file-review-tab@0.5.x,DSH 0.1.2 / 0.1.1 请用上游 0.4.1。本 fork 未发布 0.6.x(其提交含在 0.7.0 历史中)。 致谢 本 fork 的上游是 Lzh3070/dsh-file-review-tab(1de22fc 基线),本仓库的 DSH 0.2.0 适配与侧边栏能力均在其之上构建。核心 diff 渲染器与撤销服务移植自 left0ver/dsh-file-review(MIT License, © ZhangWenChao)。侧边栏集成基于 dsh-better-sidebar 开放的 ctx.betterSidebar 注册 API。 License MIT 与上游的差异 相对上游 main(1de22fc,0.5.0),本 fork 有两处不同:DSH 0.2.0 适配,以及本 fork 自己的发布决定。 | | 上游 dsh-file-review-tab@0.5.0 | 本 fork @whybebabo/dsh-file-review-tab@0.7.1 | | 目标 DSH | 0.1.5 | 0.2.0-rc.2 | | Typert 编解码器 | 旧版 schema: 形态(0.2.0 在注册时拒绝) | 严格的 TypertCodec.create() 工厂 | | 轮次尾部插槽 | turnTail 链(select + priority,先声明者胜) | turnTail 叠加列表(id + order,各条目共存) | | 轮次尾部卡片 | 自定义卡片 | 原生 ui-deliverables 外观 + 撤销/审查按钮 | | 侧边栏标签页头部 | 自定义 | 原生 38px 对比栏 + 分栏/换行/刷新工具(500ms 提示气泡) | | 自动归档 | 无 | 最新 5 轮内联展示;更早的轮次折叠进分页区(每页 10 条) | | 已删除文件 | 不呈现 | 字面量 rm 系列路径标记为「deleted」 | | Code Mode(PTC) | 无 | run_code 子调用记入其所属轮次 | | npm 包名 | dsh-file-review-tab | @whybebabo/dsh-file-review-tab(裸名由上游占用) | 不要同时安装两者。 两者都注册同一个 turnTail 插槽,并禁用内置的 ui-deliverables 行,同时安装会出现重复卡片。 功能 - 聊天轮次尾部审查行,外观对齐内置的 ui-deliverables 变更卡片(同样的 60px 头部、文件类型图标、悬停预览、4 行折叠加「All N files」),并补上内置头部无法容纳的两个按钮:撤销/重新应用与审查。它深链到侧边栏标签页(自动展开 diff,并把该轮次分组滚动到顶部),而不是打开全宽抽屉。 - dsh-better-sidebar 中的「File Review」侧边栏标签页:按轮次分组展示变更文件、行级红绿 diff、按轮次或按文件撤销、显示变更文件数的实时徽标。头部是原生 38px 对比栏(文件选择器 + 计数),配一行分栏 / 换行 / 刷新工具,每个控件带 500ms 提示气泡。 - 已删除文件保持可见:dsh 没有删除文件的工具,删除发生在终端命令里 —— 解析字面量 rm 系列参数(rm、rmdir、unlink、shred、trash、Remove-Item、del、rd、erase 等),已删除文件在两处界面都标记为「deleted」(无行级 diff,无撤销:内容已不存在)。通配符与命令替换造成的删除不做猜测。 - 自动归档:主列表只保留最新的 5 轮(进行中的轮次永不归档);更早的已完成轮次沉入固定在标签页底部的「已归档轮次」区域。折叠时不渲染任何内容;展开后每页加载 10 轮。深链接会自动展开并翻页到目标位置;徽标只统计主列表。 - 支持 Code Mode(run_code):程序内部派发的子调用会在宿主侧生成快照,并在其所属轮次中重建为带编号的行级 hunk,因此差异查看、状态检查和撤销/重新应用在那里同样可用。标准模式行为不变。 - 会话隔离、隐藏时暂停、CSS Module 作用域样式(不会与聊天区域或其他插件冲突)。 - 窄面板自适应:在半宽分屏和浮动自由窗口中,轮次标题会换行,次要内容会让位,撤销按钮和文件名永远不会被裁切。 需要 DeepSeek Harness web(0.2.0-rc.2+,已在 0.2.0-rc.2 上验证)和 dsh-better-sidebar(≥ 0.19.1,已在 0.24.1 上验证),后者需单独安装。从 npm 安装此 fork(dsh plugin --profile web add @whybebabo/dsh-file-review-tab),或从本仓库的 GitHub 源码安装(dsh plugin --profile web add github:whybebabo/dsh-file-review-tab)。0.7.x 面向 DSH 0.2.0 客户端 API(严格的 TypertCodec.create()、追加式 turnTail 列表槽位、与原生一致的变更卡片),也是此 fork 唯一的 npm 发布版本;npm 上的裸名 dsh-file-review-tab 属于上游,仍是面向 DSH 0.1.5 的 0.5.0,所以安装裸名拿不到此 fork 的版本。使用 DSH 0.1.5 的用户应留在上游 0.5.x,DSH 0.1.2 / 0.1.1 则用 0.4.1。安装后重启 dsh web,然后从侧边栏的「+」菜单打开「File Review」标签页。如果刚发布的版本被 pnpm 的 minimumReleaseAge(默认 24 小时)拦下,请精确锁定版本:@whybebabo/dsh-file-review-tab@0.7.1。 开发 pnpm install pnpm typecheck # tsc --noEmit pnpm build # emits lib/ (host ESM + browser bundle + .d.ts) pnpm test # runtime checks; rebuilds lib/ first via pretest pnpm test 让构建产物跑真实的 DSH 0.2.0 注册表,而不是 mock 它们,因此上游 API 的破坏性变更会在这里失败,而不是在 UI 里才暴露。有几项检查会读取 lib/,所以 test 会先以 pretest 步骤运行 build:否则改动 src/ 后,所有检查可能对着上一次构建通过。全部十四项检查断言的都是类型检查看不到的行为: - test/typert-descriptors.mjs — 向真实注册表注册 Host Typert 贡献,并对每个 codec 做往返测试(另有一项对照,证明 0.2.0 之前的 schema: codec 形状会被拒绝)。 - test/slot-registration.mjs — 向真实的 SlotCore 注册 turn-tail 条目(列表槽位需要 id)。 - test/host-apply.mjs — 在真实的 cordis Context 上运行宿主侧半边的 apply(),并驱动 tools/post-execute 记录器和 fileReview Remote 服务。 - test/undo-redo.mjs — 用临时工作区驱动真实的 fileReview 服务,断言多 hunk、多变更文件能精确完成 undo→redo 往返,其中包括 settlements 以错误数组顺序到达的 payload。 - test/interleaved-mutations.mjs — 一轮变更同时来自两条通道(Host 记录的 run_code 变更,加上模型直接 edit)时,仍按事件顺序排列,因此 undo 和 redo 都能往返;删除与之后的重新创建也按事件顺序解析(重新创建的文件不会被标成已删除);并验证 recorded 拉取重新武装信号及其节流节奏。 - test/review-invalidation.mjs — 会话级审查状态失效与 disposer 行为。 - test/deep-link.mjs — 解析 chat→sidebar 深链,包括跳进藏在自动归档区后面的某一轮。 - test/diff-hunks.mjs — 共享 diff 核心(toNativeHunks)的不变量:编号、符号前缀、上下文裁剪。 - test/mutation-order.mjs — 按 settlement 的坐标模型,让多变更 hunk 保持可应用;以及交错两条变更通道的事件序列排序。 - test/deleted-paths.mjs — rm 系列选项解析绝不把选项或选项值报成已删除路径,文件名里的带引号逗号也不会被拆成两条路径。 - test/client-bundle.mjs — 按 Web 插件加载器的方式求值 lib/client.js,检查 dsh.client 契约(apply 导出 + inject 列表)。 - test/card-render.mjs / test/tab-render.mjs — 用 react-dom/server 真正挂载轮次尾部卡片和侧边栏标签页,断言原生结构,并确认没有按钮嵌套在另一个按钮里。 - test/diff-render.mjs — 渲染对比主体(unified/split/wrap、hunk 横幅、每侧行号、创建/删除/空状态行)。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
whybebabo/dsh-file-review-tab
在侧边栏逐行查看智能体改动的文件并一键撤销
相关插件 · 市场 / 管理
插件精选列表awesome-dsh-plugin/awesome-dsh-plugin
DeepSeek Harness(dsh)插件精选列表
★ 22,025未汉化DSH
73.6
新词雷达zhuyansen/new-term-radar
new-term-radar新词雷达
★ 2,049已汉化MCP
72.8
插件生态导航0xsline/awesome-deepseek-harness
安装 贡献指南 DeepSeek Docs 公开插件目录 Issues
★ 1,188已汉化DSH
72.6
技能注册中心iflytek/skillhub
企业级开源智能体技能注册中心——发布、发现并管理组织内可复用的技能包。
★ 5,358已汉化DSH
71.9
插件市场目录imsai-sh/awesome-deepseek-harness-plugins
面向 DeepSeek Harnessdsh生态的社区插件目录,共收录 13938 个插件含 PR 收录与…
★ 350已汉化DSH
71.8
插件精选清单Anil-matcha/awesome-dsh-plugin
DeepSeek Harnessdsh精选指南——DeepSeek…
★ 1,013已汉化DSH
71.7
这是你的仓库?认领条目