Define, validate, run, and log multi-step BioLM protocol workflows.
Protocols chain model calls and data transforms in YAML; use these commands to scaffold files, check schema compliance, inspect definitions, and send results to MLflow.
Usage
biolm protocol [OPTIONS] COMMAND [ARGS]...
biolm protocol cancel
Request cancellation of protocol RUN_ID.
Usage
biolm protocol cancel [OPTIONS] RUN_ID
Options
- --format <output_format>
Output format.
- Default:
'table'- Options:
table | json
Arguments
- RUN_ID
Required argument
biolm protocol download
Download result artifacts for successful protocol RUN_ID.
Usage
biolm protocol download [OPTIONS] RUN_ID
Options
- --output-dir <output_dir>
Directory for the downloaded zip.
- Default:
'.'
- --file-type <file_type>
- Default:
'csv'- Options:
csv | jsonl
- --overwrite
Replace an existing download.
Arguments
- RUN_ID
Required argument
biolm protocol init
Create a new protocol YAML file from a blank template or bundled example.
Generated files can be validated immediately with biolm protocol validate.
Usage
biolm protocol init [OPTIONS] [FILENAME]
Options
- -o, --output <output>
Output file path (default: protocol.yaml)
- -e, --example <example>
Use an example template
- --list-examples
List available example templates
- -f, --force
Overwrite existing file
- -i, --interactive
Interactive mode to select example
Arguments
- FILENAME
Optional argument
biolm protocol list
List protocols registered on the BioLM platform.
Usage
biolm protocol list [OPTIONS]
Options
- --search <search>
Filter protocols by name or slug.
- --page <page>
- Default:
1
- --page-size <page_size>
- Default:
20
- --format <output_format>
Output format.
- Default:
'table'- Options:
table | json
biolm protocol log
Log protocol run results to MLflow using the protocol outputs configuration.
Creates or updates an experiment at account/workspace/protocol and records metrics,
parameters, and artifacts from a results file.
Usage
biolm protocol log [OPTIONS] RESULTS
Options
- --outputs <outputs>
Outputs config YAML or protocol YAML file
- --account <account>
Required Account name (experiment path: account/workspace/protocol)
- --workspace <workspace>
Required Workspace name (experiment path: account/workspace/protocol)
- --protocol <protocol_slug>
Required Protocol name/slug (experiment path: account/workspace/protocol)
- --dry-run
Prepare data without logging to MLflow
- --mlflow-uri <mlflow_uri>
MLflow tracking URI
- --aggregate-over <aggregate_over>
Compute aggregates over selected rows or all rows
- Options:
selected | all
- --protocol-name <protocol_name>
Protocol display name for metadata (default: from protocol YAML)
- --protocol-version <protocol_version>
Protocol version for metadata
Arguments
- RESULTS
Required argument
biolm protocol results
Show or save results for protocol RUN_ID.
Usage
biolm protocol results [OPTIONS] RUN_ID
Options
- --output <output>
Write the full run detail as JSON instead of printing it.
- --format <output_format>
Terminal output format.
- Default:
'json'- Options:
table | json
Arguments
- RUN_ID
Required argument
biolm protocol run
Submit a run of registered protocol SLUG.
Usage
biolm protocol run [OPTIONS] SLUG
Options
- -i, --inputs <inputs_file>
JSON object containing protocol inputs. Use ‘-’ for stdin.
- --version <version>
Protocol version.
- --name <run_name>
Human-readable run name.
- --environment-id <environment_id>
Environment ID to attribute the run to.
- --wait
Wait for completion and print the full run result.
- --timeout <timeout>
Total wait deadline in seconds.
- Default:
3600.0
- --poll-interval <poll_interval>
REST fallback polling interval in seconds.
- Default:
5.0
- --format <output_format>
Output format.
- Default:
'table'- Options:
table | json
Arguments
- SLUG
Required argument
biolm protocol run local
Execute a protocol YAML file locally via the pipeline runtime.
Requires biolm[pipeline]. Validates the protocol, compiles to a DataPipeline, runs tasks, and prints a summary (or JSON records with –json).
Usage
biolm protocol run-local [OPTIONS] PROTOCOL_FILE
Options
- --input <input_pairs>
Input key=value (value parsed as JSON when possible)
- --json
Output results as JSON records
- --output-dir <output_dir>
Pipeline output directory
Arguments
- PROTOCOL_FILE
Required argument
biolm protocol show
Show a formatted report for a protocol from a local YAML file or platform ID.
Displays tasks, dependencies, inputs/outputs, and configuration in a readable layout.
Usage
biolm protocol show [OPTIONS] [PROTOCOL_SOURCE]
Arguments
- PROTOCOL_SOURCE
Optional argument
biolm protocol status
Show a current progress snapshot for protocol RUN_ID.
Usage
biolm protocol status [OPTIONS] RUN_ID
Options
- --format <output_format>
Output format.
- Default:
'table'- Options:
table | json
Arguments
- RUN_ID
Required argument
biolm protocol validate
Validate a protocol YAML file against the JSON schema and internal rules.
Checks YAML syntax, task references, circular dependencies, and template expressions.
Usage
biolm protocol validate [OPTIONS] PROTOCOL_FILE
Options
- --json
Output results in JSON format
Arguments
- PROTOCOL_FILE
Required argument
biolm protocol wait
Wait for protocol RUN_ID and print its final detail.
Usage
biolm protocol wait [OPTIONS] RUN_ID
Options
- --timeout <timeout>
Total wait deadline in seconds.
- Default:
3600.0
- --poll-interval <poll_interval>
REST fallback polling interval in seconds.
- Default:
5.0
- --format <output_format>
Output format.
- Default:
'table'- Options:
table | json
Arguments
- RUN_ID
Required argument