CLI Overview¶
The genelab CLI is a thin dispatcher over registries and task configs. It does not own task logic;
it discovers extensions, resolves a registered object, applies overrides, and calls the task or
runner.
Command model¶
| Area | Commands |
|---|---|
| Registry | list robots\|envs\|tasks, info NAME, asset list\|info\|download\|purge |
| Runtime | play TASK, train TASK, eval TASK CHECKPOINT, export TASK CHECKPOINT, benchmark --suite ... |
| Project | project new NAME |
| Utilities | cache, prof open |
Running genelab with no subcommand prints a landing page with quickstart commands and a count of
registered robots / envs / tasks.
Global options¶
| Option | Meaning |
|---|---|
--version |
Print the version and exit. |
--import MODULE |
Import an extension module before dispatch; repeatable. |
--no-entry-points |
Skip extensions from the genelab.extensions entry-point group. |
Extension loading order¶
Every command that needs registry data loads extensions in this order:
- Bundled asset zoo robots through
load_bundled_asset_zoo(). - Installed
genelab.extensionsentry points, unless--no-entry-pointsis set. - Repeated explicit
--import MODULEvalues.
Use entry points for daily work and --import for local experiments.
Overrides¶
Runtime commands accept unknown --a.b.c VALUE options after the task id. The CLI forwards them to
apply_overrides:
Use genelab info TASK_ID to list valid paths.
Interactive mode¶
When stdin is a TTY, the CLI can prompt for a missing task id, unknown registry name, invalid
--agent, or unknown override path. In CI and scripts it raises the same errors directly.