Task Deck:DSH Desktop 上的多會話任務控制台

前言

在 DSH Desktop 裏同時開多條對話、多個分支時,會話列表只能按時間或標題瀏覽,很難一眼看出「哪條在跑、哪條在等你、哪條卡住、哪條該收尾」。切換會話時,個人待辦、檢查項和下一步動作往往散落在筆記或腦子裏,和真實 session 對不上號。

Task Deck 是面向上述場景的客戶端插件:它讀取 DSH 實時會話目錄,把每條對話呈現爲任務卡片,並在側邊欄提供儀表盤、詳情與統計,便於繼續、分叉或交接,而不復制對話正文。

這是什麼

Task Deck(astephengoo-arch/dsh-task-deck)由維護者 astephengoo-arch 發佈,分類爲客戶端插件。定位是 personal multi-session mission control for DSH Desktop:基於 live DSH session catalog,把會話組織成可管理的任務視圖,個人標註層與對話內容分離,不改寫 transcript。

核心功能

下面按 README 已說明的能力歸納,均可在安裝後於 Web/Desktop 客戶端使用。

入口與總覽

  • 在 sidebar.panellist 增加 Task Deck 入口;Blocked 與 Review 狀態會在徽章上彙總計數。
  • Live Dashboard:按狀態分組展示真實 DSH 對話,支持搜索與狀態篩選。

任務詳情與線程

  • Task Detail:展示 session 標題、ID、workspace、運行狀態、fork lineage;可編輯個人 Next Action、個人 checklist、相關對話與 review gate。
  • Task Thread:右側欄 Tab 與會話頭啓動器綁定當前 sessionId,便於在同一會話上下文中跟進。

繼續、分叉與交接

  • Continue:打開當前對話(ctx.uiWorkspace.openSession(sessionId))。
  • Fork / Handoff:通過 ctx.sessions.fork({ sessionId, increaseTitle: true }) 創建真實子會話;支持 fork 並標記爲 waiting,用於並行工作流。

個人標註與狀態

  • 狀態覆蓋、Next Action、檢查項、優先級、分支標籤、別名等保存在瀏覽器 localStorage(鍵名 dsh.taskDeck.annotations.v1),不會寫回對話內容。
  • Active 由運行時決定:agent 運行中爲 Active,停止後回到 Waiting 或你手動設置的 Blocked / Review / Done。
  • Idle auto-complete:非運行且未手動設狀態的會話,在可配置的空閒窗口(1 小時至 30 天,默認 14 天)後自動變爲 Done;手動設爲 Waiting 可保持打開,選 Auto 則恢復自動規則。

統計頁

  • 按會話統計工作時間、牆鍾跨度、輪次與 token(input / cache read / cache write / output)。
  • 使用手繪 SVG 圖表(無第三方 chart 庫、無外鏈):日 token 堆疊趨勢、日工作時間折線、7×24 活動熱力圖、token donut、會話時間線與 KPI sparklines。
  • 費用維度:對 cache-hit input、cache-miss input、cache-write、output 分別計價;按北京時間區分峯谷(工作日 09:00–12:00、14:00–18:00 爲峯時;夜間、週末與法定假日對 DeepSeek 模型按半價);提供可編輯價目表。數據由 Host 側從 durable log 聚合,經 GET /task-deck/stats(僅 loopback、純數字)提供給客戶端。

數據如何流動

層級 來源
Session 身份、標題、workspace、運行/空閒、最近活動、fork 父級 ctx.sessions.list
狀態覆蓋、Next Action、checklist、優先級、分支標籤、別名 localStorage 個人標註
Continue ctx.uiWorkspace.openSession(sessionId)
Fork / Handoff ctx.sessions.fork({ sessionId, increaseTitle: true })

Task Deck 不復制 transcript。Done 可手動設置,也可由最後活動時間推導的空閒規則自動完成。

安裝與啓用

環境要求(來自官方說明):

  • DSH >= 0.2.1-rc.5
  • Web/Desktop Client 需具備 sidebarRightTabs 與 sidebarRight

插件以當前 DSH 進程權限運行;安裝前建議閱讀倉庫源碼與 MIT 許可證,確認符合你的安全與合規預期。

從 Release 壓縮包安裝

在 GitHub Releases 下載 dsh-task-deck-1.5.0.tgz(版本以 Release 頁爲準),讓 DSH agent 執行:

plugin_manager install_bundle /absolute/path/to/dsh-task-deck-1.5.0.tgz

刷新 DSH Web GUI 後,入口出現在側邊欄靠下位置,與 Plugins、Schedules 相鄰。

從源碼目錄安裝 bundle

若已有插件源碼目錄(官方 README 給出 clone 地址供獲取源碼),可對目錄本身執行 bundle 安裝:

plugin_manager install_bundle /absolute/path/to/dsh-task-deck

同樣刷新 Web GUI 後使用側邊欄 Task Deck。

典型用法

  1. 打開側邊欄 Task Deck,在 Dashboard 用搜索和狀態篩選定位會話。
  2. 點進 Task Detail,填寫 Next Action 與 checklist,按需改優先級、別名或分支標籤。
  3. 會話仍在跑時狀態爲 Active;agent 停走後按你的標註或自動規則進入 Waiting / Done 等。
  4. 需要並行嘗試時選 Fork 或 Handoff;要回到原對話用 Continue。
  5. 在統計頁查看 token 與工作時間;若關心成本,在價目表中調整各 token 類型與峯谷規則後查看 money 維度。

在同一會話中,可用 Task Thread 右側 Tab 或會話頭入口,始終綁定當前 sessionId。

適用場景與注意

適合:同時維護多條 DSH 對話與 fork 分支的開發者或重度用戶;需要個人任務層(下一步、檢查項、Review/Blocked)且希望與 session 元數據同源、標註僅存本地的場景。

隱私(README 聲明):僅讀取 DSH session 元數據;個人標註存瀏覽器 localStorage;不上傳 transcript、無分析、無對外網絡請求。

注意:統計接口僅本機 loopback;自動 Done 依賴空閒窗口配置,長期「掛着但不跑 agent」的會話可能被自動歸檔,需 Waiting 時可手動鎖定狀態。

結尾

Task Deck 把 DSH 實時會話目錄當成任務板,在不動對話正文的前提下補上個人 mission control 與可選的費用向統計。目錄與文檔:

  • 社區目錄頁:https://www.skillhub.cn/plugins/astephengoo-arch/dsh-task-deck
  • 源碼與 README:https://github.com/astephengoo-arch/dsh-task-deck

DSH 生態遵循「一切皆插件」;社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

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

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

小夜