In the DeepSeek Harness (DSH) environment, handling Git operations directly usually relies on external commands or complex context passing. The dsh-git-plugin integrates the Git workflow into DSH sessions, providing the ability to inspect repository status, manage branches, check diffs, commit changes, and restore snapshots through a Web panel and slash commands.
Core Capabilities¶
The plugin provides the following features for users and models through its Web panel and command-line interface:
- Web Git panel: In the right sidebar of the Web interface, you can directly view branches, file status, staged and unstaged changes, and commit history. You can stage files, manage branches, and manage staging directly in the panel. Each write operation opens a preview and requires confirmation.
- Slash commands: Supports quickly performing common Git operations via the command line.
- Read-only tools: Models can use tools such as
git-status,git-diff,git-log, andgit-showto obtain repository information. - Staged snapshots: Create, list, or restore stash snapshots using the
/undocommand. - Pre-commit checks: Supports running relevant checks before committing.
Installation and Enablement¶
Use the following command to install the plugin. Replace web with the name of the profile you are currently using.
dsh plugin --profile web add dsh-git-plugin@0.4.0
After installation, restart the DSH process for the corresponding profile and refresh the browser. You can then use the Git panel in the Web interface.
Usage¶
Slash Commands¶
| Command | Description |
|---|---|
/status |
View the current branch and working tree status |
/diff |
View a summary of staged and unstaged changes |
/branch [<name>] |
List branches, or create and switch to a new branch |
/commit [<message>] |
Show commit guidance or run checks and commit |
/undo [list\|pop] |
Create, list, or restore staged snapshots |
Model Tools¶
Models can use read-only tools such as git-status, git-diff, git-log, and git-show to support decision-making.
Scope and Notes¶
- Commit scope: The commit operation in the Web panel uses only the contents in the staging area; the
/commitcommand stages all changes in the target repository before committing. - Undo operation: The
/undocommand stages changes in the working directory, including untracked files. It does not revert commits. Conflicts may occur when restoring a snapshot usingpop.
Environment Requirements and Limitations¶
- System dependencies: Node.js ≥ 20 and Git ≥ 2.32 are required.
- DSH version: Verified to run on DSH 0.2.0-rc.2.
Ecosystem Position¶
The plugin is maintained by community user MashedPotato817 and follows the MIT license. The DSH ecosystem emphasizes “everything is a plugin,” and this plugin aims to give agents a complete operational view of Git repositories directly within a session.