dsh-git-graph
by WhitePlusMS
Chat 和 Trajectory 旁的独立 Git Graph 视图:提交拓扑、本地/远程/tag 引用、HEAD 与工作区状态、搜索、筛选、首父模式、刷新和加载更多。
Dedicated read-only Git Graph view beside Chat and Trajectory: commit topology, local/remote/tag refs, HEAD and working-tree status, search, filtering, first-parent mode, refresh, and load more.
安装
dsh plugin --profile web add github:WhitePlusMS/dsh-git-graphGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
为 DeepSeek Harness Web 界面提供独立 Git Graph 视图。在 Chat 和 Trajectory 旁边打开 Git Graph,查看当前工作区的 Git 提交历史;刷新图谱不会在对话中生成消息,也不会写入轨迹。

功能
- 在 Chat 和 Trajectory 旁边提供独立的
Git Graph入口。 - 显示提交拓扑、分支、合并和父提交关系。
- 显示本地分支、远程分支、tag 和 HEAD 引用标签。
- 在图谱头部显示工作区干净或存在未提交变更的状态。
- 全范围搜索提交 Hash、提交主题、作者、邮箱和引用名称。
- 按分支名 glob 过滤(如
main,release-*),按引用类型筛选,并选择是否包含全部 refs。 - 支持日期、作者日期、拓扑三种提交排序,以及仅首父提交模式。
- 选中提交后在该提交行下方内联展开详情:Hash、作者、提交者、时间、父提交、签名状态和引用标签,布局对齐 vscode-git-graph。
- 文件变更支持树 / 列表两种视图:文件夹图标与单链目录压缩、按变更类型着色、
(+增|−删)统计。 - 点击文件查看逐行 Diff,带新旧行号和增删高亮。
- 展开
未提交变更行查看工作区文件列表和逐文件 Diff。 - 比较任意两个提交之间的文件变更。
- 在元数据条中查看仓库的 Tag 和 Stash 列表。
- 结果内查找栏:大小写敏感、正则、上一个 / 下一个跳转。
- 显示设置面板:日期 / 作者 / Hash 列开关、日期格式、图样式,按仓库持久化。
- 键盘操作:
↑/↓移动选择、Ctrl+F查找、Ctrl+Shift+F设置。 - 刷新当前仓库,且不会生成对话消息或工具轨迹记录。
- 按需加载更多提交,最多读取 500 条。
- 当前目录不是 Git 仓库或仓库尚无提交时显示空状态,不显示错误。
当前版本是只读版本,不会创建、删除、重命名、合并、变基、推送、拉取、Fetch、创建 tag、Stash 或重置 Git 数据。

打开 Git Graph
安装插件并重启 DSH Web 后,在 Chat 和 Trajectory 旁边的视图切换入口中点击 Git Graph。
页面读取当前会话的工作区。刷新操作直接调用插件的 Typert Remote,不会把刷新结果渲染为对话工具卡片,也不会向轨迹追加刷新事件。
Git 数据与路径处理
Host 侧通过固定且不经过 shell 的 subprocess 参数读取 Git 数据,包括仓库状态、HEAD、有数量限制的提交历史,以及按需加载的提交详情、文件内容、文件 Diff、工作区变更和提交比较结果。
模型工具支持以下参数:
git_graph({
path?: string, // 仓库目录,默认使用当前会话工作区
max_commits?: number, // 1..500,默认 100
all?: boolean, // 是否包含所有可达 refs,默认 true
first_parent?: boolean, // 是否只跟随首父提交,默认 false
glob?: string[], // 分支名 glob 过滤(OR),提供时覆盖 --all
search?: string, // 全范围搜索:Hash、主题、作者、邮箱、引用名、日期
sort?: string // 提交排序:date、author-date 或 topological,默认 date
})
传入的路径只会作为 Git subprocess 的工作目录,不会拼接进 shell 命令;文件读取请求会校验路径必须位于仓库内。如果路径不是 Git 仓库,页面会显示空状态,不会显示仓库错误。尚无提交的 Git 仓库也按相同方式处理。
安装或更新
从 GitHub 安装 v0.0.2:
dsh plugin --profile web add https://github.com/WhitePlusMS/dsh-git-graph/archive/refs/tags/v0.0.2.tar.gz
更新已有安装时仍然使用同一条命令。安装完成后重启 dsh web,让 Host 入口和浏览器客户端加载新版本。
卸载
从 web profile 卸载当前包:
dsh plugin --profile web remove dsh-git-graph
开发
pnpm install
pnpm run typecheck
pnpm test
pnpm run build
构建会把独立 Host 和浏览器端产物写入 lib/。从 profile 安装时使用这些构建产物,不要求 Harness monorepo checkout。
参考与灵感来源
本项目的诞生与参考完全基于以下开源项目:vscode-git-graph,再次对其表示感谢。
许可证
MIT
原始 README: https://github.com/WhitePlusMS/dsh-git-graph/blob/master/README.zh.md ↗
同类插件
查看全部 →
dsh-web-ui-all
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

dsh-web-ui
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

dsh-TUI
Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

DSH-better-sidebar
侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。

working-activity
让 agent 的"工作状态行"活过来——实时工具动态与进度、俏皮文案、模型自述、上下文预警。同一套想法,适配两个平台: pi CLI 与 DeepSeek Harness(DSH) 。

deepseek-idesign
可视化设计工作室,支持网站、App 原型、海报、信息卡、报告和杂志的模板创建、元素编辑、选区级 AI 草稿衔接与导出。