Introduction

The philosophy of DSH is “everything is a plugin.” For agents that need to handle game art assets, after generating or downloading GLB/GLTF files, it is often necessary to verify whether the model, textures, materials, and environment lighting are correct. If only file paths are visible, troubleshooting art asset issues is not intuitive.

The pbr-render plugin solves this problem: it renders GLB/GLTF models as interactive 3D previews and embeds them into responses via the pbr3d fence.

What Is This

pbr-render is the PBR 3D model preview plugin for DeepSeek Harness, used to render GLB/GLTF game art assets and provide interactive previews.

The repository owner is dhb861832993-star, the license is MIT, the package.json version is 0.1.0, and the client platform is web.

Core Features

PBR Rendering

The plugin supports PBR rendering and can automatically load metallic, roughness, normal, emissive, and AO maps.

Material Channel Inspection

The plugin supports the following material channel inspection modes:

  • pbr
  • basecolor
  • normal
  • roughness
  • metallic
  • ao
  • emissive
  • wireframe

Environment Lighting

The plugin includes built-in studio, sunset, outdoor, sunrise, and night environment maps, which can be switched and displayed as backgrounds to observe model performance under different lighting conditions.

Interaction

The preview supports:

  • Drag to rotate
  • Scroll wheel zoom
  • Auto-rotation
  • Exposure adjustment
  • Fullscreen mode

Proactive Triggering

The plugin can automatically invoke the pbr_render tool and render a preview when it detects 3D model files.

Security Boundaries

The file service only exposes paths within the workspace and restricts file extensions and file size:

  • Extension whitelist: .glb, .gltf, .bin, .ktx2, .hdr, .png, .jpg, .webp, .avif
  • File size limit: 512 MiB

Installation and Activation

GitHub Installation

First, run the following command to install the plugin from the GitHub repository:

dsh plugin --profile web add github:dhb861832993-star/pbr-render

Local Development

For local development, first install dependencies and build:

pnpm install
node scripts/build.mjs

Then install using a local path:

dsh plugin --profile web add link:/path/to/pbr-render

Activation

After installation, restart dsh web for the changes to take effect in new sessions.

Typical Usage

The plugin embeds 3D previews into responses via the pbr3d fence. An example output is as follows:

{"model":"/path/to/model.glb","autoRotate":true,"label":"Model description"}

The fence configuration fields include:

  • model
  • autoRotate
  • background
  • env
  • envBackground
  • envIntensity
  • exposure
  • viewMode
  • label

Among them, model is the required model path. env can be set to studio, sunset, outdoor, sunrise, or night. viewMode can be set to pbr, basecolor, normal, roughness, metallic, ao, emissive, or wireframe.

Applicable Scenarios and Notes

It is suitable for developers who use the DSH web profile and need to view GLB/GLTF models and material channels directly in agent responses.

Usage notes:

  1. The plugin runs with the current dsh process permissions. Review the source code and the MIT license before installation.
  2. The file service only exposes paths within the workspace and is restricted by the extension whitelist and the 512 MiB file size limit.
  3. The DSH community directory is an independent site with no official affiliation to DeepSeek / High-Flyer, and should not be understood as an official app store.
  4. After installation or local installation, restart dsh web for changes to take effect in new sessions.

Conclusion

The value of pbr-render lies in bringing GLB/GLTF game art asset previews, material channel inspection, and environment lighting observation into DSH responses, reducing the cost of troubleshooting model issues based solely on file paths.

GitHub repository: https://github.com/dhb861832993-star/pbr-render

Verified materials did not provide a community directory page URL, so this article does not include a directory page link.