dsh-usd-brep:让 DSH 智能体通过宿主工具调用 usd-brep

前言

DSH(DeepSeek Harness)的理念是「一切皆插件」,宿主插件通过注册工具,把能力暴露给 agent。在处理 3D CAD 场景时,agent 需要调用基于 NURBS 的 BRep 实体建模库,并且与 OpenUSD 交换数据。usd-brep 是 NVIDIA Omniverse 生态中的 Python 库,提供 BRep 建模和原生 USD I/O,但需要 CPython 3.12 环境支持。dsh-usd-brep 是一个 DSH 宿主插件,它在本地创建并管理一个隔离的 CPython 3.12 venv,自动安装 usd-brep,然后向 agent 暴露三个宿主工具。

是什么

dsh-usd-brep 是一个 DSH 宿主插件,由 gitend 维护。它通过一个本地隔离的 CPython 3.12 venv 来运行 usd-brep(基于 NURBS 的 BRep 实体建模 + 原生 OpenUSD I/O)。usd-brep 的 wheel 仅发布到 CPython 3.12,支持 64 位 Windows/Linux x86_64/aarch64。宿主在加载时执行 apply(ctx, rawConfig),注册全部三个工具。

核心功能

插件提供三个宿主工具:

  • usd_brep_version(无参数):探测 venv 能否 import usd_brep,返回版本号 + 可用子模块列表。
  • usd_brep_run_example(可选参数 usda):运行内置示例,做球 − 盒布尔差,导出 .usda 并重新导入做 sanity check。默认输出文件名为 brep_example.usda。
  • usd_brep_run_snippet(必需参数 code,可选参数 usda):执行 agent 写的 Python snippet。约定:snippet 必须 print(json.dumps(...)) 输出最终 JSON 值,宿主解析后作为 result 返回;导出时把 .usda 路径传 usda(注入到环境变量 USD_BREP_OUT)。

安装与启用

方式一:从本仓库安装(dsh-market 或插件管理器):

dsh plugin add git+https://github.com/gitend/dsh-usd-brep.git

方式二:本地目录安装:

plugin_manager install_bundle <本地目录>

宿主在加载时执行 apply(ctx, rawConfig),注册全部三个工具。

配置项

插件支持以下配置:

键 默认值 说明
pythonExe "" 显式指定 CPython 3.12 解释器;留空则自动探测(uv 托管位置 → py -3.12)。
venvDir ""(= ~/.dsh-usd-brep-venv) venv 目录;留空用每用户默认位置(与宿主 cwd 无关);相对路径按 process.cwd() 解析。
autoInstall true 缺失时自动 pip install usd-brep。
workDir "" 运行 snippet/示例时的 cwd。
timeoutMs 120000 snippet 执行超时(毫秒)。
defaultUsda brep_example.usda usd_brep_run_example 默认输出文件名。

平台要求与注意事项

  • CPython 3.12(wheel 仅 3.12;Windows 需 MSVC Redistributable)。
  • 不要在同一环境混装 usd-core 25.11(同版本符号冲突会崩溃)。
  • usd-brep 轮子内置 OpenUSD runtime 25.11,模型在库间通过文件交换(不共享 pxr 内存对象)。

插件以当前 dsh 进程权限运行,安装前应检查源码与许可证(MIT)。

适用场景

适合需要在 DSH agent 中集成 BRep 建模与 USD I/O 能力的开发者,尤其需要与 NVIDIA Omniverse 生态协同的场景。

小结

dsh-usd-brep 通过隔离的 CPython 3.12 venv,把 usd-brep 的建模与 USD I/O 能力暴露给 DSH agent,提供版本探测、内置示例与自定义 snippet 执行能力。更多细节可参考插件目录页与 GitHub 仓库。

  • 插件目录页:https://www.skillhub.cn/plugins/gitend/dsh-usd-brep
  • GitHub 仓库:https://github.com/gitend/dsh-usd-brep
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