返回目錄

dsh-plugin-ya-workspace-sidebar

精選清單收錄維護狀態: 活躍

huanlinoto/dsh-plugin-ya-workspace-sidebar

DSH Web 工作区侧栏替代,顶部全局最近会话 + Workspace→Session 二级菜单 + 面包屑 | DSH Web workspace sidebar replacement: top global recent sessions + Workspace→Session two-level menu + breadcrumbs

前往 GitHub
$ dsh plugin --profile web add @huanlin/dsh-plugin-ya-workspace-sidebar

14

星數

0

Fork

TypeScript

語言

NOASSERTION

授權條款

2026-08-10

建立於

2026-11-07

最近推送

以 TypeScript 撰寫的 DSH Web 外掛 bundle,把內建工作區側欄換成最近工作階段清單、Workspace → Session 選單、麵包屑與右鍵整理選單。

DSH 整合

原生執行環境

作者聲明

安全稽核

未稽核

最後核實

2026-11-14

授權條款

NOASSERTION

01它能幫你完成什麼?

  • 不必在工作區目錄裡翻找,就能定位並重開任何一個最近的 DSH Web 工作階段

    頂端以虛擬捲動列出全域最近工作階段——是完整清單,而不是只留 5 筆

    每天在多個工作區與工作階段之間切換的 DSH Web 使用者

  • 在同一個側欄裡從麵包屑直接走到目標工作階段,而不是開兩個面板

    最近工作階段下方是 Workspace → Session 二級選單,兩塊之間有可拖曳分隔條(支援方向鍵微調、雙擊復原)

    同時開著多個工作區、希望工作階段按日期分組的使用者

  • 把置頂、重新命名、標記未讀、複製路徑這些日常整理動作放到側欄裡做

    工作階段列與工作區列的右鍵選單:置頂、重新命名、未讀藍點、在檔案總管中開啟,以及複製路徑 / 任務路徑 / 日誌路徑 / 工作階段 ID

    需要在工作階段、它的工作目錄與日誌檔之間來回跳的開發者

02如何將外掛接入 DeepSeek Harness?

先決條件

  • 一個 DSH Web profile——README 裡一律用 `--profile web` 安裝
  • 本機開發時還需要外掛的原始碼 checkout 與 `pnpm`,用來執行 `pnpm run build`

安裝步驟

  1. 01

    從 npm 安裝(README 建議的方式):`dsh plugin --profile web add @huanlin/dsh-plugin-ya-workspace-sidebar`

    $ dsh plugin --profile web add @huanlin/dsh-plugin-ya-workspace-sidebar

  2. 02

    本機開發要熱更新時:`dsh plugin --profile web add "link:D:/Projects/deepseek-harness/ya-workspace-sidebar"`

    $ dsh plugin --profile web add "link:D:/Projects/deepseek-harness/ya-workspace-sidebar"

  3. 03

    改完原始碼後重新執行 `pnpm run build`,重新啟動 `dsh web` 並強制重新整理瀏覽器

    $ dsh web

驗證整合成功

  • 建置後確認 `lib/index.js`、`lib/client.js` 與 `lib/types/` 都存在,且 `lib/client.js` 以 `window.__ModuleLoader__.load()` 包裝
  • DSH Web 啟動後出現替代側欄:上方是最近工作階段,下方是 Workspace → Session 選單

03DSH 整合程度與能力邊界

DSH 整合原生執行環境

DSH Web 外掛 bundle:`cordis.patch.yml` 停用官方 `ui-workspace` 並插入 `@huanlin/dsh-plugin-ya-workspace-sidebar`,其 client entry 另外自供 `ctx.uiWorkspace` 服務的替身

  • 虛擬捲動的全域最近工作階段清單

    DSH Web 的工作階段歷史→工作區選單上方的完整最近工作階段清單,置頂列浮在日期分組之上

  • Workspace → Session 二級選單與麵包屑

    目前選取的工作區→Workspace → Session 二級選單加上麵包屑導覽,工作階段按今天 / 昨天 / 更早分組

    分隔條位置可拖曳,也能用方向鍵微調或雙擊復原
  • 工作階段與工作區右鍵選單

    一列工作階段或一列工作區→工作階段選單:置頂、重新命名、標記未讀、在檔案總管中開啟工作目錄、複製路徑 / 任務路徑 / 日誌路徑 / 工作階段 ID;工作區選單:新增工作階段、在檔案總管中開啟、複製路徑、重新命名、刪除

    置頂與未讀標記存在瀏覽器本機開啟工作階段會自動清除它的未讀藍點
  • 供官方套件使用的 `ctx.uiWorkspace` 替身

    來自 `ui-sidebar`、`ui-conversation`、`ui-agent-preset` 與目錄選擇器的呼叫→沿用 / 新增工作階段導覽、current / recent 回退、封存清理與啟動自動選取策略,讓這些條目不會一直 pending

    透傳官方服務面較新的參數,例如 `StartSessionOptions`(`agentPreset`、草稿內容)與 `forkSession` 的 `allowMigration`

