前言¶
DeepSeek Harness (DSH) 允許通過插件擴展 Web 界面的能力。對於在 DSH 中開發智能體的用戶,在 Web 環境內直接管理 Git 倉庫(查看日誌、切換分支、管理 Worktree)通常需要在瀏覽器和終端之間切換。dsh-gitland 是一個插件,它提供了一個 GoLand 風格的 Git 工具窗口,在 DSH 界面內呈現提交時間線(彩色泳道圖)、分支樹和工作樹管理。該插件遵循 MIT 許可證。
核心功能¶
該插件在 Web 界面內實現了 Git 倉庫管理。
Git 面板與視圖¶
- 提交日誌:以彩色泳道圖呈現提交歷史,支持按分支、用戶、日期過濾,以及加載更多。
- 分支樹:顯示本地、遠程和標籤,支持搜索和展開/摺疊。當前分支以金色標籤高亮。單擊選中行,雙擊打開詳情。
- 提交詳情:顯示更改文件的目錄樹或平鋪視圖。文件圖標顏色指示改動類型(新增、修改、刪除、重命名)。
- 可調整大小:面板高度和列寬均可拖拽調整。
常規操作¶
- 提交:支持勾選文件進行提交,包含“AI 生成”按鈕,通過宿主直連 LLM 起草提交信息(無 Agent 循環),自動回填輸入框。提交操作使用
git add+git commit --only以確保僅提交選定的文件。 - 分支與工作樹:支持創建、刪除、切換分支,以及管理 Git 工作樹(添加、移除、清理)。
- Pull:提供始終可用的 Pull 按鈕,無論跟蹤狀態如何,操作前會刷新倉庫狀態。
- 狀態欄:顯示當前分支、領先/落後計數以及暫存/未暫存/未跟蹤文件的計數。
工作流 Skills¶
該插件集成了 4 個可執行的工作流 Skills,可在 DSH 輸入框中直接調用:
* /git-commit:創建 Conventional Commits 並可選推送。
* /git-branch:創建或刪除本地分支。
* /git-worktree:管理 Git 工作樹。
* /git-rules:規範參考(被上述命令引用加載)。
這些 Skill 文件也可直接複製到項目的 .dsh/skills/ 目錄中使用。
安裝¶
使用提供的 PowerShell 腳本將插件安裝到 DSH web profile。
powershell -ExecutionPolicy Bypass -File scripts/install.ps1
典型用法¶
在 DSH 輸入框中調用以下命令:
/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
安全與限制¶
- 執行邊界:Git 命令僅在
ctx.workspaceRegistry中註冊的工作區目錄內執行。 - 信任圍欄:與 DSH
/api的信任模型一致;請求必須來自迴環地址或聲明的受信主機。 - 工作樹路徑:工作樹目標路徑必須位於倉庫外,且不能包含倉庫路徑。
- 分支名:通過
git check-ref-format --branch進行驗證,以防止注入攻擊。
結語¶
dsh-gitland 在 DSH 界面內提供了全面的 Git 管理,包括可視化的日誌查看、分支/工作樹操作以及 AI 輔助的提交信息生成,適合需要 Web 端統一操作 Git 倉庫的場景。