CLI Reference¶
3lc¶
3LC Command Line Interface
Usage
3lc [OPTIONS] COMMAND [ARGS]...
Options
- -v, --verbose¶
Increase verbosity level. Include multiple times for more detail (e.g., -vvv).
- --config-file <config_file>¶
Specify the config file path, if not set will resort to the default locations.
- --no-config-file¶
Do not load any config file, only load configuration from command line and environment variables.
- -V, --version¶
Print the version information and exit.
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
Documentation: https://docs.3lc.ai · Version: 3.3
config¶
Inspect and manage 3LC configuration. 3lc config show displays current settings (and metadata, with –metadata or a positional option key); 3lc config validate checks options; 3lc config project-root sets the project root. To save the current configuration to a file, redirect 3lc config show -f yaml to the desired path.
Usage
3lc config [OPTIONS] COMMAND [ARGS]...
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
path¶
Print the path to the 3LC config file.
By default, prints the user-tier config file currently loaded, or the
default path it would go to if no user-tier file is loaded yet. The
output is a single line, friendly for scripting (cd $(3lc config path)).
Pass --all to list every loaded config file with its tier. Pass
--detail to also print how the location was resolved.
Usage
3lc config path [OPTIONS]
Options
- --all¶
List every loaded config file with its tier (in priority order).
- --detail¶
Also print how the path was resolved (source tier, env var, platform default).
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
project-root¶
Get or set the global project root directory.
Usage
3lc config project-root [OPTIONS] [PATH]
Options
- --quiet¶
Don’t output doc strings when creating config file.
- --detail¶
Include source info comments for non-default values.
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
Arguments
- PATH¶
Optional argument
show¶
Show 3LC configuration.
With no arguments, prints a table of current values. Pass --metadata
for the option catalog instead, or -f yaml for a YAML document. With
a positional TARGET argument, prints the full view for that option
or category — metadata plus current value and provenance.
Usage
3lc config show [OPTIONS] [TARGET]
Options
- -f, --format <format>¶
Output format (table list or YAML document).
- Options:
list | yaml
- --detail¶
Include source info / per-option provenance.
- --metadata¶
Show option catalog (description, default, env var) instead of live values. No effect when a positional target is given (target view always includes metadata).
- --quiet¶
Don’t output doc strings in YAML comments (only applies to yaml format).
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
Arguments
- TARGET¶
Optional argument
validate¶
Validate the current configuration.
Usage
3lc config validate [OPTIONS]
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
export¶
Export a table to a file.
Exporter-specific arguments are exposed as options prefixed by the format
name (e.g. –coco-indent, –yolo-split). Run 3lc exporters list to see
all registered formats.
Usage
3lc export [OPTIONS] TABLE_PATH OUTPUT_PATH
Options
- --format <format>¶
The format of the output file. Will be inferred from table content and output-path extension.
- --weight-threshold <weight_threshold>¶
Minimum row weight to include. Rows with weight < threshold are excluded. Ignored if the table has no weights column.
- Default:
0.0
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
Arguments
- TABLE_PATH¶
Required argument
- OUTPUT_PATH¶
Required argument
exporters¶
Inspect and manage registered exporters.
Usage
3lc exporters [OPTIONS] COMMAND [ARGS]...
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
list¶
List registered exporters.
Usage
3lc exporters list [OPTIONS]
Options
- -f, --format <format>¶
Output format.
- Options:
table | json
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
license¶
Manage 3LC license. Use subcommands to check the current license status or deactivate an active license.
Usage
3lc license [OPTIONS] COMMAND [ARGS]...
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
deactivate¶
Deactivate the current license.
Usage
3lc license deactivate [OPTIONS]
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
status¶
Check the current license status.
Usage
3lc license status [OPTIONS]
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
login¶
Log into 3LC with an API key.
This command stores your API key for authentication with 3LC services. If no key is provided, it will search for an existing key or prompt for input.
Usage
3lc login [OPTIONS] [API_KEY]
Options
- --no-verify¶
Do not verify the API key with 3LC.
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
Arguments
- API_KEY¶
Optional argument
sample-types¶
Inspect registered sample types.
Usage
3lc sample-types [OPTIONS] COMMAND [ARGS]...
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
list¶
List registered sample types.
Usage
3lc sample-types list [OPTIONS]
Options
- -f, --format <format>¶
Output format.
- Options:
table | json
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
service¶
Start the 3LC Object Service.
The Object Service provides the backend API for the 3LC Dashboard, enabling data exploration, model debugging, and dataset management.
Usage
3lc service [OPTIONS]
Options
- --host <host>¶
The host address to bind to.
- --port <port>¶
The port to bind to.
- --no-public-examples¶
Do not include the 3LC public examples in the service.
- --dashboard¶
Automatically open a browser to the Dashboard.
- --ngrok¶
Set up a public URL using NGrok. Requires NGROK_TOKEN environment variable.
- --tui, --no-tui¶
Show a full screen terminal application for the Object Service.
- --cache-size <cache_size>¶
In-memory cache size in bytes.
- --cache-timeout <cache_timeout>¶
Cache timeout in seconds.
- --watch-local-folders¶
Watch local folders for changes.
- --auth-secret <auth_secret>¶
Authentication secret (required with license key).
- --license <license_key>¶
Specify license or license file path.
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
thumbnails¶
Manage the downsampled copies of images that a dataset publishes.
The 3LC Dashboard draws table cells at a fraction of the size of the images behind them, so a dataset or run can publish small copies of its images and have the object service hand those out instead of transferring full-resolution originals. These commands produce them.
Thumbnails are published beside what owns the table that shows the images - the dataset for its tables, the run for its metrics tables - so they are removed with it, carried when it is copied or shared, and readable by exactly whoever can read the images.
All reading and writing goes through the configured URL adapters, so a dataset and its images may each live anywhere 3LC can reach.
Usage
3lc thumbnails [OPTIONS] COMMAND [ARGS]...
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
create¶
Publish thumbnails for the images of each table or run in TABLES.
Point it at a table and everything is derived - which images, and where their thumbnails belong:
3lc thumbnails create “<root>/My Project/datasets/My Dataset/tables/train”
Thumbnails go beside that dataset’s own data, so anyone who can read the dataset gets them and they are removed with it. Naming several tables of the same dataset adds each to what it publishes.
A run URL stands for every metrics table the run records, and their thumbnails go beside the run’s own data for the same reasons:
3lc thumbnails create “<root>/My Project/runs/My Run”
Every size the object service may ask for is generated, since which one it asks for is its own decision. Thumbnails that are already up to date are skipped unless –overwrite is given.
Usage
3lc thumbnails create [OPTIONS] TABLES...
Options
- --overwrite¶
Regenerate thumbnails that already exist.
- --dry-run¶
Report what would be written without writing anything.
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
Arguments
- TABLES¶
Required argument(s)
url-adapters¶
Inspect and manage registered URL adapters.
Usage
3lc url-adapters [OPTIONS] COMMAND [ARGS]...
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
list¶
List registered URL adapters.
Usage
3lc url-adapters list [OPTIONS]
Options
- -f, --format <format>¶
Output format.
- Options:
table | json
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
version¶
Print the version information and exit.
Usage
3lc version [OPTIONS]
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
watch¶
Start a watch service that monitors folders for changes.
All folders are treated as project-root folders with hierarchical timestamp management. When changes are detected, appropriate timestamp files are updated.
WARNING: Avoid monitoring mounted folders (e.g., FUSE mounts, cloud storage mounts) as they may cause performance issues or unexpected behavior.
Usage
3lc watch [OPTIONS] FOLDERS...
Options
- --project-root-url <URL>¶
Location for reading and writing 3LC project data. [env var: TLC_PROJECT_ROOT_URL]
- --license <LICENSE>¶
Specify license or license file. [env var: TLC_LICENSE]
- --license-server <URL>¶
Base URL of a customer-local license server (LexFloatServer). [env var: TLC_LICENSE_SERVER]
- --api-key <api_key>¶
API key for cloud/SaaS authentication. [env var: TLC_API_KEY]
- --display-progress¶
Whether to display progress bars. [env var: TLC_DISPLAY_PROGRESS]
- --log-level <LEVEL>¶
Log level for the 3LC logger. [env var: TLC_LOG_LEVEL]
- --log-file <PATH>¶
Log file path for the 3LC logger. [env var: TLC_LOG_FILE]
Arguments
- FOLDERS¶
Required argument(s)