agentleFS
NVIDIAKnown publisherNVIDIA/simready-foundation/.agents/skills/simready-foundation-create-package/SKILL.md

simready-foundation-create-package

Skill156 starsChanged 52 days agoApache-2.0View on GitHub

Use for creating SimReady packages with package sample scripts, WRAPP setup, root USD inputs, validation phases, and fallback modes.

The file

Show its rules and text

We split this skill into the rules it gives an agent

17 rules. About 0 are common, 8 are distinctive, and 9 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈8

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 9

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when a user wants to turn a folder of USD assets into a SimReady package with the bundled package sample workflow.

    line 17
  2. Distinctive:

    Before running packaging commands, confirm:

    line 23
  3. Distinctive:

    No OpenAI API key is required.

    line 32
  4. Distinctive:

    Use this checklist from the repository root:

    line 50
  5. Very specific:

    Use the bundled scripts in skills/simready-foundation-create-package/assets/scripts/.

    line 52
  6. Very specific:

    If .venv/ already exists, activate it and verify import simready.validate and import wrapp before rebuilding it.

    line 54
  7. Very specific:

    If a virtual environment is needed, run ./setup_venv.sh --wrapp-wheel <path-to-wheel>.

    line 55
  8. Distinctive:

    Prefer the default flow for publication:

    line 57
  9. Very specific:

    Use --only-pre-validation --source <folder> --root-usd <path> when the user is iterating on source-folder conformance before building.

    line 62
  10. Very specific:

    Use --only-post-validation --package-def <path-to-com.nvidia.simready.packaging.json> to validate an already-created package.

    line 63
  11. Very specific:

    Use --no-wrapp only for a minimal package skeleton or when WRAPP cannot be installed.

    line 66
  12. Very specific:

    Create error about an existing root .wrapp marker: ask whether to reuse that package name or remove the marker.

    line 101
  13. Very specific:

    Create error about nested packages: ask the user to remove nested .wrapp files before retrying.

    line 102
  14. Distinctive:

    Do not rewrite the user's USD files automatically while packaging.

    line 108
  15. Distinctive:

    Do not pick the asset license for the user.

    line 109
  16. Very specific:

    Treat assets/scripts/ as the skill-owned copy of the package workflow.

    line 110
  17. Distinctive:

    Stop after two setup retries and summarize the blocker with the exact command that failed.

    line 112

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

SimReady Create Package

Purpose

Use this skill when a user wants to turn a folder of USD assets into a SimReady package with the bundled package sample workflow.

The skill guides assets/scripts/create_simready_package.py, which runs pre-validation, package creation, and post-validation. The helper package under assets/scripts/sr_pkg_sample/ is bundled with the skill so the workflow can run without reaching back into nv_core/package_sample/.

Prerequisites

Before running packaging commands, confirm:

  • the repository root is simready_foundations
  • Python 3.10 or newer is available in the shell that will run the sample
  • assets/scripts/setup_venv.sh can be run from Git Bash, WSL, or another bash-compatible shell
  • the user has the WRAPP wheel omni_wrapp_minimal-2.2.0-py3-none-any.whl, or has access to an internal index that provides it
  • the source folder contains every USD file and referenced asset that should go into the package
  • the user provides the license that applies to the asset; do not choose a license for them

No OpenAI API key is required.

Inputs

Collect or infer:

InputRequirement
namePackage name, lowercase and without spaces, such as apple_a01.
versionPackage version, such as 1.0.0.
licenseSPDX identifier or LicenseRef-* expression chosen by the user.
sourceFolder that contains the root USDs and all referenced files.
repoWRAPP repository path or file:// URL for the full WRAPP flow.
root_usdRelative path inside source for each root USD, repeated with --root-usd.
modeFull flow, pre-validation only, post-validation only, skip phase, or no-WRAPP fallback.

Instructions

