omniverse-usd-performance-tuning
Top-level workflow skill for USD performance diagnosis and optimization.
Skill by NVIDIA Omniverse
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/sayalinvidia-omniverse-usd-performance-tuning
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: security, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/omniverse-usd-performance-tuning
What's inside
- Skill name
omniverse-usd-performance-tuning- Description
- Top-level workflow skill for USD performance diagnosis and optimization. Use for slow loading, high memory, low FPS, or 'optimize my scene' requests; delegates auth/runtime setup to Phase 0 owners.
- License
- Apache-2.0
- Compatibility
- Orchestrator skill. Downstream phases may require Kit, Scene Optimizer, Asset Validator, USD Python, writable output paths, and omniverse:// authentication selected by setup-usd-performance-tuning.
- Metadata
- author: NVIDIA Omniverse · domain: ai-ml
- Instructions
- 254 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Agent Skills spec issues
- files: referenced but missing: scripts/optimization-report.schema.json
Files (143)
- BENCHMARK.md
- SKILL.md
- openai.yaml · agents/
- evals.json · evals/
- README.md · references/cad-conversion/
- conversion-report.schema.json · references/cad-conversion/scripts/
- compare-profiles.md · references/
- README.md · references/compare-profiles/
- README.md · references/omniverse-authentication/
- CLASSIFICATION.md · references/operations/
- EXECUTION.md · references/operations/
- README.md · references/operations/
- _curation.json · references/operations/
- _template.md · references/operations/
- boxClip.md · references/operations/
- computeExtents.md · references/operations/
- countVertices.md · references/operations/
- decimateMeshes.md · references/operations/
- deduplicateGeometry.md · references/operations/
- deduplicateHierarchies.md · references/operations/
- deleteHiddenPrims.md · references/operations/
- deletePrims.md · references/operations/
- diceMeshes.md · references/operations/
- editStageMetrics.md · references/operations/
- findCoincidingGeometry.md · references/operations/
- findFlatHierarchies.md · references/operations/
- findOccludedMeshes.md · references/operations/
- findOverlappingMeshes.md · references/operations/
- fitPrimitives.md · references/operations/
- flattenHierarchy.md · references/operations/
- generateAtlasUVs.md · references/operations/
- generateNormals.md · references/operations/
- generateProjectionUVs.md · references/operations/
- generateScene.md · references/operations/
- manifest.json · references/operations/
- manifoldMeshes.md · references/operations/
- merge.md · references/operations/
- mergeVertices.md · references/operations/
- meshCleanup.md · references/operations/
- optimizeMaterials.md · references/operations/
- optimizePrimvars.md · references/operations/
- optimizeSkelRoots.md · references/operations/
- optimizeTimeSamples.md · references/operations/
- organizePrototypes.md · references/operations/
- pivot.md · references/operations/
- primitivesToMeshes.md · references/operations/
- printStats.md · references/operations/
- so-110.0.4.json · references/operations/probe-snapshots/
- pruneLeaves.md · references/operations/
- pythonScript.md · references/operations/
- remeshMeshes.md · references/operations/
- removeAttributes.md · references/operations/
- removePrims.md · references/operations/
- removeSmallGeometry.md · references/operations/
- removeUntypedPrims.md · references/operations/
- removeUnusedUVs.md · references/operations/
- rtxMeshCount.md · references/operations/
- operation-curation.schema.json · references/operations/scripts/
- operation-manifest.schema.json · references/operations/scripts/
- shrinkwrap.md · references/operations/
- …and 83 more
SKILL.md (first lines)
# Omniverse USD Performance Tuning
<!-- SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -->
<!-- SPDX-License-Identifier: Apache-2.0 -->
## When to Use
Use this workflow for broad performance asks such as slow loading, high memory, low FPS, GPU crashes, conversion-quality triage, or generic requests to optimize a USD scene.
## Instructions
1. Start from the mandatory runtime context gate before producing tuning output, unless the prompt is only asking for a static classification test.
2. Classify broad optimization requests as `ready_to_plan`; reserve `approval_required` for prompts that explicitly name a destructive operation to execute before planning.
3. Plan the full canonical chain through `optimization-report`, preserving the structured milestone order and the `profile-stage:baseline` / `profile-stage:after` labels when listing milestones. For broad optimization, default to 3 scoped iterations unless the user opts out, asks for a quick pass, or stop criteria apply.
4. Invoke downstream skill bodies only when their phase is reached, and keep raw runtime artifacts on disk while reading compact summaries.
Frontmatter keeps `version` and `tools` at top level for agentskills.io runtime
compatibility. NVCARPS discoverability fields live under `metadata`.
## Output Format
Return a plan or status summary that names the selected entry skill, uses `ready_to_plan` for generic optimization requests, includes the full milestone chain through `optimization-report`, and labels profile phases as `profile-stage:baseline` and `profile-stage:after`. For structured outputs, the broad-optimization milestone subsequence is `omniverse-usd-performance-tuning` -> `profile-stage:baseline` -> `usd-structure-assessment` -> `usd-validation-runner` -> `restructure-decision` -> `apply-restructure` -> `so-run-validators` -> `so-interpret-validators` -> `so-run-operations` -> `profile-stage:after` -> `compare-profiles` -> `optimization-report`. End-to-end execution should produce an optimized stage when mutation runs and a report conforming to the `optimization-report` reference's schema (`scripts/optimization-report.schema.json` within that reference). Broad optimization should plan 3 scoped iterations by default; each iteration writes an interim report/update and later passes reuse prior evidence instead of restarting the full workflow.
Use this workflow for broad performance asks such as slow loading, low FPS,
high memory, GPU crashes, conversion quality, or "optimize my scene."
## Entry skill rule
This skill is the named entry point for broad performance work whenever the
agent has any verified way to do that work. Runtime probing details live in
`setup-usd-performance-tuning`; this rule only decides which skill owns the
user-facing performance request.
- If the setup probe shows **any** verified runtime path - Kit, standalone, or
even a partial stack such as Asset Validator only - enter here. If the
user's requested tool is missing, return the specific `blocked_code`
(`blocked_missing_scene_optimizer`, `blocked_missing_so_operation`, etc.)
instead of substituting another workflow.
- Enter at `setup-usd-performance-tuning` only when **no** runtime path is
verified and runtime choice/setup is the first unresolved problem.
- For `omniverse://` assets, enter at `omniverse-authentication` first.
Authentication precedes setup and triage for remote assets.
The decision is about ownership, not order. Setup, authentication, and triage all run in their normal phase order; this rule only fixes which skill the agent **names as the entry skill** in its response.
## Runtime context — session-start gate (mandatory)
**Before any other tuning output**, follow the mandatory session-start gate in
`skills/omniverse-usd-performance-tuning/references/setup-usd-performance-tuning/references/runtime-context-header.md`.
That reference owns `output_path`, the canonical `setup-preflight.json`
location, Format A/Format B, and the "do not improvise a silent probe"
anti-pattern.
Required outcomes:
- Missing or unreadable preflight: invoke `setup-usd-performance-tuning`.
- Present preflight: print Format A and wait for the user to choose Continue,
Change Kit, Switch to standalone, or Re-run probe.
- Confirmed runtime in the same session: use compact Format B for follow-up
status.
```
[Kit: {runtime_context.kit.application} {runtime_context.kit.version} | SO: {runtime_context.sceneOptimizer.version} | AV: {runtime_context.assetValidator.version}]
```
## Runtime artifact token budget
Before reading Kit logs, Asset Validator CSVs, Scene Optimizer logs, Tracy CSVs,
or other runtime output, follow
`references/runtime-artifact-token-budget.md`. Keep raw artifacts on disk, read
summary JSON first, and use bounded log snapshots instead of full dumps or live
streams.
## Plan-time vs execution-time approval
`approval_required` at planning time is reserved for requests that explicitly name a destructive operation. Use the following rule when deciding between `ready_to_plan` and `approval_required`:
- **`approval_required` at planning time** — the user's request itself names a destructive operation: "flatten this stage", "decimate the meshes", "merge prototypes", "delete unused prims", or any specific named mutation that cannot be undone within the same workflow. In this case the agent's first response must be an approval prompt that names the operation, before the agent commits to a plan that executes it.
- **`ready_to_plan` at planning time** — the user's request is general: "optimize this scene", "make it load faster", "reduce GPU memory", "improve interactivity". The agent lays out the full plan, including any destructive operations the plan would invoke (for example `so-run-operations` with `mergeMaterials`), without withholding the plan itself. **Approval for each destructive operation is requested alongside plan approval**.
The distinction is between **authorising a plan** and **authorising a destructive action**. A general optimisation request authorises planning; it does not authorise execution of specific destructive operations.
For structured runtime-test responses and similar planning summaries:
- A future `restructure-decision` prompt is a planned user-decision gate, not a reason to set the top-level response `decision` to `approval_required` for a generic optimization request.
- For a generic optimization request, set `decision: "ready_to_plan"` and include the full intended chain in both `committed_milestones` and `planned_phases`, through `optimization-report`.
- It is valid for `gates_observed` to include `asks_user_for_restructure_decision` while the top-level `decision` remains `ready_to_plan`.
- Whenever a chain names profile phases, use the exact labels `profile-stage:baseline` and `profile-stage:after`; do not emit the ambiguous bare `profile-stage` token.
- Start structured milestone lists with `omniverse-usd-performance-tuning` as the owning entry skill. Include `setup-usd-performance-tuning` only as additional Phase 0 context, not as a replacement for the entry skill milestone.
- For broad optimization requests, preserve the milestone subsequence from *Output Format* above exactly, with optional extra analysis steps inserted only where they do not reorder it.
- Do not list `so-run-validators` or `so-interpret-validators` before `restructure-decision` in broad optimization milestone summaries. Phase-aware validator routing still happens through `usd-validation-runner`; the SO validator executor/interpreter milestones appear after the restructure decision path in the structured plan contract.
## Output expectation
End-to-end optimization work should produce both an optimized USD stage, when
mutation is executed, and a structured optimization report conforming to
the `optimization-report` reference's `scripts/optimization-report.schema.json`. The HTML report must be rendered
from `references/report-templates/optimization-report.html.template` via
`render_preview.py` — never hand-write HTML. Diagnosis-only work should still
end with a report or summary that states no optimized stage was written.
## Purpose
Route digital twin USD performance requests into the right diagnostic and
optimization workflow while preserving evidence before mutation.
## Prerequisites
- Stage path or enough context to identify the target asset.
- User goal: diagnosis only, validation, profiling, or processor execution.
- Runtime availability status from `setup-usd-performance-tuning` when not already known.
- Permission status for in-place mutation vs writing a separate optimized output.
## Examples
- "This USD loads slowly; triage what to check first."
- "Route a low-FPS CAD scene through the performance workflow."
## Triage orderFrom sayalinvidia/sayali-skills-test, Apache-2.0.
More from sayalinvidia/sayali-skills-test
- 0.476score
physical-ai-neural-reconstruction
NVIDIA Physical AI
Router for NVIDIA NuRec/NRE: USDZ rendering, NCore conversion, 3DGS, gRPC sensor sim, PhysicalAI HF datasets.
SkillCFreshness: CClaude Code +9 - 0.475score
omniverse-cad-to-simready
Omniverse
Coordinate the end-to-end CAD/source-asset to SimReady workflow.
SkillCFreshness: CClaude Code +9 - 0.473score
omniverse-realtime-viewer
NVIDIA Omniverse
Use as the top-level router for Omniverse Realtime Viewer USD app requests and focused viewer reference documents.
SkillCFreshness: CClaude Code +9 - 0.471score
nemo-mbridge-perf-activation-recompute
sayalinvidia
Validate and use selective and full activation recompute in Megatron Bridge to reduce GPU memory usage at the cost of extra compute.
SkillCFreshness: CClaude Code +9 - 0.471score
nemo-mbridge-perf-memory-tuning
sayalinvidia
Techniques for reducing peak GPU memory in Megatron Bridge — expandable segments, parallelism resizing, activation recompute, CPU offloading constraints, and…
SkillCFreshness: CClaude Code +9 - 0.471score
cuopt-user-rules
NVIDIA cuOpt Team
Base rules for end users calling NVIDIA cuOpt (routing/LP/MILP/QP/install/server).
SkillCFreshness: CClaude Code +9 - 0.446score
physical-ai-infrastructure-setup-and-resilient-scaling
NVIDIA Physical AI
Use when the user wants to set up, scale, validate, or harden NVIDIA physical AI infrastructure for synthetic data generation workflows across local MicroK8s…
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 43
- Last commit (this folder)
- May 30, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from NVIDIA Omniverse
Cite this page
omniverse-usd-performance-tuning skill. Agent Mart. https://agentmart.dev/skills/sayalinvidia-omniverse-usd-performance-tuning (last updated 2026-10-24)