前言¶
在 DeepSeek Harness(DSH)裏跑 agent 時,Web 界面通常只反映工具調用與文本流,缺少輕量的視覺反饋。若希望在模型主動慶祝、或在一輪多步任務結束時給出不打擾操作的畫面提示,需要在 Host 註冊工具並在瀏覽器側掛浮層。dsh-cheerful 由 Mika-Maki 維護,屬於社區目錄中的「趣味換裝」類插件;當前爲 V0.1-Unstable 實驗版,接口與行爲可能變動,README 建議僅在個人或測試環境使用。下文基於倉庫 README 與 package.json 說明其定位、安裝與用法。
這是什麼¶
dsh-cheerful 給 DSH 增加名爲 cheer 的工具:模型一旦調用,Web 界面左右兩側的禮炮同時向中間噴出綵帶,純畫面、不顯示居中文字。Host 側通過 defineTool 註冊工具;瀏覽器側用 canvas 浮層繪製,並支持設置裏的「自動禮花」與工具卡上的「再放一次」本地重播。
- 維護者:Mika-Maki
- 倉庫:https://github.com/Mika-Maki/dsh-cheerful
- 社區目錄:https://www.skillhub.cn/plugins/Mika-Maki/dsh-cheerful
- npm 包名:
dsh-cheerful,版本 0.1.0(資料中 package.json) - 許可證:MIT
- 運行要求(engines):Node
>=22.19.0,DSH>=0.2.1-rc.2 <0.3.0;peer 依賴含@deepseek-ai/cordis、@deepseek-ai/dsh-tools、@deepseek-ai/schemastery(版本範圍見 package.json)
核心功能¶
cheer 工具¶
| 參數 | 類型 | 說明 |
|---|---|---|
side |
both | left | right |
可選,默認來自插件 Config 的 defaultSide |
intensity |
1–3 | 可選,默認來自 Config 的 defaultIntensity |
模型未傳參時使用 profile 裏可覆蓋的默認值(見下文配置)。
畫面與交互¶
README 中說明的效果要點如下:
- 左右禮炮 emoji:彈入過沖、後坐、暖色輝光,右側鏡像朝內。
- 每側約 30–70 條綵帶或長流蘇,帶重力、空氣阻力、擺動與自旋。
- CPU 側 canvas 單層繪製,
pointer-events: none,不阻擋點擊。 - 不渲染居中文字,僅禮炮與綵帶。
- 系統開啓
prefers-reduced-motion: reduce時不播放粒子。 - 歷史會話回放不會重放禮炮,僅實時調用觸發。
- 工具卡提供「再放一次」按鈕,可在本地重播。
自動禮花¶
客戶端在「設置 → 通用 → 自動禮花」中可調,並寫入 localStorage(鍵 dsh-cheerful/settings)。規則摘要:
- 目標完成:會話 goal 投影進入
complete時放一次。 - 單輪多步:一次提問中 agent 達到「最少步數」及以上時,該輪結束放一次;單步一問一答不放。
- 每輪最多一次:目標完成與單輪多步共用當輪配額,下一輪重置。
- 頁面在後臺不放;1 秒防抖;僅看本輪從運行到結束的真實變化,刷新或回放不誤觸發。
默認項(界面可調):自動禮花開;最少步數 2;單輪禮炮強度 2;目標完成禮炮強度 3。
安裝與啓用¶
安裝會把 bundle 追加進 profile 的 dsh.profile.bundles。README 給出以下方式(任選其一):
# GitHub(推薦,無需發佈 npm)
dsh plugin --profile web add github:Mika-Maki/dsh-cheerful
# npm(發佈後可用)
dsh plugin --profile web add dsh-cheerful
# 本地 tarball(npm pack 產物)
dsh plugin --profile web add file:/path/to/dsh-cheerful-0.1.0.tgz
# 本地目錄開發
dsh plugin --profile web add "link:$PWD"
卸載:
dsh plugin --profile web remove dsh-cheerful
插件以當前 dsh 進程權限運行;安裝前請自行查看源碼與 MIT 許可證,確認符合你的環境策略。
配置¶
Host 側(profile patch)¶
在 profile 的 cordis.patch.yml 中可覆蓋插件 Config,例如:
- id: cheerful
name: dsh-cheerful
config:
defaultSide: left # both | left | right
defaultIntensity: 3 # 1..3
約定:插件名 cheerful 須與 cordis.patch.yml 的 id 一致。
客戶端(控制台)¶
也可在瀏覽器控制台讀寫設置:
window.__dshCheerful.setSettings({ minSteps: 4, turnIntensity: 3 })
window.__dshCheerful.getSettings()
window.__dshCheerful.resetSettings()
典型用法¶
- 按上文命令向
webprofile 安裝插件,重啓或按 DSH 慣例加載 profile 後啓動dsh web。 - 在 agent 可用的工具列表中出現 cheer 後,由模型調用,例如指定兩側與強度:
side: both、intensity: 3(具體由模型與 schema 決定)。 - 若不需要模型主動觸發,可依賴「自動禮花」在 goal 完成或多步輪次結束時播放;在設置中關閉總開關即可停用自動行爲,仍可通過工具調用與「再放一次」手動播放。
Host 側改動需重啓 dsh web;瀏覽器側爲手寫 window.__ModuleLoader__.load 包,改 client 後 README 稱無需構建。
適用場景與注意¶
- 適合:希望在 DSH Web UI 做輕量慶祝反饋、演示 agent 完成目標或多步任務時的開發者;分類上屬於趣味換裝,不改變核心業務邏輯。
- 注意:V0.1-Unstable,不適合直接當作生產穩定依賴;不寫自定義會話事件,避免影響 session resume;僅使用標準 slot / hooks,不 import 其他插件內部模塊。
- 生態:DSH 理念是「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係,本文不以「官方應用商店」表述。
結尾¶
dsh-cheerful 用一個小工具加一層不擋操作的禮炮綵帶,把「慶祝」從純文本擴展到 Web 畫面,並可選自動禮花規則。進一步細節與預覽圖見 GitHub README。
- 目錄頁:https://www.skillhub.cn/plugins/Mika-Maki/dsh-cheerful
- GitHub:https://github.com/Mika-Maki/dsh-cheerful