dsh-whale-game:在 DSH 裏一鍵起停本地 AI 遊樂場,與 Agent 同桌對局

前言

在 DeepSeek Harness(DSH)裏跑 Agent,常見驗證方式是寫腳本、調 API 或讓模型複述規則。若你想觀察 Agent 在有規則、有隱藏信息、有回合約束的環境裏如何讀盤面、選動作、應對同時暗選,瀏覽器裏開一桌、Agent 通過 MCP 入座,往往比純對話更直觀。

dsh-whale-game(大肥魚遊戲廳 · Whale Arcade)是社區維護的 DSH 插件:在側欄提供遊戲廳的一鍵起停、地址與 MCP 配置複製,並可選地把人類落子後的喚醒橋接到當前 DSH 會話。遊戲規則由獨立服務端的純函數內核裁決,插件不內置模型、不保存模型密鑰;你自帶 Agent,插件負責出牌桌與集成。下文介紹其定位、能力與安裝用法;事實以 GitHub 倉庫 README 爲準。

這是什麼

一句話:你帶 Agent,插件出牌桌。

角色 做什麼
你 瀏覽器開桌、點格子出招,無需單獨裝客戶端
Agent DSH 裏已配置的 Agent(會調 MCP 即可)入座 1 號位,讀 textView 與 legalActions 出招
規則引擎 服務端只當裁判:純函數內核,不代打、不內置 AI

遊戲本體來自獨立開源項目 AI 遊樂場(ai-playground);本插件只 spawn 啓動命令,不 import 平臺代碼,因此遊戲更新、增刪玩法不必等插件發版。維護者歸屬 Treasure-hub-agent;在 SkillHub 插件目錄 中分類爲模型推理。許可證 MIT;當前 npm 包版本 0.1.4(見 package.json),要求 Node >= 22、DSH >= 0.2.0-rc.1。

六款遊戲與節奏

插件自帶遊戲廳本體(vendor/app,README 稱約 14.6 MB),裝完即可玩,無需再 clone 平臺或聯網拉本體。

遊戲 玩法要點 節奏 單局時長(README)
搶寶大作戰 3×3 九宮格同時暗搶金幣,撞車則都拿不到 同時暗選 約 60–90 秒
四子棋 7 列重力落子,橫豎斜先四連者勝 輪流 約 2–4 分鐘
快艇骰子 五顆骰三次機會,13 欄記分 輪流 約 3–5 分鐘
猜拳心理戰 三局猜拳,決勝局翻倍 同時暗選 約 30–60 秒
深海獵手 5×5 盲射找船,命中繼續 輪流 約 5–8 分鐘
黑白棋 8×8 夾住翻面,終局數子 輪流 約 4–8 分鐘

「同時暗選」類對局:雙方提交後才一起揭示,適合觀察 LLM 出招習慣與不可預測性;換 Agent 即換對手風格,規則不變。

核心功能

側欄遊戲廳控制台

安裝並重啓 DSH 後,左側欄底部出現 大肥魚遊戲廳 入口(rail 模式下可收成 🎮 細條)。氣泡內大致提供:

  1. 一鍵起停 / 重啓:進程起來後還要等到 /api/games 有響應才亮綠燈,運行期每 5 秒複檢。
  2. 打開遊戲廳:默認在 127.0.0.1:8787 提供網頁(端口以界面顯示爲準)。
  3. 複製地址(給人用瀏覽器)、複製 MCP 配置(給 Agent)。
  4. 運行設置:可改啓動命令;默認用包內自帶本體,一般無需配置。
  5. 運行日誌、隨 DSH 自啓(默認開啓)。

遊戲廳以 detached 獨立進程運行:DSH 退出或卸載插件不會自動結束遊戲廳;要停需在氣泡裏點「停止」,或自行結束對應進程。若端口已被佔用,插件會識別爲「外部實例」——仍可玩,但不負責替停他人起的進程。

MCP 自注冊與 Agent 入座

首次激活時,插件嘗試把 mcp-ai-playground 寫入 profile 的 cordis.patch.yml。氣泡裏「複製 MCP」示例爲:

