Introduction¶
DeepSeek Harness (DSH) allows the capabilities of the Web interface to be extended through plugins. For users developing agents in DSH, managing Git repositories directly inside the Web environment (viewing logs, switching branches, and managing Worktrees) usually requires switching between the browser and terminal. dsh-gitland is a plugin that provides a GoLand-style Git tool window, presenting a commit timeline (color-coded swimlanes), branch tree, and worktree management inside the DSH interface. The plugin follows the MIT license.
Core Features¶
This plugin implements Git repository management within the Web interface.
Git Panel and Views¶
- Commit Log: Presents commit history as color-coded swimlanes, supporting filters by branch, user, and date, as well as loading more items.
- Branch Tree: Displays local, remote, and tags, with search and expand/collapse support. The current branch is highlighted with a gold label. Single-click selects a row; double-click opens details.
- Commit Details: Shows a directory tree or flat view of changed files. File icon colors indicate change types (added, modified, deleted, renamed).
- Resizable: Both panel height and column widths can be adjusted by dragging.
Common Operations¶
- Commit: Supports selecting files to commit and includes an “AI Generate” button that drafts commit messages via a direct LLM connection from the host (without an agent loop), automatically populating the input box. Commit operations use
git add+git commit --onlyto ensure only the selected files are committed. - Branches and Worktrees: Supports creating, deleting, and switching branches, as well as managing Git worktrees (adding, removing, and cleaning up).
- Pull: Provides an always-available Pull button, regardless of tracking state; the repository state is refreshed before the operation.
- Status Bar: Displays the current branch, ahead/behind counts, and counts of staged, unstaged, and untracked files.
Workflow Skills¶
This plugin integrates four executable workflow Skills that can be invoked directly in the DSH input box:
* /git-commit: Creates Conventional Commits and optionally pushes them.
* /git-branch: Creates or deletes a local branch.
* /git-worktree: Manages Git worktrees.
* /git-rules: Provides reference specifications (referenced and loaded by the commands above).
These Skill files can also be copied into the project’s .dsh/skills/ directory for use.
Installation¶
Use the provided PowerShell script to install the plugin into the DSH web profile.
powershell -ExecutionPolicy Bypass -File scripts/install.ps1
Typical Usage¶
Invoke the following commands in the DSH input box:
/git-commit --push --style=full
/git-commit --issue=#123
/git-branch create feature/user-auth
/git-branch delete feature/old-feature
/git-worktree create feature/payment
/git-worktree clean --dry-run
Security and Limitations¶
- Execution Boundary: Git commands are executed only within workspace directories registered in
ctx.workspaceRegistry. - Trust Fence: Consistent with the DSH
/apitrust model; requests must originate from the loopback address or a declared trusted host. - Worktree Path: The target path for a worktree must be outside the repository and must not contain the repository path.
- Branch Name: Validated using
git check-ref-format --branchto prevent injection attacks.
Conclusion¶
dsh-gitland provides comprehensive Git management within the DSH interface, including visual log viewing, branch/worktree operations, and AI-assisted commit message generation. It is well suited for scenarios that require a unified interface for managing Git repositories in the Web environment.
- GitHub Repository: https://github.com/yingzaicc/dsh-gitland
- Plugin Directory: https://www.skillhub.cn/plugins/yingzaicc/dsh-gitland