DeepSHPlugins
dsh-git-tools 项目预览
GITHUB / COMMUNITY PROJECT

dsh-git-tools

Tools & IntegrationsTypeScriptMIT

Four dependency-free local git tools (status, diff, log, commit) for DeepSeek Harness operating on the session workspace.

2 StarsShyboy0499 Updated 2026-08-27
Open GitHub repository
dsh-git-tools 项目预览

About this project

Chinese

Four dependency-free local git tools (status, diff, log, commit) for DeepSeek Harness operating on the session workspace.

English

Four dependency-free local git tools (status, diff, log, commit) for DeepSeek Harness operating on the session workspace.

Project details & listing signals

Snapshot 2026-09-11
Creator / organization
Shyboy0499
Repository
Shyboy0499/dsh-git-tools
GitHub Stars
2
Forks
0
Programming language
TypeScript
License
MIT
Last push
2026-08-27
Manifest
Declaration found in the catalog

A public repository does not automatically permit commercial use. Check the project's license and compatibility. Manifests and catalog scores are not security certifications.

Catalog score

60/ 100
Maintenance activity
91
Documentation & practical information
100
Community interest
14
Installation signals
100
Project declarations
100

近 15 天仍在更新;README 含完整安装与使用说明;关注度尚低(2)。

Scores use five dimensions of the catalog snapshot. They are browsing aids, not hands-on reviews or security assessments.

Install & use

The respective GitHub repositories define project information and licensing.

dsh plugin --profile web add github:Shyboy0499/dsh-git-tools

Copying a command does not execute it. Read the repository documentation and check requirements and licensing first.

Project screenshots

Repository README

GitHub 原文

Saved repository documentation. Its capture date was not recorded and it may differ from the catalog description. Check the current repository before installing.

Repository documentation is preserved in its original language.

dsh-git-tools

npm version CI License

Local git tools for DeepSeek Harness (dsh).

dsh-git-tools is a dependency-free DeepSeek Harness plugin that gives the coding agent four local git tools — git_status, git_diff, git_log, and git_commit — so it can inspect the repo in the session workspace and create commits, all through the official tool API. No UI, Host-side only.

Features

ToolWhat it does
git_statusBranch, ahead/behind, and staged / unstaged / untracked files
git_diffStat summary or full patch, staged or unstaged, optional path filter
git_logRecent commits as { hash, author, date, subject }
git_commitStage specific paths (or all) and commit with a required message

Installation

dsh plugin --profile web add dsh-git-tools

Requires git on your PATH (present in any development environment).

Tool reference

All tools accept an optional cwd (defaults to the session workspace).

git_status

Inspect the working tree and branch state.

{
  "branch": "main",
  "ahead": 0,
  "behind": 2,
  "staged": [{ "path": "src/index.ts", "status": "M" }],
  "unstaged": [],
  "untracked": ["scratch.txt"]
}

git_diff

View changes. staged diffs the index, statOnly: true (default) returns a stat summary, statOnly: false returns the full patch. path filters to a single file.

{
  "stat": [{ "file": "src/index.ts", "added": 3, "deleted": 1 }],
  "total": { "files": 1, "insertions": 3, "deletions": 1 },
  "patch": null
}

git_log

List recent commits. count defaults to 10 (max 100); path filters to a file.

{
  "commits": [
    {
      "hash": "a1b2c3d4e5f67890abcdef1234567890abcdef12",
      "author": "Shyboy0499",
      "date": "2026-08-26",
      "subject": "Fix typo"
    }
  ],
  "total": 1
}

git_commit

Create a commit. message is required (non-empty). Stage specific files with paths, or everything with all: true. Never stages implicitly.

{
  "success": true,
  "hash": "e5f6g7h0123456789abcdef0123456789abcdef01",
  "branch": "main",
  "filesStaged": 2
}

Safety

  • All git calls run through execFile with arguments passed as arrays — no shell

interpolation, so user/model-controlled values are injection-safe.

  • git_commit requires an explicit message and never stages files on its own

(pass paths or all: true).

  • No destructive operations (--amend, --force, rebase, reset) in the core scope.

Development

pnpm install
pnpm run build        # tsdown → lib/
pnpm test             # vitest against real throwaway git repos
pnpm run lint         # oxlint
pnpm run format       # prettier --write .

License

MIT

Before you begin

Check the current repository for installation, compatible versions and licensing. Stars and catalog scores are snapshot-based browsing signals.

Installation & troubleshooting · 项目问题反馈

Related projects