How spaceinventor/csh works
CSP Shell is an interactive command interpreter for CSP- and libparam-based applications. Its main workflow is to start a shell, load the default or selected init script, and run commands; users can also load APM extensions. The graph preserves the documented extension capability and sampled command areas for parameters, CSP, firmware, and memory transfers, plus parameter telemetry and metrics exporters. Some command-registration and startup details are unsampled, so only documented or source-index-supported relationships are shown.
Main entry points: param_sniffer.c Parameter sniffer · slash_apm.c APM commands · main.c Shell startup · python_loader.c Python extensions
Components 19
Shell runtime
- Shell startup
src/main.c - Environment commands
src/environment.c
Command domains
- Parameter commands
src/param_slash.c - Parameter lists
src/param_list_slash.c - CSP commands
src/slash_csp.c - Firmware operations
src/spaceboot_slash.c - Memory transfers
src/vmem_client_slash.c - Resumable transfers
src/vmem_client_slash_ftp.c
Extensions
- APM commands
src/slash_apm.c - Python extensions
src/python/python_loader.c - Directory traversal
src/walkdir.c
Telemetry and metrics
- Parameter sniffer
src/param_sniffer.c - Housekeeping sniffer
src/hk_param_sniffer.c - Known hosts
src/known_hosts.c - Prometheus exporter
src/prometheus.c - Victoria Metrics
src/victoria_metrics.c - VTS metrics
src/vts.c - Loki logging
src/loki.c
Other components
- Shell user
Connections 12
- Shell user → Shell startup: starts
- Shell startup → Environment commands: sets up
src/main.c - Shell user → APM commands: loads APMs
- APM commands → Python extensions: loads Python
src/slash_apm.c - APM commands → Directory traversal: searches files
src/slash_apm.c - Python extensions → Directory traversal: walks directories
src/python/python_loader.c - Firmware operations → Memory transfers: uploads firmware
src/spaceboot_slash.c - Parameter sniffer → Housekeeping sniffer: checks packets
src/param_sniffer.c - Parameter sniffer → Known hosts: gets host names
src/param_sniffer.c - Parameter sniffer → Prometheus exporter: uses exporter
- Parameter sniffer → Victoria Metrics: uses exporter
- Parameter sniffer → VTS metrics: records values