dsh-git
hy-sde/dsh-git
Agentic git plumbing for DeepSeek Harness: the host ctx.git service (diff capture/parsing, hunk staging, commit/push/log over the subprocess seam) backing the commit and review tools in @hy-sde-org/dsh-tool-git — a standalone plugin with no upstream harne
Installer
dsh plugin --profile web add github:hy-sde/dsh-gitREADME
dsh-git — agentic git commit + review for DeepSeek Harness
Two standalone packages, installable as one plugin for the DeepSeek Harness CLI:
| package | role | installed by users? |
|---|---|---|
@hy-sde-org/dsh-git | the plugin: host-plane ctx.git service (bundle row + preset example) | yes |
@hy-sde-org/dsh-tool-git | the model-facing tools (commit / commit_apply / review) + git:tools prompt section | yes |
This is the oh-my-pi agentic git commit + review surface (portal
port_omp.md item: commit) ported onto the harness ctx.git service
contract as a standalone plugin with zero upstream harness changes: the
service row ships as a cordis.patch.yml bundle, the tool row ships as a
ready-to-copy agent preset, and every @deepseek-ai dependency resolves from
the npm registry at the 0.1.1-rc.2 baseline — so it installs on official
DeepSeek Harness releases (dsh-v0.1.1-rc.2 and later) exactly as it runs in
the hy-sde fork.
The surface
commit— read-only analysis of the current git changes: staged (or auto-staged working) tree, per-file add/delete counts, bounded diff text, lock-file hints, and a suggested conventional-commit split-plan skeleton. The model authors a preciseSplitCommitPlanand passes it tocommit_apply.commit_apply— validate-then-execute: every staged file must be covered exactly once, lock files are placed automatically on the group owning their sibling manifest, hunk selectors are validated against the real diff, dependencies are resolved topologically (cycles rejected before anything is written), and each commit is created atomically in dependency order. Any failure resets the index — nothing is lost.review— parallel code review over git changes (working tree, staged, or a commit range) with dedicated reviewer subagents. Every finding is ranked P0–P3 with a confidence score; the tool returns all findings sorted by severity plus a ship/reject verdict. Reviewers are read-only and never edit files or run builds.
Install
pnpm install --global @deepseek-ai/dsh
Direct from npm (published)
dsh plugin --profile web add @hy-sde-org/dsh-git @hy-sde-org/dsh-tool-git
Then copy the preset from packages/git/examples/agent-preset/ to
~/.dsh/.agent-presets/<id>/ and select it in the Web UI preset picker:
mkdir -p ~/.dsh/.agent-presets/my-git
cp packages/git/examples/agent-preset/agent.cordis.yml \
packages/git/examples/agent-preset/preset.yml \
~/.dsh/.agent-presets/my-git/
From the git checkout (pre-publish / development)
git clone git@github.com:hy-sde/dsh-git.git
cd dsh-git
pnpm install
pnpm run build
GIT_TGZ="$(cd packages/git && pnpm pack --silent --pack-destination /tmp)"
TOOLGIT_TGZ="$(cd packages/git/tool-git && pnpm pack --silent --pack-destination /tmp)"
dsh plugin --profile web add "$GIT_TGZ" "$TOOLGIT_TGZ"
Verify
dsh web --dump-config # the git row is present in the base bundle
Uninstall
Remove the git row from the base bundle and the tool-git row from any
preset that mounts it, then remove the packages:
dsh plugin --profile web remove @hy-sde-org/dsh-git @hy-sde-org/dsh-tool-git
Project layout
packages/git/ @hy-sde-org/dsh-git — the ctx.git service
cordis.patch.yml host-bundle insert row (stock INSERT form)
examples/agent-preset/ ready-to-copy user preset (tool row + config)
src/ service + diff/topo-sort/lock-files primitives
tests/ 20 unit + 8 real-repo integration tests
packages/git/tool-git/ @hy-sde-org/dsh-tool-git — the model tools
src/ commit.ts / review.ts / prompt.ts
tests/ commit + review end-to-end tests (9 + 7)
Development
pnpm install
pnpm run check # tsc --noEmit on both packages
pnpm run build # tsc -p tsconfig.build.json per package
pnpm run test # vitest (44 tests, real temp repos)
pnpm run release:check # build + clean-tree + pack guard before publishing
Plugins associés
dsh-web (dsh-git-graph)
zhu1090093659/dsh-web
dsh-web-ui (dsh-git-graph)
zhu1090093659/dsh-web-ui
codex-guard (dsh)
akimiya-z/codex-guard
dsh-file-review
left0ver/dsh-file-review