前言¶
DSH(DeepSeek Harness)裏若已裝 dsh-pet,桌寵通常以桌面浮層形式出現,交互集中在主界面附近。若希望桌寵在一間「房間」裏走動、與日記、筆記、手機界面等元素聯動,又不改 dsh-pet 源碼,就需要額外一層頁面與宿主邏輯。維護者 yiy367389-del 發佈的 dsh-pet-bedroom 正是爲此設計:在瀏覽器中打開獨立路由 /dsh-pet-bedroom/,用一張房間圖承載交互,複用 dsh-pet 已對外開放的素材與動畫池。QQ 聊天記錄、刷抖音等能力默認適配 Aurabot 生態,但屬於可選外部接入,需自行配置後端。
這是什麼¶
dsh-pet-bedroom 是 DSH 社區插件,分類爲趣味換裝,倉庫 yiy367389-del/dsh-pet-bedroom,許可證 MIT,當前 package 版本 2.3.5。一句話定位:把桌寵放進一間可用瀏覽器打開的臥室,房間裏的部分展示會跟隨你配置的真實數據(日記、讀書筆記、可選 QQ/抖音)變化。它不是聊天機器人、抖音自動機或 QQ 客戶端;也不修改 dsh-pet 一行代碼。
核心功能¶
下面介紹 README 中已說明、且與實現描述一致的能力。
獨立網頁與桌寵行爲¶
- 訪問
http://<你的 DSH 地址>/dsh-pet-bedroom/,頁面獨立於 DSH 主浮層,關掉不影響主界面。 - 房間圖爲 1536×1024(
assets/room.png),可點擊牀、電腦桌、椅子、書架、落地窗、龜背竹、地毯等,桌寵會走過去並播放對應動作。 - 動畫素材來自
dsh-pet的動畫池,不寫死動畫名;在dsh-pet裏換皮或加動畫後,臥室側會自動跟上。
桌上內容與手機界面¶
- 日記:從配置的聊天服務(默認
aurabot)讀取按天聚合的日記,只讀。 - 筆記:從記憶庫目錄讀取 Markdown 讀書筆記;在
allowAgentWrite爲 true 時,agent 可通過註冊工具寫入新筆記。 - 手機 QQ(需接入):手機 UI 內可展示真實會話與聊天記錄;右上角「QQ 連接」可配置 SnowLuma 的 OneBot HTTP API,真連一次再保存。主人在 QQ 私聊中說「睡覺 / 刷抖音 / 去電腦桌 / 看窗外」等,桌寵在臥室內執行對應行爲。
環境與房間狀態¶
- 時辰(清晨/中午/下午/晚間)與天氣(晴/雨/雪)可手動切換,也可跟隨真實時間自動變化。
- 傢俱與壁紙可增刪,狀態持久化到配置的
roomFile(默認$DSH_HOME/dsh-pet-bedroom/room.json)。 - 刷抖音(需接入):頂部「現在刷一輪」調用你配置的抖音 HTTP 後端;失敗會如實返回,不假裝成功。
Agent 工具¶
插件向 agent 註冊 6 個工具,用於讀取房間狀態、讀文檔、寫筆記、調天氣、擺傢俱、換壁紙等(具體以倉庫「頁面與接口清單」爲準)。
前置條件¶
- Node.js ≥ 20(項目使用
fetch、AbortSignal.timeout、import.meta.dirname等)。 - DSH 已正常運行,並清楚 profile 目錄位置。
- dsh-pet 已安裝且在設置中開啓顯示;未安裝時臥室頁仍可打開,但看不到桌寵。
- (可選)QQ:Aurabot(
dsh-aurabot-qq)或自實現的聊天服務。 - (可選)抖音:自實現的刷抖音 HTTP 後端。
安裝與啓用¶
GitHub Releases 提供預構建包,無需本地構建。資料中的一行安裝命令如下(固定 v2.3.5;跟最新版可將 URL 換爲 releases/latest/download/dsh-pet-bedroom.tgz):
dsh plugin add https://github.com/yiy367389-del/dsh-pet-bedroom/releases/download/v2.3.5/dsh-pet-bedroom.tgz
若採用 link 方式開發或自管目錄,在 profile 的 package.json 中增加依賴,並在 dsh.profile.bundles 裏把 dsh-pet-bedroom 排在 dsh-pet 之後:
{
"dependencies": {
"dsh-pet-bedroom": "link:D:/plugins/dsh-pet-bedroom"
},
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dsh-pet",
"dsh-pet-bedroom"
]
}
}
}
cordis.patch.yml 通常已含插入項;確認 bundle 與 node_modules/dsh-pet-bedroom 無誤後,重啓 DSH。側邊欄底部會出現「臥室」按鈕,或直接打開 /dsh-pet-bedroom/。修改 index.js 或 cordis.patch.yml 需重啓;改 web/index.html 刷新即可。
配置項(節選)¶
全部可選;在 cordis.patch.yml 的插件 config 下填寫。顯式配置優先於環境變量,再纔是默認值。
- insert:
- id: dsh-pet-bedroom
name: 'dsh-pet-bedroom'
config:
petRoute: '/dsh-pet-7340'
petId: ''
vaultDir: '/絕對路徑/memory-vault'
notesDir: 'notes'
chatService: 'aurabot'
douyinApiBase: 'http://127.0.0.1:8080/api'
douyinEnabled: true
allowAgentWrite: true
常用字段含義(完整表見 README):
| 配置項 | 默認值 | 含義 |
|---|---|---|
petRoute |
/dsh-pet-7340 |
dsh-pet 的 HTTP 路由前綴 |
petId |
空(第一隻) | 指定進入臥室的寵物 id |
vaultDir |
$DSH_HOME/memory-vault |
記憶庫根目錄 |
chatService |
aurabot |
Cordis 聊天服務名 |
douyinEnabled |
true |
是否允許觸發真實刷抖音 |
qqApiBase / qqToken / qqSelfId |
見 README | QQ 連接窗口與主人私聊過濾 |
路徑中的 ~ 不會自動展開,請使用絕對路徑。
典型用法¶
- 安裝
dsh-pet與本插件,按上文調整 bundle 順序並重啓。 - 打開臥室頁,點擊房間熱點觀察桌寵移動與動畫。
- 若使用 Aurabot,保持
chatService: 'aurabot',確認聊天數據目錄可讀,即可在桌上查看日記。 - 將
vaultDir指向你的記憶庫,閱讀或(在允許時)通過 agent 工具維護notesDir下的筆記。 - 需要 QQ 時,在頁面「QQ 連接」填寫 OneBot HTTP 地址與令牌,測試通過後保存;抖音則配置
douyinApiBase並實現約定接口。
倉庫爲脫敏通用版,不含維護者私人路徑或聊天內容;QQ、抖音兩塊需按 README「兩塊需要你自己接入的能力」自行對接。
適用場景與注意¶
適合:已在 DSH 中使用 dsh-pet,希望用瀏覽器單獨展示「房間 + 桌寵 + 可選真實數據」的開發者或玩家;願意自行接入 QQ/抖音後端的用戶。
注意:
- 插件以當前 DSH 進程權限運行,安裝前應閱讀源碼與 MIT 許可證,並理解其會讀取配置的記憶庫、聊天數據目錄及可選 QQ 配置(
qq.json權限 600)。 - QQ 與抖音不是內置能力;未接入時相關 UI 或按鈕可能仍可見,但行爲以實際後端爲準。
- DSH 插件生態遵循「一切皆插件」思路;社區目錄 SkillHub 條目 爲獨立收錄站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-pet-bedroom 在不改 dsh-pet 的前提下,提供可獨立打開的網頁臥室、動畫聯動與可選的真實日記/筆記/QQ/抖音接入點。安裝以 Releases 的 dsh-pet-bedroom.tgz 爲準,並與 dsh-pet 一併啓用。
- 目錄頁:https://www.skillhub.cn/plugins/yiy367389-del/dsh-pet-bedroom
- GitHub:https://github.com/yiy367389-del/dsh-pet-bedroom