Skip to main content

CLI Reference

The repx command-line interface provides experiment management, execution, visualization, and debugging capabilities.

Synopsis​

repx [OPTIONS] <COMMAND> [ARGS]

Use repx --help-all to print help for all commands and subcommands recursively.

Global Options​

OptionShortDescription
--lab <PATH>Lab directory path (default: ./result)
--verbose-vIncrease log verbosity (repeatable: -v, -vv, -vvv)
--resources <PATH>Resource configuration file path
--target <NAME>Execution target from config.toml
--scheduler <TYPE>Override scheduler: local, slurm
--help-allPrint help for all commands recursively

Commands​

repx run​

Execute one or more runs or individual jobs.

repx run [RUN_OR_JOB_ID...] [OPTIONS]

Accepts multiple run names or job IDs. If none are specified, all runs in the Lab are executed.

OptionShortDescription
--jobs <N>-jMaximum parallel jobs
--mem <SIZE>Override available memory for the local scheduler (e.g., 64G, 128G). By default, system RAM is detected automatically.
--continue-on-failureContinue executing independent jobs when some fail. All failures are reported at the end.

Exit Codes:

CodeMeaning
0All jobs completed successfully
1One or more jobs failed
2Configuration or validation error

Examples:

# Execute a single run
repx run simulation --lab ./result -j 4

# Execute multiple runs
repx run training validation

# Execute a specific job by ID
repx run abc123def456

# Continue despite failures
repx run simulation --continue-on-failure

repx list​

Inspect runs, jobs, dependencies, and groups in the Lab.

repx list <ENTITY> [ARGS] [OPTIONS]

repx list runs​

List all runs defined in the Lab, or show details for a specific run.

repx list runs [RUN_NAME]

repx list jobs​

List all jobs, optionally filtered by run, stage, or status.

repx list jobs [RUN_NAME] [OPTIONS]
OptionShortDescription
--stage <NAME>-sFilter by stage name (substring match)
--status <STATUS>Filter by job status (repeatable). Values: succeeded, failed, pending, running, queued, blocked
--output-pathsShow output directory paths
--param <KEY>-pShow effective parameter values (repeatable for multiple keys)
--group-by-stage-gGroup output by stage name

When using --status, the global --target option specifies which target to check for job statuses (defaults to local).

Examples:

# List all jobs
repx list jobs

# List jobs in a specific run
repx list jobs simulation

# Filter by stage and show parameters
repx list jobs simulation -s train -p seed -p learning_rate

# Show output paths grouped by stage
repx list jobs --output-paths --group-by-stage

# List failed jobs on the default (local) target
repx list jobs --status failed

# List failed and blocked jobs
repx list jobs --status failed --status blocked

# List failed jobs on a specific target
repx --target hpc list jobs --status failed

# Combine stage and status filters
repx list jobs -s preprocess --status failed

repx list deps​

Show dependencies for a specific job (alias: dependencies).

repx list deps <JOB_ID>

repx list groups​

List all run groups, or show runs in a specific group.

repx list groups [GROUP_NAME]

repx show​

Inspect detailed job information and output artifacts.

repx show <ENTITY> <JOB_ID> [ARGS]

repx show job​

Display comprehensive information about a job: name, run, status, stage type, parameters, resource hints, inputs, outputs, file paths, log locations, and output file listing with sizes.

repx show job <JOB_ID>

repx show output​

View the contents of a job's output files. Without a path argument, lists all output files. With a path, displays the file contents or directory listing.

repx show output <JOB_ID> [PATH]

Examples:

# Show job details
repx show job abc123def456

# List all output files for a job
repx show output abc123def456

# Display a specific output file
repx show output abc123def456 results.csv

repx tui​

Launch the terminal user interface for interactive job monitoring.

repx tui [OPTIONS]

The TUI provides real-time job status, log streaming, resource visualization, and interactive job management. See TUI Reference for keybinding details.

repx viz​

Generate experiment topology visualization. Requires Graphviz to be installed.

repx viz [OPTIONS]
OptionShortDescription
--output <PATH>-oOutput file path (default: topology)
--format <FMT>Output format: svg, png, pdf, dot

