56 results available
Sign in
Skills directory

jetson-print-device-info

nvidia

·

Last changed
Hardened

This skill has been hardened by Chainguard

Last changed

This version passed the hardening gate. The skill content was retained without changes. Classified findings before hardening: 1. Classified findings closed: 0. Classified findings remaining: 1. Unclassified scanner findings remaining: 0. Review findings closed: 0. Review findings remaining: 7.


Open before hardening

1

Medium
Open after hardening

1

Medium

Expand
File
Group
Subtype
Severity
Status
BENCHMARK.md

Sensitive Data & Secret Exposure

Agent snooping

Medium
Open

1 finding


SKILL.md

jetson-print-device-info

Prints a concise summary of the Jetson device this skill runs on.

This skill is intended as a reference example for the jetson-device-skills repo and the NVIDIA-wide skills CI. It runs on the Jetson target (not the host PC) and performs read-only inspection — useful as a baseline capture before running performance tests.

Purpose

Capture a baseline snapshot of a Jetson target's software stack and power mode before running performance, regression, or compatibility tests.

When to use

  • Starting a performance run and you want a captured baseline of the device's software stack and power mode.
  • Verifying that a freshly flashed Jetson matches an expected L4T / JetPack version.

Prerequisites

  • Running on a Jetson target (not the host PC).
  • Standard CLIs available: tr, cat, uname, uptime, lsb_release (or /etc/os-release).
  • nvpmodel available for power mode (optional — skill falls back gracefully).

Inputs

None. The skill reads only from the local Jetson filesystem and standard CLIs.

Instructions

Run each step in order and print the captured values into the report shown under Output format.

  1. Capture the module model and validate it is a Jetson target — exit early otherwise:
    # Device-tree strings are null-terminated, so strip NULs before printing.
    model=$(tr -d '\0' < /proc/device-tree/model 2>/dev/null)
    case "$model" in
      *Jetson*) ;;
      *) echo "Not running on a Jetson target (model: '${model:-unknown}')"; exit 1 ;;
    esac
    echo "$model"
  2. Extract the L4T release header line — skip the rest of the file (long list of library SHAs):
    head -1 /etc/nv_tegra_release 2>/dev/null || echo "L4T release info not found"
    # Equivalent: grep -m1 '^# R' /etc/nv_tegra_release
  3. Run nvpmodel -q and join its two output lines (NV Power Mode: <name> and the mode number) onto one line. paste -sd only uses the first char of its delimiter, so use awk to insert the literal / separator:
    nvpmodel -q 2>/dev/null | awk 'NR==1{a=$0; next} {print a" / "$0}' \
      || echo "nvpmodel not available"
  4. Print the kernel version and uptime:
    uname -r
    uptime -p
  5. Print the OS version (prefer lsb_release, fall back to /etc/os-release):
    lsb_release -ds 2>/dev/null || (. /etc/os-release && echo "$PRETTY_NAME") || echo "OS version not found"

Output format

Print a short report with these sections, one line each where possible:

Model:           <device-tree model string>
L4T release:     <release header line>
Power mode:      <nvpmodel name> / <mode number>
Kernel:          <uname -r>
Uptime:          <uptime -p>
OS version:      <lsb_release / /etc/os-release output>

Examples

Example output on an Orin AGX dev kit (L4T R36 / Ubuntu 22.04):

Model:           NVIDIA Jetson AGX Orin Developer Kit
L4T release:     # R36 (release), REVISION: 3.0
Power mode:      NV Power Mode: MAXN / 0
Kernel:          5.15.136-tegra
Uptime:          up 2 hours, 14 minutes
OS version:      Ubuntu 22.04.4 LTS

Example output on an AGX Thor (L4T R39 / Ubuntu 24.04):

Model:           NVIDIA Jetson AGX Thor Developer Kit
L4T release:     # R39 (release), REVISION: 0.0
Power mode:      NV Power Mode: 120W / 1
Kernel:          6.8.0-tegra
Uptime:          up 12 minutes
OS version:      Ubuntu 24.04 LTS

Error handling

Each command falls back to a clearly labeled "... not found" / "... not available" string if the underlying file or binary is missing — the skill never errors out mid-report. If /proc/device-tree/model is missing or does not contain a Jetson string, exit early with a clear "not running on a Jetson target" message.

Limitations

  • Read-only inspection only — does not detect GPU/CPU clocks, thermal state, or per-rail power.
  • nvpmodel output format varies between L4T versions; the skill prints it verbatim rather than parsing.

Troubleshooting

  • Error: /proc/device-tree/model: No such file or directory Cause: Running on a host PC, not a Jetson target. Solution: Run the skill on the Jetson device directly (e.g. via SSH).

  • Error: nvpmodel: command not found Cause: L4T BSP not installed, or running in a minimal container without nvpmodel. Solution: Expected on non-Jetson or stripped environments — the skill prints "nvpmodel not available" and continues.

Notes

  • Read-only. Do not change power mode, install packages, or modify any files.
  • If the skill is invoked on a host PC by mistake, /proc/device-tree/model will not contain a Jetson model string — detect that and exit with a clear message rather than printing misleading info.

Install

Install with chainctl
chainctl skill install public/nvidia/jetson-print-device-info:latest
Get started with chainctl
View source

Harden your own skills

Bring Chainguard's hardening pipeline to your first-party skills — custom rulesets, automated remediation, full audit trail.

Provenance

Upstream sourcehttps://github.com/nvidia/skills
Upstream commit87053a0182e121cb4eec0b7b3a71f0d4d36cd4f1
OCI reference

skills.chainreg.biz/public/github.com/nvidia/skills/jetson-print-device-info:latest

License

Apache-2.0

Files

BENCHMARK.md

HARDENING.md

LICENSE

SKILL.md

evals/evals.json

skill-card.md

skill.oms.sig


The trusted source for open source

Talk to an expert
PrivacyTerms

Product

Chainguard ContainersChainguard LibrariesChainguard VMsChainguard OS PackagesChainguard ActionsChainguard Agent SkillsIntegrationsPricing
© 2026 Chainguard, Inc. All Rights Reserved.
Chainguard® and the Chainguard logo are registered trademarks of Chainguard, Inc. in the United States and/or other countries.
The other respective trademarks mentioned on this page are owned by the respective companies and use of them does not imply any affiliation or endorsement.