dsh-codex-parity:在 DSH Desktop 會話頭加入 Codex 風格 Git 面板

前言

在 DeepSeek Harness(DSH Desktop)裏做智能體或腳本開發時,工作區往往就是某個 Git 目錄:改代碼、切分支、提交、推送是高頻動作。若每次都要切到終端或外部 Git 客戶端,會話上下文會被打斷。社區插件 dsh-codex-parity(維護者 LingYingNX)只做一件事:在會話頭部工作區 pill 左側增加獨立的「Git」入口,點開是輕量菜單,在當前會話記錄的 cwd 下真實執行 Git 操作,風格接近 Codex 側的 Git 面板,而不是再包一層完整 IDE。

這是什麼

dsh-codex-parity 是面向 DSH Desktop 的插件,通過 Cordis patch 註冊宿主 RPC 與 Web 客戶端 UI 槽位,零 npm 運行時依賴、無構建步驟即可安裝 release 包。插件不注入 DOM、不輪詢;Git 按鈕由宿主按槽位順序渲染在工作區 pill 左側。

項目 說明
倉庫 LingYingNX/dsh-codex-parity
目錄頁 skillhub.cn/plugins/LingYingNX/dsh-codex-parity
版本(package.json) 0.1.0
許可證 MIT
引擎要求 Node >=22;DSH >=0.2.0-rc.2 <0.3.0

DSH 生態強調「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。安裝前請自行查看源碼與許可證。

核心功能

入口在會話頭部工作區 pill 左側的「Git」按鈕(圖標 + 文字,與右側按鈕組分離)。菜單頂部彙總當前分支與總增減,例如 main +154 -117。

菜單能力(來自 README,已覈實):

  1. 提交:彈窗填寫 commit message,執行 git add -A 後提交。
  2. 推送:推送當前分支;若無 upstream,會提示需先手動建立。
  3. 切換分支:搜索並切換本地分支;當前分支帶勾號,並顯示未提交文件數。
  4. 創建並切換:輸入新分支名,以當前分支爲基點創建並切換。
  5. 初始化 Git:目錄尚非倉庫時可用;已是倉庫時該項置灰。

非 Git 倉庫時,提交、推送、切換分支置灰,僅「初始化 Git」可用(初始化項在菜單最下)。

界面字體統一爲思源黑體 Light(回退思源黑體常規族,再回退系統無襯線),面板字號爲基準的 1.2 倍。

架構簡述

兩半分工、無構建依賴:

文件 職責
dist/formal-host.mjs Git RPC:ping、gitState、gitCommit、gitPush、gitBranchSwitch、gitBranchCreate、gitInit
dist/formal-client.cjs Git 按鈕、菜單、分支與提交彈窗、操作 toast

工作目錄取自會話 header 的 cwd;所有 Git 命令在該目錄執行。客戶端註冊 shell.overlay(toast)與 conversation.session.header.utilities(Git 入口);後者 kind: list 升序渲染,原生工作區 pill(open-in-app)爲 order: -10,Git 按鈕爲 order: -20,故落在 pill 緊左側。菜單與彈窗爲掛於 document.body 的浮層,內聯 position: fixed 定位。

安裝與卸載

安裝使用 release 目錄下的 tarball(路徑按你本地克隆或下載後的 <插件目錄> 替換):

dsh plugin --profile desktop add <插件目錄>\release\dsh-codex-parity.tgz

卸載:

dsh plugin --profile desktop remove dsh-codex-parity

說明:上述命令來自倉庫 README;請勿憑插件名自行拼接 dsh plugin add github:owner/repo 等形式,除非官方文檔另有說明。

典型用法

  1. 在 DSH Desktop 打開目標會話,確認 header 中工作區 cwd 指向你要操作的目錄。
  2. 點擊工作區 pill 左側 Git,查看頂部分支名與 +/- 彙總。
  3. 需要提交時選「提交」,填寫 message 後確認(插件會先 git add -A)。
  4. 需要遠端同步時選「推送」;若提示無 upstream,在終端或外部工具中爲當前分支設置 upstream 後再推。
  5. 需要換線時選「切換分支」或「創建並切換」;空目錄或非倉庫時先用「初始化 Git」。

開發側若從源碼維護,README 給出:

npm test      # 離線測試
node scripts/pack.mjs   # 重新打包 release tarball

適用場景與注意

適合:在 DSH Desktop 單會話內頻繁做輕量 Git 操作、希望入口與工作區 pill 同屏的開發者。

注意:

  • 插件以當前 DSH 進程權限在 cwd 執行真實 git 命令,安裝前應閱讀 dist/formal-host.mjs 與 RPC 實現,確認符合你的安全策略。
  • 推送依賴本機已配置的 Git 憑據與 remote;無 upstream 時需手動建立,插件不會自動設置。
  • DSH 版本需落在 package.json 的 engines.dsh 範圍內,否則可能存在兼容問題。

結尾

dsh-codex-parity 把提交、推送、分支切換與倉庫初始化收到會話頭一顆 Git 按鈕裏,減少在 Harness 與外部 Git 工具之間來回切換。進一步瞭解可訪問 SkillHub 目錄頁 與 GitHub 倉庫。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