前言¶
在 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