dsh-UEAssetsOperator
面向 DeepSeek Harness(DSH)的 Unreal Engine .uasset 检查与蓝图节点编辑插件。
lib/index.js导出name、inject和apply,不需要安装额外 npm 运行时依赖。- 通过
ctx.tools.register()注册原生工具ue_uasset_inspect和ue_blueprint_python_edit。 - 当用户消息出现
.uasset/.uproject//Game/...、Blueprint / DataTable(含蓝图/数据表)等明确意图,或 UE 项目目录中的BP_*等资产名时,插件会主动注入上述两个工具 schema 和完整ue-uasset-operator操作说明,引导模型直接调用原生工具而不是用strings、十六进制或自写脚本解析.uasset。 - 资产路径解析始终从会话工作目录或最近的
.uproject根开始做有界搜索, 禁止find /、盘符根或整个引擎目录的全盘扫描;工作区未命中时报告缺失 路径,而不是扩大扫描范围。 - 当宿主提供
skills服务时,通过ctx.skills.register()注册配套的 DSH 内置操作说明;仅提供tools的极简宿主仍可使用原生工具。 skills/ue-uasset-operator保存 PowerShell 启动器、Unreal Python 检查器、受限蓝图编辑脚本及参考文档。
插件支持三种检查模式:
| 模式 | 行为 |
|---|---|
resolve |
只解析 .uproject、UE 版本和虚拟包路径,不启动 UE |
registry |
通过 Asset Registry 读取类型、标签、依赖和引用,默认模式 |
load |
加载 UObject,额外读取选定属性和元数据 |
安装到 EAC
先将仓库克隆或复制到固定目录:
git clone https://github.com/QSWWLTN/dsh-UEAssetsOperator.git X:\Tools\dsh-UEAssetsOperator
在 C:\Users\<用户名>\.dsh\profiles\web\cordis.patch.yml 中加入:
- insert:
- id: ue-uasset-operator
name: 'file:///X:/Tools/dsh-UEAssetsOperator/lib/index.js'
如果已经存在 id: ue-uasset-operator,只替换该行的 name,不要再添加第二个
insert 块。重启 EAC 后生效。这个入口没有额外 npm 运行时依赖,Cordis、工具
和技能注册表由 EAC 宿主提供。
路径中的空格必须按 URL 规则编码,例如 Deepseek%20Harness%20EAC。Windows
盘符路径使用三个斜杠的 file:///X:/... 形式。
安装到普通 DSH 环境
推荐:bundle 安装
插件包含 cordis.patch.yml bundle。环境已经安装 dsh CLI 与 pnpm 时,
可以直接安装到目标 profile:
dsh plugin --profile my-profile add X:\Tools\dsh-UEAssetsOperator
该命令会把插件安装到 profile 的依赖中,并自动写入
dsh.profile.bundles。发布到 npm 后也可以按包名安装:
dsh plugin --profile my-profile add @deepseek-dsh-desktop/dsh-ue-uasset-operator
EAC 安装包未附带 pnpm,应使用上一节的 profile patch 方式。不要同时使用
bundle 和手工 insert 块,否则 DSH 会因重复 loader id 拒绝启动。
外部 patch
开发时也可以把同样的 insert 块保存为 ue-assets.patch.yml,再启动独立 DSH:
dsh web --patch X:\Tools\ue-assets.patch.yml --host 127.0.0.1 --port 0
在插件清单中确认 ue-uasset-operator 已加载。随后模型可以调用
ue_uasset_inspect 和 ue_blueprint_python_edit;也可以显式调用
ue-uasset-operator 配套技能。
极简模式与 Anchored Standard
官方极简模式和
极简模式_win会继承全局注册的两个 UE 工具,可以直接 调用。Anchored Standard会按上文规则在检测到.uasset意图时主动把ue_uasset_inspect和ue_blueprint_python_edit加回当前工具 schema, 因此命中的那一轮即可直接调用,不必等待解锁。若两个 UE 工具因宿主策略仍未出现,进入提升阶段后先通过
skill_search/skill_load加载ue-uasset-operator;随后调用:{"toolNames":["ue_uasset_inspect","ue_blueprint_python_edit"]}这是
dev_tool_search的精确解锁参数,工具会从下一轮开始出现。不要把两个 工具名拼成一个自由文本query,该模式的搜索会要求所有关键词同时命中 同一个工具。
前置条件
目标 .uasset 通常应位于项目或插件的 Content 目录中,并保留同名
.uexp、.ubulk、.uptnl sidecar。项目需要安装匹配的 Unreal Editor,
且 PythonScriptPlugin 应已启用;插件不会自动修改 .uproject。
开发验证
在插件目录运行:
npm test
No comments yet. Be the first to write one.