Use this checklist from the repository root:

  1. Use the bundled scripts in skills/simready-foundation-create-package/assets/scripts/.
  2. Change into skills/simready-foundation-create-package/assets/scripts/ before running setup or package commands.
  3. If .venv/ already exists, activate it and verify import simready.validate and import wrapp before rebuilding it.
  4. If a virtual environment is needed, run ./setup_venv.sh --wrapp-wheel <path-to-wheel>. Add --extra-index <url> only when the user has a package index that provides missing dependencies.
  5. Activate the virtual environment for every packaging command. If running from outside the repository root, set SIMREADY_FOUNDATIONS_ROOT to the repository root so the bundled helper can find nv_core/sr_specs/docs.
  6. Prefer the default flow for publication:
    python create_simready_package.py <name> <version> <license> <source> <repo> \
        --root-usd <relative/root.usd>
  7. Use --only-pre-validation --source <folder> --root-usd <path> when the user is iterating on source-folder conformance before building.
  8. Use --only-post-validation --package-def <path-to-com.nvidia.simready.packaging.json> to validate an already-created package.
  9. Suggest --skip-pre-validation only after a successful pre-validation against the same unchanged source folder.
  10. Suggest --skip-post-validation only when the user intentionally wants to validate the created package later.
  11. Use --no-wrapp only for a minimal package skeleton or when WRAPP cannot be installed. Tell the user it is not suitable for publication and may fail BOM or introspection checks.
  12. Inspect the command return code. Treat stdout as evidence, not proof of success.

Examples

Full package creation:

cd skills/simready-foundation-create-package/assets/scripts
source .venv/bin/activate
python create_simready_package.py apple_a01 1.0.0 Apache-2.0 \
    ~/my_asset/simready_usd ~/my_repo \
    --root-usd sm_apple_a01_01.usd

Pre-validation only while repairing source-folder paths:

python create_simready_package.py --only-pre-validation \
    --source ~/my_asset/simready_usd \
    --root-usd sm_apple_a01_01.usd

No-WRAPP fallback for a local experiment:

python create_simready_package.py apple_a01 1.0.0 MIT \
    ~/my_asset/simready_usd \
    --no-wrapp --skip-post-validation

Failure Handling

  • Pre-validation FET_031_STANDARD or AA.001: report the offending anchored-path failure and ask before editing USD references.
  • Pre-validation usage error: collect the missing --root-usd, missing --source, or invalid folder path.
  • Create error about an existing root .wrapp marker: ask whether to reuse that package name or remove the marker.
  • Create error about nested packages: ask the user to remove nested .wrapp files before retrying.
  • Post-validation FET_030_STANDARD: cite the failing package-core requirement and keep the generated package for inspection.
  • Post-validation FET_032_STANDARD: check whether BOM metadata was written and rerun the full flow if the source did not change.

Policies

  • Do not rewrite the user's USD files automatically while packaging.
  • Do not pick the asset license for the user.
  • Treat assets/scripts/ as the skill-owned copy of the package workflow.
  • Preserve generated reports and metadata unless the user asks for cleanup.
  • Stop after two setup retries and summarize the blocker with the exact command that failed.

Limitations

  • This skill does not replace profile-specific conformance skills for repairing USD content.
  • The WRAPP setup depends on user-provided packages, credentials, or indexes that may not be available in the current shell.
  • The no-WRAPP fallback creates a lightweight package definition and is expected to miss full publication evidence.

Troubleshooting

  • Error: Could not find a version that satisfies the requirement. Solution: verify access to https://pypi.nvidia.com/, then add the user's private index or local wheels.
  • Error: no root USD files specified. Solution: add one or more --root-usd paths relative to the source folder, or use --no-usd-files only for intentional non-USD packages.
  • Error: package source changed after pre-validation. Solution: rerun the default flow so conformance metadata hashes match the current source.
  • Error: WRAPP local backend is disabled. Solution: reinstall the WRAPP wheel with the [local] extra through setup_venv.sh.

Resources

  • assets/scripts/create_simready_package.py is the command-line entrypoint.
  • assets/scripts/setup_venv.sh creates the sample virtual environment.
  • assets/scripts/requirements-package-sample.txt lists the package workflow dependencies.
  • assets/scripts/sr_pkg_sample/ contains the Python API for custom tooling integrations.

Summary Format

Report:

FieldMeaning
modeFull flow, pre-validation only, post-validation only, skip phase, or no-WRAPP fallback.
sourceSource folder that was packaged or checked.
package_namePackage name and version.
root_usdsRoot USD paths supplied to the script.
repoTarget WRAPP repository, when used.
first_failing_phaseFirst failed phase, or none.
reportsValidation report paths, metadata paths, or package definition path.
next_stepRepair source, rerun packaging, publish, or inspect generated evidence.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.