Skip to content

CLI Reference

The rsrf CLI is the main operator interface for repository inspection and QA.

Global options

Option Description
--version Print the RSRF version and exit
--root PATH Override the default root. By default RSRF uses RSRF_ROOT, a local repository checkout, or a cached GitHub release snapshot

Discovery commands

show-layout

Print the repository directory layout and resolved paths.

rsrf show-layout

list-sensors

List all registered sensor representations that have backing canonical artifacts.

rsrf list-sensors

list-planned-sensors

List registry-first planned sensor representations from the planning catalog.

rsrf list-planned-sensors
rsrf list-planned-sensors --catalog-path /path/to/custom_catalog.json
Option Description
--catalog-path PATH Override the default planning catalog path

list-bands

List canonical band rows for a sensor representation.

rsrf list-bands sentinel-2c_msi --variant band_average
Argument Description
sensor_unit_id Sensor identifier (positional, required)
--variant Representation variant; required when multiple variants exist

Metadata and response inspection

show-metadata

Print the canonical metadata.json sidecar for a sensor representation.

rsrf show-metadata hyperspec_example --variant metadata_band_spec
rsrf show-metadata sentinel-2c_msi --variant band_average
Argument Description
sensor_unit_id Sensor identifier (positional, required)
--variant Representation variant

show-response

Print a compact band-level response summary (sampled curve samples or band spec parameters).

rsrf show-response sentinel-2c_msi B03 --variant band_average
rsrf show-response prisma_hsi B001 --variant metadata_band_spec
Argument Description
sensor_unit_id Sensor identifier (positional, required)
band_id Band identifier (positional, required)
--variant Representation variant

Validation commands

validate-sensor

Validate a sensor representation and print the structured QA report.

rsrf validate-sensor sentinel-2c_msi --variant band_average
Argument Description
sensor_unit_id Sensor identifier (positional, required)
--variant Representation variant

export-validation

Write a validation_report.json and overview.png for a sensor representation.

rsrf export-validation hyperspec_example --variant metadata_band_spec
rsrf export-validation sentinel-2c_msi --variant band_average --output-dir /tmp/rsrf_validation
Argument Description
sensor_unit_id Sensor identifier (positional, required)
--variant Representation variant
--output-dir PATH Directory for validation artifacts; defaults to docs/sensor-notes/<sensor>/<variant>/

validate-manifest

Validate a source manifest JSON file against the typed manifest model.

rsrf validate-manifest rsrf_source_manifest_sentinel2c_v2.json
Argument Description
manifest_path Path or library filename of the manifest (positional, required)

Manifest filenames are resolved from the manifest library, so you usually do not need the full sources/manifests/official/... path.

Registry operations

show-registry-rows

Print the registry rows that would be derived from a manifest.

rsrf show-registry-rows rsrf_source_manifest_prisma_hsi_v2.json
Argument Description
manifest_path Path or library filename of the manifest (positional, required)

register-manifest

Upsert manifest-derived rows into the data/registry/ parquet tables.

rsrf register-manifest rsrf_source_manifest_prisma_hsi_v2.json
Argument Description
manifest_path Path or library filename of the manifest (positional, required)

register-planned-sensors

Upsert planned sensor rows from the planning catalog into sensors.parquet.

rsrf register-planned-sensors
rsrf register-planned-sensors --catalog-path /path/to/custom_catalog.json
Option Description
--catalog-path PATH Override the default planning catalog path

Root selection

All repository-aware commands accept --root. For installed-package workflows, the default behavior is to use a cached GitHub release snapshot for the installed version. Set RSRF_ROOT only when you want to override that default:

export RSRF_ROOT=/path/to/spectral_response_function
rsrf list-sensors

If neither --root nor RSRF_ROOT is provided, RSRF first searches upward from the current working directory for a repository root and then falls back to the cached GitHub release snapshot.