在聊天区管理分支并查看提交图谱与改动
30.6/100
综合分
1
GitHub 星标
367
npm 周下载
—/5
用户评分
数据截至 2026/9/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add dsh-git-panelnpm 源 · dsh-git-panel 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · dev
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 48 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-git-panel @ 0.1.20
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/13 15:39:53
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 11 处,展示前 11 条)
- 读取本地文件lib/index.js:61
const credArgs = existsSync(credPath) ? [ - 执行外部命令固定命令lib/index.js:71
const child = spawn("git", fullArgv, { - 读取本地文件lib/index.js:299
if (existsSync(mergeMsgPath)) { - 读取本地文件lib/index.js:300
mergeMsg = readFileSync(mergeMsgPath, "utf8").split("\n")[0].trim(); - 读取本地文件lib/index.js:390
const info = await stat(absolute); - 读取本地文件lib/index.js:394
const buffer = await readBytes(absolute); - 读取本地文件lib/index.js:928
canonical = await realpath2(path); - 发起网络请求lib/client.js:50
response = await fetch(path, { - 写入剪贴板lib/client.js:2152
navigator.clipboard.writeText(c.file); - 写入剪贴板lib/client.js:2224
navigator.clipboard.writeText(c.file); - 写入剪贴板lib/client.js:2565
void navigator.clipboard.writeText(menu.row.name);
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-subprocess@deepseek-ai/dsh-workspace@deepseek-ai/dsh-client-ui-sidebar-right@deepseek-ai/dsh-client-ui-sidebar-documentpreview给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 管理分支
- 查看提交图谱
- 查看改动
最近更新
在 GitHub 查看全部 →v0.1.202026-09-30
· 🐛 修复
升级官方 0.2.0-rc.1 后,Git 面板永远显示「打开项目会话后显示 Git 面板」(工作区明明有 git)。
· 根因:官方破坏性移除了会话列表快照的 current 字段
| 官方版本 | SessionListState |
| --- | --- |
| 0.1.5-rc.2 / 0.1.6-alpha.2 | 有 current: SessionId \| undefined ✅ 插件正常 |
| 0.2.0-rc.1 | current 被移除,只剩 ids + byId ❌ 插件失效 |
插件此前用 sessions.list.getSnapshot().current 取当前会话,新版下恒为 undefined → cwd 恒为空 → 面板永远停在空状态。
· 修法:改用官方插槽标准 props sessionId
sidebar.right.pane.tab 的 scope 是 'session',官方会把 SessionStandardProps.sessionId 注入内容体。官方运行时代码(ui-session):
props: ["sessionId"],
resolve: (binding) => ({ …, props: { sessionId: binding.sessionId } })
官方插槽契约原话:"everything a body needs at runtime arrives in its props"。
BranchChip 早已正确使用 sessionId,本次是让 Git 面板本体与后台轮询与之一致。
· 同时修复后台变更轮询
变更清单轮询(预热装饰缓存与文件树标记)不在任何插槽内、拿不到标准 props。新增 client/active-session.ts 共享暂存:由会话作用域组件(BranchChip / GitTabBody)写入当前 sessionId、轮询读取;尚无组件挂载时退化为列表首个会话(ids[0])。
---
· 环境要求
· 最低版本:DSH 宿主 ≥ 0.1.5-alpha.1(@deepseek-ai/dsh-client-ui-sidebar-right ≥ 0.1.5-alpha.1)
· 已验证:0.1.5-rc.2、0.1.6-alpha.1/2、0.2.0-rc.1(当前最新)
· 本修复跨版本通用:sessionId 标准 prop 在三个版本中均存在,因此不抬高最低版本要求
· ⚠️ 三语 README 已新增 Requirements 章节,并明确警告不要再依赖已移除的 current 字段
· 📦 安装 / 升级
dsh plugin --profile web add dsh-git-panel
npm:
完整变更见 CHANGELOG.md
v0.1.192026-09-16
· 修复
工作区启动卡与官方卡片样式不一致(「Git 版本控制与提交图谱」那张卡看起来比「工作区文件」「新建终端」瘦、行距紧)。
根因:sidebarRightTabs.register 的 guide 只提供了 title(共 3 个字段),而官方 provider(sidebar-files / sidebar-terminal)使用的是 id + order + title + description + icon 五件套:
· 缺 description → 卡片只剩一行标题,主副行距与整体留白都和官方对不齐
· 缺 icon → 左侧图标位空缺,视觉重心偏移
本次修复:
· guide 按官方契约补齐五件套(id: 'git'、order: 12、title、description、icon)
· 新增 GitGuideIcon:26px,契约与官方一致({ size, className },尺寸由官方卡片注入、颜色继承 currentColor 以跟随主题与悬停态)
· 新增三语副标题 guide.gitDescription(中 / 英 / 西)
修复后与另外两张卡在宽度、高度、圆角、边框、内间距、图标尺寸、主副标题字号与行高上完全一致。
关于终端卡右侧的 ▾ 展开箭头:那是 terminal provider 独有的 shell 选择功能(可选 bash / zsh / fish),本插件没有对应能力,因此不提供该箭头——属功能差异,非样式差异。
v0.1.182026-09-16
· 安全修复(推荐升级)
0.1.17 的文档截图直接取自真实项目仓库,导致内部项目名、分支名(如 #9649-daochat-* 等)、提交信息与内部 Git 地址被写入公开仓库与 npm 包;其中一张图甚至未渲染出分支内容(非 git 目录),既泄露数据又未展示功能。
本版本处理:
· 重写 docs/preview.html 为全虚构示例(示例仓库 example-shop、虚构分支/提交/代码文件),并新增 conflict / diff / tree 三个渲染场景
· 用 Chrome headless 渲染该页面重截全部 7 张功能图(branches / graph / chip / sidebar-tab / git-conflict-resolve / git-diff-split / git-filetree-status)
· 三语 README 截图引用统一追加 ?v=0.1.18
· 已全量扫描确认 docs 与 README 中不含任何真实仓库/分支/账号信息
已在 npm 将 0.1.17 标记为 deprecated,并删除了对应的 GitHub Release。请升级到 0.1.18+。
· 0.1.17 的功能内容(本版完整保留)
· 统一图标系统(29 个图标,同一网格/线宽/圆角),根除 emoji / 字符字形 / 手写 SVG 混用
· 即时 tooltip(替代原生 title 的 1 秒延迟)
· 操作 loading 反馈(进度条 + 转圈,精确落在被触发入口)
· 「取消」真正中止后台 git 进程
· 全量多语言(中/英/西,移除硬编码中文与文案内 emoji)
· git 执行对齐 VS Code(stdio[0]='ignore',永不可交互提问)
· 修复:macOS 钥匙串弹窗卡死、凭据明文写入 .git/config、变更列表丢失未暂存文件、同步按钮误删改动、取消按钮样式错乱
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。
README
由 DeepSeek 最新模型翻译生成dsh-git-panel
English · Español
DSH Web GUI 的 Git 面板插件:分支管理(切换 / 拉取 / 抓取 / 重命名 / 删除 / 合并)+ GitLens 风格的提交图谱。
功能
- 分支面板(聊天区右侧):
- 双行卡片式布局:分支名占据完整上行空间(超长分支名不再被挤压截断),提交时间与 Commit 信息位于独立下半行
- 搜索与快速过滤:分支列表顶部配备实时搜索框,支持按分支名或提交信息快速过滤
- 本地分支:当前分支高亮,显示相对上游的 ↑ahead / ↓behind,双击切换分支(当前分支双击为拉取)
- 远程分支:双击检出(自动创建本地跟踪分支)
- 右键菜单:拉取更新 / 抓取全部 / 复制分支名 / 重命名 / 删除 / 合并至当前分支(远程分支为删除远程分支)
- 一键拉取当前分支、全部抓取(git fetch --all --prune);拉取/推送/同步进行中会显示进度条与转圈动画,并可随时取消(真正中止后台 git 进程)
- 分支胶囊(输入框上方):显示当前分支,点击展开本地分支列表快速切换
- Git 图谱:提交 DAG 泳道图(lane 算法),三栏标题(线图 / 提交 / 分支),提交列左右两侧可拖拽调宽(宽度持久化),点击节点查看提交详情;虚拟化渲染——只绘制可视区域,大仓库滚动流畅
展开完整文档(README 剩余 1 节)
dsh-git-panel English · Español DSH Web GUI 的 Git 面板插件:分支管理(切换 / 拉取 / 抓取 / 重命名 / 删除 / 合并)+ GitLens 风格的提交图谱。 功能 - 分支面板(聊天区右侧): - 双行卡片式布局:分支名占据完整上行空间(超长分支名不再被挤压截断),提交时间与 Commit 信息位于独立下半行 - 搜索与快速过滤:分支列表顶部配备实时搜索框,支持按分支名或提交信息快速过滤 - 本地分支:当前分支高亮,显示相对上游的 ↑ahead / ↓behind,双击切换分支(当前分支双击为拉取) - 远程分支:双击检出(自动创建本地跟踪分支) - 右键菜单:拉取更新 / 抓取全部 / 复制分支名 / 重命名 / 删除 / 合并至当前分支(远程分支为删除远程分支) - 一键拉取当前分支、全部抓取(git fetch --all --prune);拉取/推送/同步进行中会显示进度条与转圈动画,并可随时取消(真正中止后台 git 进程) - 分支胶囊(输入框上方):显示当前分支,点击展开本地分支列表快速切换 - Git 图谱:提交 DAG 泳道图(lane 算法),三栏标题(线图 / 提交 / 分支),提交列左右两侧可拖拽调宽(宽度持久化),点击节点查看提交详情;虚拟化渲染——只绘制可视区域,大仓库滚动流畅 - 写操作条(面板顶部,位于标签页下方): - 提交:输入提交信息回车即 git add -A && git commit -m - 推送:一键 git push 当前分支 - 暂存 / 恢复暂存:git stash push(可带说明)/ git stash pop - 状态:显示当前工作区变更文件数(git status --porcelain) - 变更文件 + 行内着色 Diff:写操作条下方列出未提交的变更文件(状态码 + 路径),点击任意文件查看与 HEAD 的完整 diff,新增行(绿色 +)、删除行(红色 -)与块头(蓝色 @@)带精细高亮——提交前清晰审核改动 - 文件树改动标记(VS Code 观感):右侧栏「文件」树里,有改动的文件名后直接跟状态字母并给名字上色(M 修改 / A 新增 / U 未跟踪 / D 删除 / R 重命名 / C 冲突),含改动的目录带一个圆点;标记跟随 git status 自动刷新,不需要手动刷新文件树 - Git 对比视图(VS Code 风格双栏 Diff):在有改动的文件上点一下,直接在右侧栏打开该文件的变更对比 - 左栏是 HEAD 原始版本、右栏是工作区最新内容,行号严格对齐,新增 / 删除 / 修改行分别着色 - 支持单栏 / 双栏切换、折叠未改动区域(默认保留 3 行上下文,点击展开)、自动换行开关、字号缩放,以及直接编辑文件内容 - 头部显示 +新增 / −删除 统计;「源码」一键回到官方文本预览,「暂存」一键 git add,「保存」把改动写回工作区 - 只有确有改动的文件会被这个视图接手,没有改动的文件仍然使用官方预览,两者互不干扰 - 合并冲突一键解决(全景行号上下文流): - 首屏天然置于冲突核心,前后紧邻保留 8 行清晰代码上下文,远处无关代码折叠为可展开条,行号绝对连贯 - 自动识别 >>>>>> 冲突块,每块提供 「✔ 采用当前更改」、「✔ 采用传入更改(分支名)」、「✔ 两者都保留」 三个一键动作 - 处理完毕点击右上角「保存并解决冲突」直接写回工作区并移出冲突态 - 免终端原位凭据保存(VS Code 式体验): - 遇到企业私有 GitLab / GitHub 缺少凭据时,面板内原位弹出优雅配置卡片,输入一次自动记住,终生免密直连,绝不再报 OAuth 弹窗阻断 - VS Code 级智能无感同步(Sync): - 仅超前时直接极速 push,有落后时才执行安全 pull,彻底废除强制 --rebase,绝无变基死锁冲突 - 自动脱离残留的变基中间态(自动 rebase --abort 救援) - 会话上下文一键智能注入: - 情境感知 Prompt 引擎:检测到冲突时,按钮自动切换为「💬 将冲突分析带入对话」,一键生成针对该冲突文件的专业排查指令;无冲突时生成 Commit 审查指令,全面支持中/英/西三语 - 最新 Lexical 编辑器完美兼容:全面适配 DSH Web 最新的富文本输入框,点击秒级填入 - 单文件精准操作:每个暂存/未暂存文件均提供「复制相对路径」「向 Agent 提问此文件」,以及未暂存文件的「放弃更改」二次确认回滚;所有按钮为统一线性图标,鼠标悬停即时显示中文/英文/西语提示 - 分支极速更新与并发防重入: - 本地分支右侧的落后(↓101)胶囊徽章支持直接点击一键拉取 - 右键菜单集成「⬇️ 拉取更新 (Pull)」与「🔄 抓取全部 (Fetch all)」,支持严格防重入锁与「✕ 取消」操作 - 图谱提交操作:点击图谱中的提交节点,可一键 cherry-pick 到当前分支 或 撤销该提交(git revert --no-edit) - 统一图标系统 + 即时提示: - 全插件所有图标来自唯一图标库(同一 16×16 网格、同一线宽、同样的圆角端点),不再混用 emoji 与字符字形,视觉风格完全一致 - 所有图标按钮悬停立即弹出说明浮层(非浏览器原生 title 的 1 秒延迟),浮层不会被侧栏裁切 - 多语言:自动跟随 DSH Web 界面语言(中文 / 英文),西班牙语浏览器自动切换西班牙语,默认简体中文;界面文案与错误提示均已完整覆盖三语 - 官方右侧栏原生标签页:Git 面板作为右侧栏的一等公民标签与「文件」并列,展开、收起、宽度拖拽、多标签切换全部由官方侧边栏接管,不再改写页面布局 - 跟随当前会话工作目录:切换项目会话自动重新绑定 - 明暗主题跟随 DSH Web GUI 界面预览 文件树改动标记(有改动的文件名后跟状态字母并着色,含改动的目录带圆点,与 VS Code 资源管理器一致): 文件树改动标记 Git 对比视图(全屏双栏 Diff,行号对齐,未改动区域可折叠,头部含增删统计与操作按钮): Git 对比视图 合并冲突一键解决(全景行号上下文)(冲突核心与上下各 8 行代码直接置于首屏并带行号,远处未冲突区自动折叠;三动作直接落笔,保存即写回): 合并冲突解决 官方右侧栏原生标签页(与内置「文件」并列,展开/收起、宽度拖拽、标签切换全部由官方侧边栏接管): 右侧栏中的 Git 标签页 分支面板(本地/远程分支、ahead/behind、双击切换、右键菜单): 分支面板 分支胶囊(输入框上方快速切换分支): 分支胶囊 提交图谱(三栏可拖拽列宽、虚拟化滚动): 提交图谱 安装 dsh plugin --profile web add dsh-git-panel 重启 dsh web,打开绑定 git 仓库的项目会话,然后点开右上角的右侧栏,选择 Git 标签页。 运行环境要求:需要 当前这套 DSH Web(>=0.1.5-alpha.1,推荐 0.1.6-alpha.1 及以上;即带官方右侧栏多标签框架 @deepseek-ai/dsh-client-ui-sidebar-right 的版本)。 文件树改动标记、Git 对比标签依赖右侧栏的标签类型注册与文件资源地址;「在官方文件预览里手动切换到 Git 变更对比」还依赖 DSH 自带的 @deepseek-ai/dsh-client-ui-sidebar-documentpreview(0.1.5 起的官方 web bundle 默认包含)。 在更早的 DSH(例如 0.1.2-rc.1)上这些能力不会生效——那些版本没有右侧栏标签注册表,也没有统一的 dsh-resource://file 地址模型。 本地开发时可用 dsh plugin --profile web add link:/path/to/dsh-git-panel 以链接方式安装,修改源码后 npm run build 并刷新页面即可生效。 反馈 使用中遇到问题或有功能建议?欢迎到 GitHub Issues 反馈,帮助我们把插件做得更好。 License MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
a792883583/dsh-git-panel
在聊天区管理分支并查看提交图谱与改动
相关插件 · 开发 / 工程
隐私简历生成器reactive-resume/reactive-resume
Reactive Resume 已迁至 GitHub 上的…
★ 45,288已汉化MCP
71.7
长时任务执行闭环AMAP-ML/LongHorizon-Harness
面向 Computer-Use Agent 的 Loop Engineering
★ 1,764已汉化DSH
70.5
多代理编排运行时Enderfga/claw-orchestrator
面向编程智能体的运行时。把 Claude Code、Codex、Antigravity、Grok…
★ 586已汉化MCP
69.4
记忆进化插件csyangwen/dsh-memory-evolve
dsh-memory-evolve 使用场景指南
★ 461已汉化DSH
67.9
原生编程智能体paean-ai/deeptide
由 DeepSeek 打造,为 DeepSeek 而生。
★ 1,107已汉化DSH
67.7
多引擎接力台emo-xiaoyu/harness-mix
macOS/Linux 已加入源码构建与启动适配;目标系统的完整桌面验收仍需在对应机器执行。安装方式、Linux…
★ 419已汉化DSH
66.8
这是你的仓库?认领条目