dsh-workspace-tints:給 DSH 側邊欄的 Workspace 分色、標出未讀完成的聊天

前言

DSH 的側邊欄默認把所有 Workspace 平鋪成一長串。項目開到五六個之後,僅靠名字和圖標分辨很累;更實際的問題是,你切到別處,某個聊天自己跑完了,回來時很難一眼發現它已經完成。dsh-workspace-tints 就是處理這兩件事的:給每個 Workspace 分一個安靜的色階,把 Workspace 變成分組標題,並給「已完成但你沒看到」的會話整行標綠。它由 Veduis 維護,是一個純前端樣式插件。

這是什麼

一句話定位:一個 DSH 側邊欄的 Workspace 配色與層級插件。代碼來自 Veduis,發佈爲 npm 包 dsh-workspace-tints,倉庫在 GitHub 的 Veduis/dsh-workspace-tints,許可證 MIT。

要交代的邊界:社區目錄是獨立站點,與 DeepSeek / 幻方沒有官方從屬關係,這個插件也不是官方出品。

核心功能

一個 Workspace 一種色

色階是同一條暖到冷的淡色 ramp,共十二個色相(oklch(0.62 0.052 <hue>)),刻意跳過整個綠色段。每個 Workspace 的色會洗過它的標題,並在它下面每個 Session 的行邊畫一條 2px 色軌。五個項目同時開着時,讀起來像五個區塊,而不是一長串。

分級而不是平鋪

Workspace 名字作爲分組標題(15px 半粗,上方留白),它的會話縮進到下一級(13px)。色軌貼在行邊,像是這一組的脊柱,內容往裏退一步。

完成的會話整行變綠

某個 Session 在你不在的時候跑完,整行會帶上綠色漸變,和它本來就會亮起的狀態點同一種綠。因爲 Workspace 色階完全不用綠色,兩種信號不會混淆。你一打開這個聊天,綠行就清除。

可以把音量調低

在 Settings → Workspace tints 裏能看到每個 Workspace 當前的色,並把強度切到 Soft、Whisper 或 Off。分組層級和完成綠屬於結構性信號,保持不動,只有染色強度可以切換。

安裝與啓用

從 shell 安裝:

dsh plugin --profile web add dsh-workspace-tints

或者在應用裏進 Plugins → Install,填包名 dsh-workspace-tints。如果你的 profile 沒有開啓 HMR,需要重新加載頁面。

它也列在一個插件市場索引裏,Discover 可以不輸入包名直接安裝。添加索引源:

# Plugins → More → Custom plugin markets → Discover → Add index source
https://veduis.github.io/dsh-workspace-tints/index.json

要求 DSH 版本滿足 engines.dsh,當前是 ^0.2.1-rc.5。該包是一個 bundle:cordis.patch.yml 插入一行 workspace-tints,其 Client 部分就是樣式表和 Settings 區塊。

色相是怎麼選出來的

配色以 Workspace 的規範目錄路徑爲鍵,記在 localStorage 的 dsh.workspace-tints.v1:

1、重命名 Workspace,色保持不變;
2、新增 Workspace 時,取現有色中距離最遠的那一個,所以已有項不變色,新項也不會和鄰居撞色;
3、整個 ramp 十二個色相同亮度,並跳過綠色段;
4、刪除文件夾再重新加回來,會恢復原來的顏色。

不在任何 Workspace 下的會話保持中性色。

有一條遷移說明:1.0.0 之前做過的分配,會在首次加載時按最近色相重新錨定到「無綠」的 ramp 上,只跑一次。

兼容性與運行時行爲

插件只佔用一個 <style> 元素和上述設置區塊。它通過公開的 ctx.workspaces Client 服務讀取 Workspace 元數據,不讀取其他插件的狀態。行是靠側邊欄自己的 data-row-key(workspace:<id>、session:<id>)和狀態點的 data-state="done" 定位的;如果將來客戶端改了這些名字,相關 effect 會停止生效,其他不變。

沒有網絡訪問,沒有遙測,沒有分析。唯一持久化的是 localStorage 裏的色表和強度。

DSH 插件
^0.2.1-rc.5 1.0.x

卸載

應用裏 Plugins → Workspace Tints → Remove,或者:

dsh plugin --profile web remove dsh-workspace-tints

樣式表和設置區塊會隨 bundle 銷燬。localStorage 中的色表會保留,所以重裝後顏色不變。

適用場景與注意

適合側邊欄 Workspace 數量多、需要快速定位未讀完成項的人。它只改視覺,不改功能;分組層級是插件自己排版的,不依賴原生摺疊行爲。

請注意:插件以當前 dsh 進程的權限運行,安裝前應自己檢查源碼與許可證(MIT)後再決定。目錄頁給出的星標爲 0,屬於較新的插件,長期行爲以倉庫和 npm 包爲準。

結尾

dsh-workspace-tints 做的事很剋制:用一組安靜的色階把 Workspace 分組,給完成的聊天一個不會和配色混淆的綠色提醒,並允許把染色調淡。對被長列表和漏看完成項困擾的人,成本很低。

  • 目錄頁:https://www.skillhub.cn/plugins/Veduis/dsh-workspace-tints
  • GitHub:https://github.com/Veduis/dsh-workspace-tints
羽毛球分组比赛记分
小程序二维码

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

小夜