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)