omniverse-cad-to-simready
CAD/ソースアセットからSimReadyへのワークフローをエンドツーエンドで調整します。CADからSimReady、ソースアセットからシミュレーション対応USD、プロップなどの幅広いリクエストに使用します。
npx skills add https://github.com/nvidia/skills --skill omniverse-cad-to-simreadyCAD to SimReady
When to Use
Use this workflow skill for an end-to-end pipeline from a source asset to a SimReady asset or package. It coordinates existing conversion, authoring, validation, conformance, rendering, and packaging references directly; do not replace it with a single monolithic runner command.
This skill is documentation-driven and does not ship scripts/run.py; it must
not depend on a repository checkout. Shell is declared because this workflow
invokes installed stage reference scripts directly, from each reference's
installed directory, and it still must not grow a monolithic runner.
Prerequisites
- Prefer
preflightfirst for deterministic setup: it installs/verifies local upstream checkouts, writes acad-to-simready-preflight.jsonmanifest, and exportsPHYSICAL_AI_PREFLIGHT_MANIFESTplusPHYSICAL_AI_REQUIRE_PREFLIGHT=1for downstream references. - Python 3.12 and
uv(per repoREADME.md). - A Content Agents model provider key when local deployment will run, or
explicit endpoint variables plus usage tokens for already-running
endpoints; see
references/preflight/README.mdfor the full list. - Docker, NVIDIA Container Toolkit, and an NVIDIA GPU for Content Agents and OVRTX stages.
- Local upstream checkouts under
${OMNIVERSE_CAD_TO_SIMREADY_UPSTREAM_ROOT:-$HOME/.omniverse-cad-to-simready/upstreams}when a stage needs upstream scripts or specs.
First Action
For any broad CAD/source-asset to SimReady request, assume
property_assignment_intent=run unless the user explicitly asks for
conversion-only, validation-only, or no material/physics assignment.
For conversion-only requests, set property_assignment_intent=skip, do not
deploy Content Agents, run convert-to-usd, then run validate-usd-minimum
on the generated USD if conversion succeeds. For validation-only requests,
set property_assignment_intent=skip and validate the USD the user
provided without rerunning conversion.
Run preflight (or verify an existing PHYSICAL_AI_PREFLIGHT_MANIFEST)
before any converter, validation, Content Agents, OVRTX, packaging, or FET
step; treat it as dependency bootstrap, not workflow routing. Use
--skip-content-agents for conversion-only/validation-only requests.
When property_assignment_intent=run, verify or deploy Content Agents
services immediately after confirming the source path and resolving intent,
before asset-context inspection, converter dependency checks, conversion,
validation, conformance, rendering, packaging, or upstream source builds.
Treat explicitly provided healthy endpoints as user-owned; otherwise run deploy-content-agents,
which deploys the shared standalone OVRTX renderer, then Material, Physics,
and optional Texture service containers in order.
Instructions
- Confirm the source asset path exists, resolve
output_root, and classify the request as end-to-end, conversion-only, validation-only, or packaging. - Resolve
property_assignment_intentbefore running any asset inspection, converter probe, conversion, validation, conformance, rendering, or packaging step. - Run
preflightfor the selected workflow targets, unless a readyPHYSICAL_AI_PREFLIGHT_MANIFESTis already configured. Source the generated env file before running downstream scripts. Treat preflight as dependency setup only: it may use a provided--source-asset,--source-format, or--conversion-toolsvalue to scope dependency checks, butconvert-to-usdand the upstream converter references still decide actual conversion support. - Verify or deploy Content Agents services first when
property_assignment_intent=run; block on missing authentication or unhealthy services instead of continuing. - Read
references/workflow.mdandreferences/commands.md, then run only the stage references needed for the current request. - Run
identify-asset-contexton the original source asset when web search is available or property assignment will run. - Route the source through
convert-to-usd, or skip conversion for existing USD input and treat the source path as the current USD path. - Run
validate-usd-minimumbefore expensive downstream work. Treat this as a viability gate only: record unit/profile issues such asmetersPerUnit != 1.0, but do not runsimready-conform-profile, FET001, or any other FET repair before Content Agents assignment when property assignment will run. - Run Content Agents material, physics, and optional texture assignment on the converted/minimum-valid USD when requested or required.
- Run
simready-conform-profileon the latest simulation USD path after property assignment and preserve every selected FET repair report. - Run validation gates in order:
omni-asset-validate,omni-asset-validate-geometry,omni-asset-validate-physics, andsimready-validate. - Rerun
simready-conform-profilewhensimready-validatereports a repairable requirement, then rerun profile validation on the newest authored USD. - Run
ovrtx-render-servicewhen preview, thumbnail, or inspection images are requested. When package outputs are requested, runassemble-package-sourcenext to create the cleandeliverable/package source from the final USD and thumbnail, then runnv-core-package-sampleandnv-core-package-sample-validationon that deliverable folder only. - Emit the consolidated workflow report with the final USD path, all stage reports, validation findings, rerun reasons, and next work.
Output Format
Emit a consolidated workflow report in Markdown, and include JSON when the
workflow writes structured artifacts. Report overall status as passed,
blocked, failed, or needs_rerun. See references/workflow.md for the
required Markdown and JSON report fields.
Detailed References
Read only the references needed for the current request:
references/preflight/README.md: deterministic local setup, manifest/env contract, wrappers, deployment opt-out, and guardrail behavior.references/workflow.md: inputs, source routing, detailed workflow, validation policy, output report fields, and next steps.references/commands.md: concrete portable script command patterns.references/assemble-package-source/README.md: two-zone package source assembly, root USD naming, thumbnail placement, and deliverable checks.references/troubleshooting.md: symptom/cause/fix table plus FET (GSP.001/RB.MB.001) repair-routing detail.references/publishing-layout.md: frontmatter compatibility-field notes and layout rationale for this skill's own file tree.
Publishing Layout Notes
Use skills/omniverse-cad-to-simready/ as the source of truth for this
product repo's skill. The .agents/skills symlink is a compatibility alias
for local agentskills.io-style discovery, and the nested references/ tree
is intentional. See references/publishing-layout.md for the alias list,
frontmatter field placement, and flattening rules.
Limitations
- This workflow coordinates existing conversion, property assignment, conformance, validation, rendering, and packaging skills; it does not replace them with a single monolithic runner command.
Troubleshooting
Read references/troubleshooting.md only when a specific stage or validation
gate is failing; it owns the symptom/cause/fix table and FET repair routing.
Hard Rules
- Prefer the preflight manifest for local upstream roots, converter
executables, SimReady validation runtime, OVRTX endpoint, and Content Agents
service URLs. When
PHYSICAL_AI_REQUIRE_PREFLIGHT=1is set, do not bypass the manifest with direct upstream discovery. - Do not run asset inspection, converter probes, local upstream builds, conversion, validation, conformance, rendering, or packaging before Content Agents readiness when property assignment will run.
- Use stage-specific installed reference scripts directly. Do not add or call a
single
omniverse-cad-to-simreadyrunner command. - For source conversion, delegate to the
convert-to-usdreference; do not substitute another converter for CAD or mesh formats. - For property assignment, use Content Agents references as separate atomic steps: material first, then physics, then texture only when requested.
- When property assignment will run, do not run
simready-conform-profileor any FET helper before Content Agents. Validate minimum USD first, then run Content Agents on that converted/minimum-valid USD, then apply FET repairs to the latest service-authored USD. - When property assignment will run, do not run
simready-validateor any SimReady profile validation before Content Agents. The only validation gate allowed before service calls isvalidate-usd-minimum, which is a basic USD viability check. - Stop at the first failing deployment, conversion, property-assignment, or conformance authoring gate unless the user explicitly asks for best-effort continuation.
- Do not stop at validation findings after a meaningful USD artifact exists.
Continue remaining diagnostic gates and mark the result
needs_rerun. - Do not leave a
GSP.001profile failure as an unclassified final finding. Route it to upstreamsimready-foundation-conform-fet-005-simulate-grasp-physics; if the current agent cannot inspect renders or no explicit grasp points are available, report a blocked FET005 repair with the visual evidence path or missing input reason. - Preserve every stage report and pass the concrete output USD path from each report into the next stage.