前言¶
在 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 模式下可收成 🎮 細條)。氣泡內大致提供:
- 一鍵起停 / 重啓:進程起來後還要等到
/api/games有響應才亮綠燈,運行期每 5 秒複檢。 - 打開遊戲廳:默認在
127.0.0.1:8787提供網頁(端口以界面顯示爲準)。 - 複製地址(給人用瀏覽器)、複製 MCP 配置(給 Agent)。
- 運行設置:可改啓動命令;默認用包內自帶本體,一般無需配置。
- 運行日誌、隨 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,喚醒橋不可用,其餘功能仍可正常用。
一局流程(簡述)¶
- 側欄打開遊戲廳 → 選遊戲 → 開一桌。
- 把房間號或 MCP 配置給 Agent,Agent 入座 1 號位。
- 雙方入座後自動開局;你點界面出招,Agent 讀盤面與合法動作出招。
- 終局有結算與記錄,可導出可回放日誌。側欄可見誰在等誰;未揭示的暗選對他人不可見,服務端按座位發令牌。
安裝與啓用¶
插件以當前 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 打一局
- 確認氣泡裏綠燈、端口可達,瀏覽器打開遊戲廳並創建房間。
- Agent 側配置 MCP(或依賴插件寫入的 profile 補丁),
playground_join_room入座 seat 1。 - 若需自動叫醒 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 博弈與規則遵循、又不想自己拼進程與配置的開發者。目錄與源碼: