dsh-inputbox-game:任務跑着,輸入框變成自動小遊戲

前言

在 DeepSeek Harness(DSH)裏跑長任務時,對話框往往長時間處於「執行中」狀態。人不一定想一直盯着日誌,又未必方便切換到別的窗口。社區插件 dsh-inputbox-game 的做法是:當會話連續運行超過可配置閾值後,把對話輸入框區域變成一塊自動運行的小遊戲棋盤——AI 自己「玩」,人只看即可;需要打斷或補一句指令時,點回輸入框即可恢復編輯。

下面按安裝、行爲、設置和實現要點說明該插件;事實依據爲 GitHub 倉庫 README 與倉庫內 package.json(當前版本 0.2.10,許可證 MIT)。

這是什麼

dsh-inputbox-game 由維護者 Xingkong42 發佈,在 DSH 插件社區目錄中歸類爲趣味向擴展(目錄頁:skillhub.cn 插件頁)。它不改變任務執行邏輯,只在客戶端根據「本會話是否在運行」累計連續運行時長,到點後用覆蓋層接管輸入框卡片,在上面渲染多款無人工操作的小遊戲。

核心功能

依據 README,插件行爲可概括爲以下幾點。

  1. 任務開始運行後,插件開始計時。
  2. 任務連續運行超過設定時長(默認 3 分鐘)後,對話輸入框整塊變成小遊戲棋盤。
  3. 遊戲全自動運行,無需鍵盤操作。
  4. 點擊輸入框之外纔開始接管畫面;輸入框正被聚焦時不會打斷打字,此時輸入框上方會提示「點擊輸入框之外開始遊戲」。
  5. 點擊輸入框本身,正常編輯立即恢復。

README 寫明共 八款 遊戲;文檔表格列出七款的玩法與失敗條件,倉庫 package.json 的描述中另含 走迷宮。表格中的七款如下。

遊戲 玩法 失敗點
貪喫蛇 貪心追食物,越喫越長 把自己圍死
乒乓 兩側 AI 擋板預測落點對打 一方先到 5 分
小鳥 小鳥自動拍翅穿越管道缺口 撞管道
生態箱 羣體喫資源、繁殖,躲隕石與寒潮乾旱 羣體滅絕
賽馬 五匹馬自動比賽,可押注 本金破產
跳躍跑酷 小人自動起跳越過障礙與深坑 掉進坑裏
數值跑酷 三條道自動選路,喫數值牌漲攻擊力,撞怪掉攻擊力,逐關打首領 攻擊力被磨光

每局結束後可隨機換一款繼續;也可在設置裏關閉輪換,或只保留部分遊戲進入輪換池。

安裝與啓用

官方推薦通過 DSH 插件命令安裝(請將 <profile> 換成你實際使用的 profile 名;dsh web 與桌面端使用的 profile 可能不同):

dsh plugin --profile <profile> add dsh-inputbox-game

桌面端也可在應用內 設置 → 插件 搜索 dsh-inputbox-game 安裝,無需命令行。

從 GitHub 源碼安裝(README 標註爲免 npm 的一種方式):

dsh plugin --profile <profile> add github:Xingkong42/dsh-inputbox-game

插件與其它 DSH 插件一樣,在當前 dsh 進程的權限與環境下運行。安裝前建議閱讀倉庫源碼與 MIT 許可證,確認符合你的使用與合規要求。社區目錄站點爲獨立社區站點,與 DeepSeek / 幻方無官方從屬關係。

典型用法與設置

圖形界面

路徑:設置 → 插件 → 輸入框小遊戲(桌面端在插件頁的同名頁籤)。

可調項包括:

  • 多久後接管:立即 / 30 秒 / 1 / 2 / 3 / 5 / 10 分鐘
  • 輪換間隔:關閉 / 1 / 2 / 3 / 5 / 10 分鐘
  • 遊戲池:勾選輪換時能選到的遊戲
  • 恢復默認

Profile 補丁層默認值

若希望在某臺機器上預設默認配置,可在 profile 的補丁層寫入(設置頁中的選擇會覆蓋這些默認值):

- insert:
    - id: dsh-inputbox-game
      name: 'dsh-inputbox-game'
      config:
        thresholdMs: 180000     # 任務連續運行多久後接管輸入框,0 = 立即
        rotationMs: 180000      # 多久輪換一次遊戲,0 = 不輪換
        games: [snake, pong, flappy, life, horse, runner]

典型體驗流程:先照常發起並讓任務連續運行;超過閾值後,在需要娛樂展示時點擊輸入框外區域啓動畫面;若要輸入新指令,點回輸入框即可。

實現要點(便於二次開發或排錯)

README 中的原理摘要如下。

  • 瀏覽器半面:讀取客戶端已發佈的「本會話是否正在運行」,自行累計連續運行時長;到點後通過 conversation.input.overlay 槽位接管輸入框卡片。覆蓋層使用 pointer-events:none,點擊穿透到編輯器,因此「聚焦輸入框即恢復」無需額外按鈕。
  • 宿主半面:通過一條只讀 HTTP 路由把配置下發給瀏覽器半面。
  • 遊戲引擎:八個遊戲爲純邏輯、無 DOM 的獨立模塊,統一契約(create / step / draw / hud),便於單元測試。
  • 主題:配色取自主題變量 --dsw-alias-*,跟隨宿主明暗主題。

開發者在倉庫內可執行:

npm run build     # 由 src/games/*.mjs 重建 client.js
npm test          # README 記載爲 41 項 Node 單元測試

遊戲邏輯位於 src/games/,瀏覽器半面模板在 client.template.js;設計與實現記錄見倉庫內的 DESIGN.md。

適用場景與注意

更適合:經常在 DSH 裏跑較長自動任務、希望在同一會話界面內「掛着看」一點輕量動效的用戶;也可作爲學習 DSH 客戶端 overlay 槽位與雙端配置的示例插件。

需注意:接管僅在「連續運行」累計達標且輸入框未聚焦、且用戶點擊輸入框外時纔開始;默認 3 分鐘閾值可按需改短或設爲立即。八款遊戲中 README 示例配置僅列出六種 id,完整列表以設置頁「遊戲池」與倉庫說明爲準。

結尾

dsh-inputbox-game 把長任務等待時間複用到對話輸入框區域:全自動小遊戲、點外開始、點框回編。進一步瞭解可訪問社區目錄頁 https://www.skillhub.cn/plugins/Xingkong42/dsh-inputbox-game 與源碼倉庫 https://github.com/Xingkong42/dsh-inputbox-game。

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

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

小夜