前言¶
做智能體的人大概都有這種經歷:模型什麼都會講,但一問遊戲裏的當前版本內容就開始編。與其讓模型憑記憶編關卡攻略,不如把資料庫和實時數據源做成工具,讓它自己查。這篇介紹一個面向《逃生:試煉》(The Outlast Trials) 的 DSH 原生插件(Cordis bundle),由 NormalAorii 維護,屬於社區目錄裏的聯網工具。
它做的事很直接:把社區整理的遊戲資料庫(關卡、敵人、道具、機制)和 Steam 實時公告包裝成 9 個模型可調用的工具,再配合已接入的 QQ 官方機器人(@tencent-connect/dsh-qqbot),就能在 QQ 羣聊或私聊裏直接問答,不用自己寫任何查詢邏輯。
這是什麼¶
一句話定位:給 DeepSeek Harness 用的原生 Cordis 插件,純 ESM,無構建、無運行時依賴。倉庫 NormalAorii/dsh-plugin-outlast,GitHub 星標 1,MIT 許可,當前版本 1.0.0,Node 要求 >=20。插件代碼爲 MIT,遊戲名稱、設定與商標歸 Red Barrels 所有,作者聲明這只是粉絲向查詢工具。
需要先說明的邊界:它不直接連接 QQ,圖片與文件發送依賴另一個已接入的插件 @tencent-connect/dsh-qqbot。資料庫內容是社區整理,不是官方 wiki 原文轉帖,版本更新後可能有出入。
資料庫規模¶
資料庫按文件組織,規模如下:
- 41 個關卡(11 主線 Trial + 30 個 MK 挑戰)
- 14 個 Program
- 21 個敵人
- 65 條道具/升級/貨幣/機制
- 31 條核心機制
- 10 條資訊快照
映射到 data/ 下的四個文件:trials.json 裝關卡與 Program 結構,enemies.json 裝敵人圖鑑,items.json 裝消耗品、Rig、處方/升級、貨幣、操作機制,news.json 裝 Steam 新聞源實測結果與離線快照。全部條目帶 sources 與 confidence 字段,confidence 不是 high 的條目,回覆裏會明確標註「社區整理」。
九個工具怎麼分工¶
插件入口 index.js 註冊 9 個 outlast_* 工具,並附 4 行 system prompt 指引(order 900)。工具定義在 lib/tools.js,數據加載與中英文模糊搜索在 lib/store.js:
| 工具 | 作用 | 典型問法 |
|---|---|---|
outlast_help |
功能菜單與指令說明 | 幫助 / 菜單 / 你能幹什麼 |
outlast_search |
全庫中英文模糊搜索 | 「監獄」「鵝媽媽」「注射器」 |
outlast_trials |
關卡列表 / 進度結構 | 有哪些關卡 / MK 挑戰 / 關卡順序 |
outlast_guide |
單關攻略(目標/步驟/技巧) | 警局怎麼打 / 孤兒院攻略 |
outlast_enemies |
敵人圖鑑與應對 | 有哪些敵人 / 鵝媽媽怎麼躲 |
outlast_items |
消耗品 / Rig / 處方 / 貨幣 | 有什麼道具 / Rig 怎麼選 |
outlast_mechanics |
核心機制與生存技巧 | 怎麼躲 / 噪音機制 / 新手怎麼上手 |
outlast_news |
Steam 官方公告實時抓取 | 最近有什麼更新 |
outlast_card |
生成 1080 寬圖文攻略卡 PNG | 來張圖 / 圖文攻略 |
其中 outlast_news 的抓取是三級降級:優先實時抓取 Steam 的 ISteamNews(appid=1304930),失敗退 RSS,再失敗回退本地快照,並在回覆裏說明原因。outlast_card 只負責渲染 PNG 並返回本地路徑,發圖動作由 qqbot_send_file 完成,模型會緊接着調用它。卡片頂部橫幅在運行時從 Steam CDN(cdn.cloudflare.steamstatic.com)拉取官方頁頭圖,僅本地緩存,不隨插件分發。
安裝與啓用¶
README 給出的官方安裝方式是「克隆到本地,再讓 DSH 安裝成 profile bundle」,兩步走:
# 1) 把倉庫放進 DSH 工作區(或任意本地目錄)
git clone https://github.com/NormalAorii/dsh-plugin-outlast.git
# 2) 讓 DSH 把該目錄安裝成 profile bundle(需要審批)
# plugin_manager install_bundle → target = 該目錄的絕對路徑
# 例如:C:\Users\<you>\Documents\deepseek-harness\default-workspace\dsh-plugin-outlast
注意這不是 dsh plugin add github:... 形式的一行安裝。安裝後 DSH 會把插件掛進 profile 的 bundle(cordis.patch.yml 的 insert 條目),不需要手改 profile 的 package.json 或 cordis.patch.yml,也不需要 pnpm install。裝完重啓(或重載)DSH 後,模型側會多出 9 個 outlast_* 工具。
安裝後自檢¶
在倉庫根目錄直接跑,不需要 DSH 宿主:
node scripts/verify.js # 46 項斷言:數據完整性、9 個工具、實時新聞、PNG 卡片
node scripts/smoke.mjs # 只跑卡片 + 新聞兩段,出圖更快
作者聲明該插件已在本人 DSH desktop profile 中安裝並實跑驗收,node scripts/verify.js 46/46 通過。這一步的意義是自己裝完先對一遍,而不是直接上生產。
典型用法¶
插件本身不綁定 QQ,接入方式是:QQ 側的官方機器人插件 @tencent-connect/dsh-qqbot 負責收發消息和文件,本插件負責提供查詢工具。用戶在羣裏問「鵝媽媽怎麼躲」,模型調用 outlast_enemies 查應對;問「最近有什麼更新」,模型調用 outlast_news 走 Steam 實時抓取;回覆「來張圖」,模型調用 outlast_card 生成 PNG,再用 qqbot_send_file 把圖發回羣裏。
可以照着復現的提問:
幫助/菜單—— 觸發outlast_help,摸清有哪些能力監獄、鵝媽媽、注射器—— 走outlast_search的中英文模糊搜索有哪些關卡/MK 挑戰/關卡順序—— 走outlast_trials警局怎麼打/孤兒院攻略—— 走outlast_guideRig 怎麼選—— 走outlast_items噪音機制/新手怎麼上手—— 走outlast_mechanics最近有什麼更新—— 走outlast_news
適用場景與注意¶
適合兩類人:一是自己部署 QQ 機器人、想給《逃生:試煉》玩家做問答助手的開發者,省掉自己寫攻略庫和維護 Steam 新聞抓取的活;二是想學習 DSH Cordis bundle 插件結構的人,這個倉庫不大,index.js / lib/tools.js / lib/store.js / lib/news.js / lib/cards.js 的分工比較清楚,從工具註冊、bundle patch 到降級抓取、本地渲染都能看到。
幾條要注意的:
- 插件以當前 DSH 進程的權限運行,安裝前先讀一遍源碼,確認目錄路徑、抓取目標和調用行爲符合預期。
- 圖文卡片依賴 Windows PowerShell +
System.Drawing,字體自動回退 Microsoft YaHei UI → Microsoft YaHei → SimHei → Arial;非 Windows 環境會明確報錯,改走文字回覆。也就是說「生成卡片 → 在 QQ 裏發圖」這條鏈路,在 Windows 上才完整。 - 資訊與網絡接口可能被牆或限流,失敗時插件如實說明,不編造公告。
- 單條回覆控制在 3400 字以內,以適配 QQ markdown 消息長度上限;
lib/render.js負責在這個上限內自動收尾。 - 攻略是社區整理資料,版本更新後可能有出入,出處由插件內的
sources/confidence字段承載,免責說明在 README 裏。
結尾¶
這個插件的價值在於把「遊戲攻略查詢」這類高頻但易錯的需求做成了標準工具集:模型不再靠記憶硬答,而是查庫、查實時源、必要時出圖,出處和置信度也一併給出。門檻不高,星標也只有 1,屬於剛起步的小項目,README 對功能邊界和已知限制都寫得很清楚。
- 社區目錄頁:https://www.skillhub.cn/plugins/NormalAorii/dsh-plugin-outlast
- 倉庫地址:https://github.com/NormalAorii/dsh-plugin-outlast