Plugin directory / Developer / dsh-plugin-amdgpu-inspect
dsh-plugin-amdgpu-inspect
Verified · install-tested on dsh yujiaoliang
What it does
Structured AMDGPU code-object and ISA inspection for DeepSeek Harness.
Works — verified, early-stage project
Structured AMDGPU code-object and ISA inspection for DeepSeek Harness. It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
AMDGPU Inspect
Structured AMDGPU code-object and ISA inspection for DeepSeek Harness.
The plugin turns an existing HSACO or AMDGPU ELF file into bounded JSON that an agent can query. It reports compiler artifacts without compiling source, executing a kernel, predicting performance, or prescribing an optimization.
AMDGPU ELF -> llvm-readelf + llvm-objdump -> normalized object model -> DSH tools
Tools
amdgpu_object_inspect
List kernels and report public code-object metadata plus instruction-category counts:
{ "path": "/tmp/vector-add.hsaco" }
amdgpu_isa_query
Query one kernel's normalized instruction stream without placing the complete disassembly in model context:
{
"path": "/tmp/vector-add.hsaco",
"kernel": "vector_add",
"opcodes": ["scratch_*", "s_waitcnt"],
"cursor": 0,
"limit": 40
}
The result contains addresses, opcodes, operands, categories, and a nextCursor when more matches remain.
Install
Requirements:
- Linux
- DeepSeek Harness developer preview
- ROCm LLVM tools in
/opt/rocm/llvm/binor onPATH
Install the bundle from GitHub:
dsh plugin --profile web add github:yujiaoliang/dsh-plugin-amdgpu-inspect
dsh --profile web
The package ships plain ESM JavaScript and needs no install-time build script.
Kernel X-Ray Skill
skills/kernel-xray/SKILL.md is the opinionated layer: it tells an agent how to compile before/after artifacts, query this plugin, form hypotheses, and require a workload measurement before claiming a speedup. The plugin itself remains a low-level facts API.
Design
llvm-readelf --notessupplies public AMDGPU metadata.llvm-objdump --disassemble --demanglesupplies ISA.- A one-artifact cache is keyed by absolute path, size, and modification time.
- ISA queries are capped at 200 records and support deterministic cursors.
- Child processes run without a shell and honor tool-call cancellation.
- Inputs are limited to regular files no larger than 256 MiB.
Security boundary
This version invokes LLVM and reads the artifact directly on the DSH host. It does not inherit a deployment's virtual filesystem or subprocess provider, so treat access as host-local rather than sandboxed. It never loads the artifact into an HSA runtime or executes GPU code. LLVM diagnostics can expose local paths.
Limitations
- Parsing follows the text emitted by current ROCm LLVM tools; fixture coverage cannot guarantee every historical or future output spelling.
- Kernel arguments, symbols, relocations, control-flow graphs, and binary encodings are not exposed yet.
- The plugin reports static facts only. Resource counts and instruction counts do not establish performance.
Development
Tests use synthetic public-format metadata and disassembly; no GPU or ROCm installation is required:
npm test
License
MIT. ROCm and LLVM are external tools and are not redistributed.
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-plugin-amdgpu-inspect for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
This plugin is GitHub source (not published to npm) — install it straight from the repo:
Web profile:
dsh plugin --profile web add github:yujiaoliang/dsh-plugin-amdgpu-inspect Headless (CLI) profile:
dsh plugin --profile headless add github:yujiaoliang/dsh-plugin-amdgpu-inspect Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.