前言¶
在 DSH 的插件接入方式裏,一個能力模塊可以以插件形式進入宿主會話。dsh-airp 的定位是:DeepSeek Harness 上的 AIRP 引擎,包含深 module WorldKernel 和淺 Host adapter。
它把世界包作爲目錄數據來處理,而不是把包本身當成插件代碼。下面介紹它的定位、核心能力、安裝步驟和幾個可復現用法。
這是什麼¶
dsh-airp 是 DeepSeek Harness 上的 AIRP 引擎。倉庫路徑爲 clarkzhao/dsh-airp,許可證爲 MIT。
從已覈實信息看,它圍繞世界包工作:世界包是數據,不是插件代碼;引擎只認目錄裏有沒有合法的 pack.yaml。
核心能力¶
下面列出的能力保持已覈實事實:
WorldKernel.turn/match:鑑定、敘事事實、GM、檢索。Pack.load/validate/catalog:YAML 索引 + Markdown 細節;來源包括 bundled、~/.dsh/airp-packs和自定義路徑。- 可選舞臺
airpStage:/airp-media把本地圖變成同源絕對 http(s) URL,敘述者嵌進對白。它不出圖引擎,也不綁grok-image。 - 世界包是數據,不是插件代碼;引擎只認目錄裏有沒有合法的
pack.yaml。 - 工具名必須匹配
^[a-zA-Z0-9_-]+$。
安裝到 DSH web profile¶
先準備本地倉庫路徑,再安裝到 web profile:
dsh plugin --profile web add /path/to/dsh-airp
命令中的 /path/to/dsh-airp 是本地路徑佔位。
經過上面的步驟後,複製預設:
cp -R presets/airp-play ~/.dsh/.agent-presets/airp-play
cp -R presets/airp-author ~/.dsh/.agent-presets/airp-author
複製預設時不要帶 tool-cordis,也不要在 play preset 裏掛 play-mask。已覈實的說明是:tools.restrict 在掛載時全局工具表還是空的,New Session 會失敗。
典型用法¶
消費者路徑¶
airp-play 用於開局選包。經過上面的步驟,可以從開局階段選擇世界包。
創造者路徑¶
airp-author 的路徑是:先用 pack_interview 取 8 問,再經 pack_scaffold、pack_validate、pack_open_play。
本地校驗¶
用戶包推薦寫到 ~/.dsh/airp-packs/,因爲 host 插件寫盤,不經過 agent sandbox。sandbox 只能寫工作區。
校驗某個包時:
npm run pack:validate -- ~/.dsh/airp-packs/my-pack
pack_open_play 不會熱切本會話。已有產出不能換 preset,需要新開 airp-play 並粘貼路徑。
適用場景與注意¶
dsh-airp 適合在 DSH web profile 中使用 AIRP 世界包,或者需要創建和校驗世界包的人。
注意以下幾點:
- 插件以當前
dsh進程權限運行,安裝前應檢查源碼與許可證。 - 倉庫聲明許可證爲 MIT,源碼可從 GitHub 倉庫查看。
- 不要把社區包 PR 進本倉
packs/,除非它要成爲下一個官方 demo。 - Issue 使用倉庫模板,模板類別包括
pack、authoring、engine。
結尾¶
dsh-airp 把 AIRP 能力拆成深 module WorldKernel 與淺 Host adapter,並讓世界包以目錄數據形式被校驗和使用。先做本地校驗,再開新的 airp-play 會話,是比較穩妥的落地順序。
插件目錄名稱:clarkzhao/dsh-airp
GitHub 倉庫:https://github.com/clarkzhao/dsh-airp