dsh-plugin-2048:在 Harness 主區整頁玩 2048,等 agent 時不切走

前言

在 DeepSeek Harness(dsh)裏跑長任務時,界面往往只能等進度。切到瀏覽器開別的頁面,會話上下文和注意力一起被帶走;留在 Harness 裏又缺少一個「佔手但不佔會話」的消遣入口。

維護者 JJJACKsong 的 dsh-plugin-2048 把經典 2048 做成側邊欄插件:入口與「技能流」「插件」「定時任務」並列,點開後在主區整頁下棋盤,不彈全屏窗、不寫會話、不動工作區。分類上屬於社區目錄裏的「趣味換裝」類插件;GitHub 倉庫當前星標爲 0,許可證 MIT,版本 0.2.0(以 package.json 爲準)。

這是什麼

一句話:DeepSeek Harness 側邊欄 2048 小遊戲——側邊欄一個圖標,主區整頁棋盤(sidebar panel, full-page board)。

Host 半是空殼 apply():不註冊 Service、不註冊 Tool、不寫 session、不碰工作區文件。客戶端半在瀏覽器裏完成規則與 UI,棋盤與分數只進 localStorage。插件以當前 dsh 進程權限運行;安裝前建議自行查看源碼與 LICENSE。

核心功能

入口與佈局

安裝並激活後,側邊欄底部多 2048 圖標;點擊後主區顯示整頁棋盤,副標題文案爲「agent 還在跑?先來一局」。界面使用宿主 --dsw-alias-* 主題變量,隨 Harness 明/暗主題切換;棋子格本身爲固定暖色美術,不跟主題走。

操作與規則

  1. 移動:方向鍵、W A S D、Vim 的 H J K L;觸屏在棋盤上滑動。
  2. 撤銷:最多回退 30 步(工具欄或終局浮層均可);歷史最高分不因撤銷回退。
  3. 存檔:棋盤、當前分、步數、最高分寫入 localStorage,關閉 Harness 再開可續玩(同一瀏覽器 origin;不跨設備、清緩存會丟)。
  4. 結算:合成 2048 時出現「注意力驚人!」小卡片,可繼續往 4096 堆或結束;無路可走時出現「注意力渙散!」,可撤銷或新局。均爲蓋住棋盤的小卡片,非全屏彈窗。
  5. 動畫:滑動、新塊、合併、無效方向抖動;系統 prefers-reduced-motion 時動畫全部關閉。

兼容性

  • dsh 版本:>= 0.1.5-rc.2(engines.dsh)。
  • 平臺:僅 Web UI(dsh.client.platform: "web");桌面版即 Web UI,無終端/TUI 界面。
  • 客戶端依賴注入:@deepseek-ai/dsh-client-locale;其餘爲原生 React 與主題變量。

未提供排行榜、音效或 AI 對手;用途就是等待 agent 的幾分鐘。

安裝與啓用

社區插件目錄頁:https://www.skillhub.cn/plugins/JJJACKsong/dsh-plugin-2048。源碼與說明:https://github.com/JJJACKsong/dsh-plugin-2048。

從插件市場(審覈通過後):倉庫 README 寫明已提交 Open Plugin Market(索引 polang233/dsh-plugin-index),通過後可在市場面板搜 2048 安裝。Open Plugin Market 爲社區索引站點,與 DeepSeek / 幻方無官方從屬關係。

從本地目錄(README 給出的當前可用方式):先把插件目錄放到本機,再任選其一:

# 非桌面託管的 profile:
dsh plugin --profile <profile> add /abs/path/to/dsh-plugin-2048

其餘方式見 README:插件管理器 / 插件頁 →「從本地目錄安裝」並指向該目錄;或由 agent 調用 plugin_manager 的 install_bundle,target 填目錄絕對路徑。

裝完即激活(HMR);側邊欄出現 2048。卸載或暫停:插件管理器開關,或 plugin_manager 的 set_bundle / remove_bundle。

典型用法

  1. 長任務跑起來後,點側邊欄 2048,在主區下棋。
  2. Agent 消息到達後照常通知;切回會話繼續即可,遊戲狀態仍在 localStorage。
  3. 終局浮層裏可撤銷幾步再試,或點「新局」重開。

開發側若改 lib/client.js,README 說明需重裝 bundle 並重啓 Harness 後瀏覽器纔會載入新客戶端(HMR 僅對首次安裝生效)。規則內核單測:

node test/game.test.mjs
# 或
npm test

實現要點(選讀)

README 中的取捨便於判斷是否適合你的環境:

  • 純瀏覽器半 + 空 Host:不增加 Host 啓動負擔,不在任何會話留痕。
  • 無構建步驟:lib/client.js 爲手寫 bundle;改代碼刷新依賴上述重裝/重啓策略。
  • 規則內核與 React 解耦:#region game-core 純函數,單測從源碼抽取,與上線邏輯一致。

適用場景與注意

適合:經常在 dsh Web UI 裏等 agent、希望留在 Harness 內輕度消遣的開發者。

注意:

  • 存檔綁定瀏覽器 localStorage,多設備不同步。
  • 插件分類爲趣味換裝,不改變 agent 能力;安裝前核對 MIT 許可與倉庫代碼。
  • 需要 dsh >= 0.1.5-rc.2,且僅 Web UI。

結尾

dsh-plugin-2048 把等待時間收進側邊欄與主區整頁棋盤:不寫會話、不佔工作區,合出 2048 或走死局都有輕量反饋。目錄頁見 skillhub.cn/plugins/JJJACKsong/dsh-plugin-2048,倉庫見 github.com/JJJACKsong/dsh-plugin-2048。

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

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

小夜