{
  "mcpServers": {
    "ai-playground": { "type": "http", "url": "http://127.0.0.1:8787/mcp" }
  }
}

典型指令(README 原文思路):連上 MCP 後調用 playground_join_room({ roomId: "<房間號>", seat: 1 }) 入座,再按 legalActions 出招。開局前需把房間號或 MCP 配置交給 Agent。

喚醒橋

DSH 會話消息驅動,瀏覽器里人類落子不會自動喚醒 Agent。輪到 Agent 時,遊戲平臺向插件 POST 喚醒請求,插件向目標會話投遞 user 消息。端點形如:

POST http://127.0.0.1:<DSH 端口>/whale-arcade/wake
x-wake-secret: <config.json 中的 wakeSecret 或環境變量 WHALE_WAKE_SECRET>
content-type: application/json

插件自起的遊戲廳會在 spawn 時注入 WAKE_URL / WAKE_SECRET;若自行啓動遊戲廳,可用氣泡「複製喚醒配置」。密鑰首次運行寫入 $DSH_HOME/whale-arcade/config.json,可用 WHALE_WAKE_SECRET 覆蓋。若宿主未提供 sessionController / sessions,喚醒橋不可用,其餘功能仍可正常用。

一局流程(簡述)

  1. 側欄打開遊戲廳 → 選遊戲 → 開一桌。
  2. 把房間號或 MCP 配置給 Agent,Agent 入座 1 號位。
  3. 雙方入座後自動開局;你點界面出招,Agent 讀盤面與合法動作出招。
  4. 終局有結算與記錄,可導出可回放日誌。側欄可見誰在等誰;未揭示的暗選對他人不可見,服務端按座位發令牌。

安裝與啓用

插件以當前 DSH 進程權限運行;安裝前建議瀏覽倉庫源碼與 MIT 許可證,確認符合本機策略。社區目錄 SkillHub 與 DeepSeek / 幻方無官方從屬關係,屬社區生態。

從 npm 安裝(README 推薦,0.1.3 起含喚醒橋):

dsh plugin --profile desktop add dsh-whale-game

裝完後重啓 DSH,側欄底部應出現遊戲廳入口。包名 dsh-whale-game,亦見 npm。

從 GitHub 安裝(跟倉庫最新提交):

dsh plugin --profile desktop add github:Treasure-hub-agent/dsh-whale-game

從 Git 安裝時 prepare 會執行 node build.mjs 產出 lib/,本機需能安裝 npm 依賴。

可選:在 運行設置 中改用本機源碼、npx ai-playground-cli 等啓動命令;環境變量 PLAYGROUND_CMD、AI_PLAYGROUND_REPO 優先級更高,配置路徑 $DSH_HOME/whale-arcade/config.json。

典型用法與排錯要點

讓人類 + Agent 打一局

  1. 確認氣泡裏綠燈、端口可達,瀏覽器打開遊戲廳並創建房間。
  2. Agent 側配置 MCP(或依賴插件寫入的 profile 補丁),playground_join_room 入座 seat 1。
  3. 若需自動叫醒 Agent,確認喚醒橋可用且平臺已 playground_bind_session 綁定 sessionId。

常見問題(摘自 README 表格,現象 → 方向)

現象 多半是
側欄沒有入口 未安裝或未重啓 DSH;看 DevTools 是否有 dsh-whale-game 報錯
一直「正在拉起…」後失敗 端口被佔用;或運行設置裏啓動命令錯誤(清空恢復自帶本體)
「外部實例運行中」 端口上已有非本插件起的遊戲廳;能玩,停服需在原啓動處處理
喚醒橋不可用 宿主未提供會話相關服務
DSH 無法啓動 從 profile 依賴 / bundles 移除 dsh-whale-game 後重裝 profile 依賴再試

結尾

dsh-whale-game 把「本地 AI 遊樂場 + 六款棋骰類對局 + MCP 入座 + 可選喚醒橋」收進 DSH 側欄:適合想在 Harness 裏實測 Agent 博弈與規則遵循、又不想自己拼進程與配置的開發者。目錄與源碼:

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

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

小夜