04適合誰?何時不該用?

適合

  • 每天在多個工作區與工作階段之間切換的 DSH Web 使用者
  • 同時開著多個工作區、希望工作階段按日期分組的使用者
  • 需要在工作階段、它的工作目錄與日誌檔之間來回跳的開發者

不適合

  • 外掛面向 DSH v0.1.2-alpha.1 起的 Web 版本——官方 `ui-sidebar` / `ui-conversation` / `ui-agent-preset` 在這些版本注入 `ctx.uiWorkspace`;參數透傳則跟隨 dsh 0.2.1-alpha.5 的語意。

05相容性、維護與安全提醒

  • 外掛面向 DSH v0.1.2-alpha.1 起的 Web 版本——官方 `ui-sidebar` / `ui-conversation` / `ui-agent-preset` 在這些版本注入 `ctx.uiWorkspace`;參數透傳則跟隨 dsh 0.2.1-alpha.5 的語意。
  • 「任務路徑」與「日誌路徑」只在檔案型(jsonl)持久化部署可用;sqlite 型部署(例如 `@morlay/better-session`)對應選單項會自動停用。
  • 瀏覽器產物預建置在 `lib/client.js`,所以倉庫發佈時必須提交 `lib/`;改任何原始碼都要重新建置,再重新啟動 `dsh web` 並強制重新整理瀏覽器。
  • 它只替換側欄介面:搜尋、新增工作區、重新命名、刪除、Fork 與封存仍走 DSH 原生 Host 能力,`dsh/` 目錄只作型別與行為參考,外掛不會改動 DSH checkout。
2026-08-102026-11-07作者未說明

NOASSERTION · 僅有 README 證據,無 GitHub Release,未做安全稽核

06常見問題

在 DeepSeek Harness 裡怎麼安裝 ya-workspace-sidebar?

執行 `dsh plugin --profile web add @huanlin/dsh-plugin-ya-workspace-sidebar`——README 裡一律裝進 `web` profile。本機開發可改用 link 安裝(`dsh plugin --profile web add "link:D:/Projects/deepseek-harness/ya-workspace-sidebar"`),改完原始碼後重新執行 `pnpm run build`、重新啟動 `dsh web` 並強制重新整理瀏覽器。

它會停用 DSH 內建的側欄嗎?

會。外掛以 bundle 形式發佈,`cordis.patch.yml` 會停用官方 `ui-workspace` 並插入 `@huanlin/dsh-plugin-ya-workspace-sidebar`。它的 client entry 另外自供了官方套件注入的 `ctx.uiWorkspace` 服務替身,否則那些條目會一直 pending,讓 WebUI 啟動卡死。

哪些操作仍然交給 DSH 自己處理?

搜尋、新增工作區、重新命名、刪除、Fork 與封存繼續使用 DSH 原生 Host 能力。外掛替換的是側欄介面,並加上本機的置頂與未讀標記,沒有重新實作這些宿主操作。

為什麼有些複製路徑的選單項是灰的?

任務路徑與日誌路徑只在檔案型(jsonl)持久化裡存在。sqlite 型部署(例如 `@morlay/better-session`)會把這些選單項自動停用,但複製一般路徑與工作階段 ID 仍然可用。

直接從原始碼執行這個倉庫要注意什麼?

必須帶上 `lib/`:瀏覽器產物預建置在 `lib/client.js`,倉庫發佈時要提交 `lib/`。建置後確認 `lib/index.js`、`lib/client.js` 與 `lib/types/` 存在,並確認 `lib/client.js` 以 `window.__ModuleLoader__.load()` 包裝。

08資料與來源

  • 作者聲明github.com17256f51c95b…

    插件采用 bundle 形式,`cordis.patch.yml` 会禁用官方 `ui-workspace` 并插入 `@huanlin/dsh-plugin-ya-workspace-sidebar`。

  • 作者聲明github.com17256f51c95b…

    dsh plugin --profile web add @huanlin/dsh-plugin-ya-workspace-sidebar

  • 作者聲明github.com17256f51c95b…

    本插件 client entry 通过 `src/client/navigation.ts` 自供该服务的替身(含复用/新建会话导航、current/recent 回退、归档清理与启动自动选择策略),否则这些条目会永久 pending 导致…

此頁面根據專案公開文件、儲存庫中繼資料與 DSH Plugins 的結構化解析所產生;最後核實於 2026-11-14。發現錯誤?提交更正。

🏆

最佳 DeepSeek Harness 外掛

從全目錄挑出的 12 個值得優先安裝的外掛,涵蓋各個分類。

DSH Plugins 是獨立的 DeepSeek Harness 外掛目錄,與 DeepSeek 官方無關,也不代表官方背書。第三方外掛未經安全稽核,安裝前請審查原始碼。

每週取得最新的 DeepSeek Harness 外掛,絕不濫發。