repx debug-run​

Execute a job in debug mode with an optional interactive shell. The job environment is fully initialized, enabling inspection of inputs, environment variables, and dependency closures.

repx debug-run <JOB_ID> [OPTIONS]
OptionShortDescription
--command <CMD>-cCommand to execute (default: interactive shell)

repx trace-params​

Display effective parameter values and their sources for a job, tracing inheritance through the dependency graph.

repx trace-params [JOB_ID]

repx log​

View logs for a job.

repx log <JOB_ID> [OPTIONS]
OptionShortDescription
--lines <N>-nNumber of lines to show (default: 50)
--stderrShow stderr instead of stdout
--follow-fFollow log output (like tail -f)

By default, repx log shows stdout. For SLURM jobs, it auto-detects the combined slurm output file.

Examples:

# Show last 50 lines of stdout
repx log abc123def456

# Show last 100 lines of stderr
repx log abc123def456 -n 100 --stderr

# Follow log output
repx log abc123def456 -f

# Job ID prefix matching
repx log abc123

repx gc​

Run garbage collection or manage GC roots. When called with no subcommand, removes stale artifacts from the output store. Prompts for confirmation before deleting and prints a summary of freed space afterwards.

repx gc [--target <NAME>] [--dry-run] [--yes] [--pinned-only]
OptionDescription
--target <NAME>Target to operate on (global, applies to all subcommands)
--dry-runPreview what would be deleted without actually deleting anything
--yes, -ySkip the confirmation prompt
--pinned-onlyRemove all auto GC roots before collecting, keeping only explicitly pinned labs

repx gc list​

List all GC roots (auto and pinned) on a target. Shows kind, name, lab hash, and project ID for each root.

repx gc list [--target <NAME>] [--sizes] [--kind <KIND>] [--project <ID>]
OptionDescription
--sizesCompute and display disk usage for each root
--kind <KIND>Filter roots by kind (auto or pinned)
--project <ID>Filter auto roots by project ID (substring match)

repx gc status​

Check if the current lab is pinned on a target.

repx gc status [--target <NAME>]

Reports whether the lab is pinned (and the pin name), plus how many auto roots reference it.

repx gc pin​

Pin a lab to prevent its artifacts from being garbage collected.

repx gc pin [LAB_HASH] [--name <NAME>] [--target <NAME>]
Argument/OptionDescription
LAB_HASHLab content hash to pin. Defaults to the current lab.
--name <NAME>Name for the pinned root. Defaults to the lab hash.

repx gc unpin​

Remove a pinned GC root.

repx gc unpin <NAME> [--target <NAME>]
ArgumentDescription
NAMEName of the pinned root to remove.

repx completions​

Generate shell completion scripts.

repx completions --shell <SHELL>

Supported shells: bash, zsh, fish, elvish, powershell.

Example:

# Generate bash completions
repx completions --shell bash > ~/.local/share/bash-completion/completions/repx

# Generate zsh completions
repx completions --shell zsh > ~/.zfunc/_repx

Environment Variables​

VariableDescription
REPX_LOG_LEVELLog verbosity: error, warn, info, debug, trace
XDG_CONFIG_HOMEConfiguration directory base (default: ~/.config)
XDG_CACHE_HOMECache directory base (default: ~/.cache)

Configuration Files​

FileLocationPurpose
config.toml$XDG_CONFIG_HOME/repx/Target and global settings
resources.tomlWorking directory or configSLURM resource mappings

Examples​

Execute a run locally with limited concurrency:

repx run simulation --lab ./result -j 4

Submit to a remote SLURM cluster:

repx run training --target cluster --resources gpu-config.toml

Debug a failed job:

repx debug-run abc123-stage-preprocess

Inspect job details:

repx show job abc123-stage-preprocess

List jobs with specific parameters:

repx list jobs simulation -s train -p seed -p model --group-by-stage

List failed jobs on a remote target:

repx --target cluster list jobs --status failed --status blocked

Generate SVG topology diagram:

repx viz --format svg --output experiment.svg