dsh-git-review
开发工具 活跃维护

dsh-git-review

HaoyueQin/dsh-git-review

内置代码审查标签页与围栏式Git工作台,支持文件树浏览、差异对比、分支泳道图可视化,所有Git操作均受围栏规则保护,无需跳转外部工具即可完成代码审查与版本管理全流程。

0
Stars 标星
0
Forks 分支
0
Watchers 关注
0
Open Issues
TypeScript
主要语言
MIT
开源协议
3.4 MB
仓库大小
11 天前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:HaoyueQin/dsh-git-review
git clone https://github.com/HaoyueQin/dsh-git-review.git
git clone git@github.com:HaoyueQin/dsh-git-review.git
README.md main

DSH Git Review

# DSH Git Review

English | 中文文档

npm version npm downloads dsh plugin harness 0.1.2-rc.1 through 0.1.5-rc.1 platform: web License: MIT i18n: zh | en Awesome DSH Plugin Commit activity Last commit

A **Review tab plus fenced git workbench** for DeepSeek Harness: everything an agent changed, laid out for a decision — file tree, diffs, commit graph — with guarded git operations in the same place.

DSH Git Review demo

## Screenshots

Changes view: syntax-highlighted file with the filterable tree
Changes view — syntax-highlighted file with the filterable tree

Graph view: commit detail with side-by-side diff and word highlights
Graph view — commit detail with side-by-side diff and word highlights

## What it does DSH Git Review registers a **Review** tab next to Chat and Trajectory in the session view. It shows the workspace repository against HEAD — or any two refs — and lets you act on what you see without leaving the tab: - **Review first**: filterable file tree with status badges, side-by-side / unified / full-file diffs, hunk folding, word-level change highlights, syntax coloring, and diff search across file names, diff text, and file content. Keyboard-first: `j`/`k` move between files, `/` focuses search. - **Decide with history**: a lane commit graph with per-commit files and diffs, blame gutters, per-file history, and reading any file version from history. - **Act under guard**: stage / unstage / discard per file or per hunk, commit (plus amend, Ctrl+Enter), commit-and-push, and push; branches (create / switch / rename / delete / merge / track remotes) with fetch and pull; history operations (reset / revert / cherry-pick, per-commit actions from the graph); lightweight tags (create / delete / push); stash; and merge-conflict resolution (ours / theirs, continue / abort). Every write needs explicit confirmation, destructive ones ask twice, and everything locks while the agent is running. - **Close the loop**: comment on any diff line and drop it into the composer draft, mark files reviewed (auto-cleared when the file changes again), and keep comment drafts per workspace. - **Preview files**: markdown renders with the shell's own Markdown engine, HTML / images / SVG show inline, PDFs open sandboxed — every preview has a source view toggle, and office documents open in your external apps from the tree's right-click menu. Preferences (diff layout, default search scope, graph shape, matching, whitespace, syntax) live in the harness settings Plugins tab and sync instantly with the Review tab. ## Install From npm: ```bash dsh plugin --profile web add dsh-git-review dsh web ``` Or from a local tarball: ```bash pnpm install pnpm build pnpm pack dsh plugin --profile web add ./dsh-git-review-.tgz # the exact filename pnpm pack prints dsh web ``` Requires DeepSeek Harness `0.1.2-rc.1` through `0.1.5-rc.1` (prerelease series are pinned one by one in `peerDependencies`) and git on the host PATH. Outside a git repository the tab offers file browsing with one-click `git init` instead of the review workbench — never a blank screen. ## Checks ```bash pnpm typecheck # strict, noEmit pnpm check:parse # pure-function regression (Node >= 23.6 native TS stripping) pnpm check:git # real-git fixture integration (repositories under .tmp-check-git/) pnpm build # lib/index.js (node) + lib/client.js (browser factory bundle) ``` ## How it works - **Host half**: an in-process cordis plugin serving a fenced prefix route for versioned API actions over JSON (non-JSON bodies get 415, which also closes the classic no-cors write vectors). Every path is fenced inside the session workspace repository, every ref is re-resolved server-side, commit ids only travel as 40-hex, and GIT_DIR-style environment hijacks are scrubbed. - **Client half**: a conversation-view slot component; the host route is optional — without it the tab says so instead of erroring. - **Scale guards**: 20k-row render cap, 2 MiB per-file diff cap, 500-commit graph pages with load-more, an 8 MiB streaming byte cap on the largest git answers plus a separate 8 MiB preview cap (both truncate instead of buffering whole), and exact-count probing within a 32 MiB per-status budget. - Interface languages: Simplified Chinese and English, following the harness locale; dark and light themes via semantic tokens. ## Activity

HaoyueQin/dsh-git-review GitStock K-Line Chart

MIT © HaoyueQin