DSH (DeepSeek Harness) uses a plugin-based architecture and supports extending functionality in the Web interface. dsh-git-vcs is a plugin that provides Git version control capabilities. It adds a “Version Control” page to the right sidebar of the DSH Web GUI, integrating core operations such as local change management, commit tree viewing, branch and stash management into the browser side.
Plugin Positioning and Features¶
This plugin is maintained by TiChuXiXi and is open-sourced under the MIT license. It mainly addresses version control of code in a Web interface, with its functionality modeled on IntelliJ IDEA’s Version Control tool window (Alt+9) and Commit tool window (Alt+0).
Core features include the following:
- Right sidebar entry: Registers a “Version Control” page in the right sidebar (
order: 20), and the onboarding page provides a capsule-style entry. Split view, fullscreen, and expand/collapse are handled by the official@deepseek-ai/dsh-client-ui-sidebar-rightplugin. - Version control capabilities: Supports viewing local changes and selecting items to commit, commit tree (multi-lane view, supports
--all), branch/remote/stash management, and Git command history. - Non-repository handling: When the opened directory is not a Git repository, the page switches to a centered empty state and provides a button for one-click repository initialization.
Installation and Setup¶
- Install the plugin
Install the plugin using the official CLI:
dsh plugin --profile web add dsh-git-vcs
Make sure the current environment is compatible. This plugin requires DeepSeek Harness version **≥ 0.1.7-rc.2**.
- Verify the installation
After installation, check whether the configuration is effective:
dsh --profile web --dump-config | Select-String "dsh-git-vcs"
- Apply changes
This plugin uses a zero-build strategy, but after modifyingindex.js(host side) orcordis.patch.yml, thedsh webprocess must be restarted for changes to take effect. Modifyinglib/client.js(browser side) only requires refreshing the page.
Technical Implementation and Dependencies¶
- Zero build: The plugin has no build steps, uses ESM format directly, and does not depend on runtime libraries.
- Dependent services:
subprocess: Executes git commands in the host process (as argv, without invoking a shell).connection: Performs trust fence validation for RPC channels.webServer: Registers the/git-vcsRPC route.
- RPC channel: The plugin sends Git operation requests to the host through the
/git-vcsRPC channel. After execution on the host side, standardized error codes (such asgit-vcs/not-a-repo,git-vcs/write-disabled, etc.) and data are returned.
Typical Usage¶
- View repository status: Open the “Version Control” page in the right sidebar to view changes, branches, and commit history under the current session working directory.
- Initialize a repository: If the opened directory is not a Git repository, click the “Initialize Git repository in the current directory” button in the center of the page to initialize it.
- Invoke commands: Call specific Git command endpoints through the
/git-vcsRPC channel (for example,repo/infoto get repository metadata,statusto get change status, etc.).
Summary¶
dsh-git-vcs provides complete Git version control capabilities for the DSH Web interface, giving it an IDE-like operational experience. Developers can commit code, manage branches, and review history through the standard RPC interface or the right sidebar UI.
- Repository URL: https://github.com/TiChuXiXi/dsh-git-vcs
- Directory page: https://www.skillhub.cn/plugins/TiChuXiXi/dsh-git-vcs