application-flow
High-level overview of a typical ovrtx application lifecycle. Use when user asks how to structure an ovrtx program, what the main…
Discovering prims on the runtime stage and inspecting their attribute schemas. Use when user asks to find prims by type, filter by attribute, list all prims, or look up attribute types before reading or writing them.
$ npx -y skills add nvidia-omniverse/ovrtx --skill stage-queries --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/stage-queriesContext preview
The summary Claude sees to decide when to auto-load this skill.
Discovering prims on the runtime stage and inspecting their attribute schemas. Use when user asks to find prims by type, filter by attribute, list all prims, or look up attribute types before reading or writing them.
# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. # SPDX-License-Identifier: LicenseRef-NvidiaProprietary # # NVIDIA CORPORATION, its affiliates and licensors retain all intellectual # property and proprietary rights in and to this material, related # documentation and any modifications thereto. Any use, reproduction, # disclosure or distribution of this material and related documentation # without an express license agreement from NVIDIA CORPORATION or # its affiliates is strictly prohibited. name: stage-queries description: > Discovering prims on the runtime stage and inspecting their attribute schemas. Use when user asks to find prims by type, filter by attribute, list all prims, or look up attribute types before reading or writing them. license: LicenseRef-NvidiaProprietary author: NVIDIA ovrtx tags: - ovrtx - usd - queries tools: - Read - Grep
Use this skill when the user asks to find prims by type, filter by attribute, list all prims, or look up attribute types before reading or writing them.
Resolve inputs in this order: existing repository files and referenced snippets, explicit user request, then broader agent context.
1. Identify whether the caller needs all prims, prims by type, prims with required attributes, or a filtered include/exclude query. 2. Read the matching Python or C query snippet before choosing filter fields or result traversal. 3. For async queries, preserve the two-phase wait/fetch lifecycle before reading result dictionaries or C result arrays. 4. In C, resolve path and attribute IDs through the path dictionary before presenting names to users. 5. When changing code, run the stage-query docs test that owns the snippet whenever practical.
This skill has no scripts.
`stage.query` finds prims on ovstage that match a filter. A query handle can be reused by subsequent ovstage read, write, and map calls, so a typical workflow is:
1. Query to discover prims and/or their attribute schemas. 2. Decide what to read/write based on the result. 3. Reuse the query handle to read or write without re-resolving paths.
Build an `ovstage.Filter` from predicates such as `usd-prim-type` or `usd-path`. Pass interned attribute tokens through `attrs` when the query should report specific columns. The deprecated renderer query remains useful only for compatibility cases that require its OR/NOT filter shape.
> **Source:** `tests/docs/python/test_stage_query.py` snippet `doc-query-prims-basic`
> **Source:** `tests/docs/python/test_stage_query.py` snippet `doc-query-prims-by-type`
Intern requested names through `ovstage.PathDictionary`, then inspect the attribute token ids reported by the result.
> **Source:** `tests/docs/python/test_stage_query.py` snippet `doc-query-prims-with-attributes`
> **Source:** `tests/docs/python/test_stage_query.py` snippet `doc-query-require-any-exclude`
An ovstage query can be waited explicitly before calling `.result()`. Release manually created queries when they are no longer needed, or use a context manager.
> **Source:** `tests/docs/python/test_stage_query.py` snippet `doc-query-prims-async`
> **Source:** `tests/docs/c/test_stage_query.cpp` snippet `doc-query-prims-basic-c`
> **Source:** `tests/docs/c/test_stage_query.cpp` snippet `doc-query-prims-by-type-c`
> **Source:** `tests/docs/c/test_stage_query.cpp` snippet `doc-query-has-attribute-c`
> **Source:** `tests/docs/c/test_stage_query.cpp` snippet `doc-query-require-any-exclude-c`
> **Source:** `tests/docs/c/test_stage_query.cpp` snippet `doc-query-specific-empty-attributes-c`
The renderer's path dictionary resolves `ovx_primpath_t` / `ovx_token_t` handles to strings and back. It is valid for the lifetime of the renderer — no release call is required.
> **Source:** `tests/docs/c/test_stage_query.cpp` snippet `doc-path-dictionary-resolve-c`
Python ovstage code should use `ovstage.PathDictionary` to intern attribute tokens and create path lists.
| Python | C | |--------|---| | `stage.query(filter=..., attrs=...)` | `ovrtx_query_prims(renderer, &desc, &query_handle)` + `ovrtx_fetch_query_results(...)` | | `ovstage.Filter` / `ovstage.Predicate` | `OVRTX_FILTER_*` compatibility filters | | `ovstage.PathDictionary(stage)` | `ovrtx_get_path_dictionary(renderer, &pd)` |
C result shape:
ovrtx is a C and Python library for embedding Omniverse RTX sensor simulation and visualization directly into applications.
High-level overview of a typical ovrtx application lifecycle. Use when user asks how to structure an ovrtx program, what the main…
Asynchronous operation patterns including polling, timeouts, and non-blocking workflows. Use when user asks about async…
Replacing persistent ovrtx attribute bindings with reusable ovstage queries for repeated writes or maps. Use when user asks about…
Binding materials to prims at runtime. Use when user asks to assign a material, change a material, set material binding, or swap…
Available camera render outputs for Real-Time Path-Tracing (RT2) mode. Use when user asks what AOVs/render vars are available,…
Cloning USD subtrees to create copies at new paths. Use when user asks to clone, duplicate, copy a prim, or create instances of…