Command-line interface
Use Ellf to navigate the CLI for you
If you’ve connected Ellf to your coding assistant, it will know the CLI in detail and will be able to use the right commands and navigate the app for you.
ellf
This is the main Ellf command line interface you can use to interact with the application and cluster and perform all actions you can also perform in the UI. To see all available commands or subcommands, you can use the --help flag.
$pip installellf-cli
| Argument | Type | Description |
|---|---|---|
--help | bool | Show subcommands, available arguments and more info. |
--version | bool | Display the version of the CLI package. |
Available commands
| actions | Interact with actions on the cluster. |
| agents | Interact with agents on the cluster. |
| assets | Interact with assets on the cluster. |
| clusters | Interact with your cluster. |
| config | Configure the CLI. |
| datasets | View and manage Prodigy datasets on the cluster. |
| export | Save the state of the current app JSON file. |
| files | Manage files on the cluster. |
| import | Populate Ellf with data from a JSON file. |
| info | Print information about the CLI. |
| infra | Manage and deploy Ellf cluster infrastructure. |
| jobs | Run jobs directly on the cluster. |
| login | Log in to your Ellf account. |
| packages | View and manage Python packages on the cluster. |
| paths | View and manage path aliases on the cluster. |
| plans | View and manage project plans. |
| projects | View and manage Ellf projects. |
| publish | Publish code and data to the cluster. |
| recipes | View and manage task, action and agent recipe packages on the cluster. |
| secrets | View and manage named pointers to secrets on the cluster. |
| tasks | Interact with annotation tasks on the cluster. |
| todo | View and manage in-app chat handover to coding assistant. |
| version | Show version info for the CLI and running services. |
ellf actions
Interact with actions on the cluster.
$ellfactions--helpellf actions list command
List the actions on the cluster. By default, this includes their ID, name and current state, e.g. created or completed.
$ellfactionslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, is_running, is_startable, is_stoppable, broker_id, name, project_id, job_type, state, plan, cli_command, stats | ["id", "name", "state", "project_name"] |
--json | bool | Output the result as JSON. | False |
ellf actions info command
Print information about an action on the cluster.
$ellfactionsinfoname_or_idproject_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the action | |
project_id | UUID | ID of action’s project (or the last project if not set) | None |
cluster_id | UUID | ID of the cluster to search for action name (or the last cluster if not set) | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, is_running, is_startable, is_stoppable, broker_id, name, project_id, job_type, state, plan, cli_command, stats, recipe_name, recipe_title, evaluation, project_name, error, executions, last_execution_id, nomad_index, url_logs, url, related_tasks, created_by_user | None |
--json | bool | Output the result as JSON. | False |
ellf actions create command
Create a new action. The available action recipes are fetched from your cluster and are added as dynamic subcommands. You can see more details and recipe-specific arguments by calling the subcommand with --help.
$ellfactionscreaterecipename...--exists-ok--no-start--no-wait
--help| Argument | Type | Description | Default |
|---|---|---|---|
recipe | str | Name of action recipe to create. | |
name | str | Human-readable name of the action to create. | |
| … | Recipe-specific arguments for action. | ||
--exists-ok | bool | Don’t raise an error if it exists. | False |
--no-start | bool | Don’t start action after creation. | False |
--no-wait | bool | Don’t wait for the action to be ready after starting. | False |
--help | bool | View available arguments for the recipe. | False |
ellf actions delete command
Delete an action by name or ID.
$ellfactionsdeletename_or_idproject_idcluster_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the action. | |
project_id | UUID | ID of action’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for action name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf actions start command
Start an action on the cluster.
$ellfactionsstartname_or_idproject_idcluster_id--worker-class--no-wait
--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the action (or the last action if not set). | None |
project_id | UUID | ID of action’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for action name (or the last cluster if not set). | None |
--worker-class | str | Worker class to launch the action on, defined when launching your cluster. Generally one of: medium, large, gpu. | None |
--no-wait | bool | Don’t wait for the action to be ready after starting. | False |
--json | bool | Output the result as JSON. | False |
ellf actions stop command
Stop an action on the cluster.
$ellfactionsstopname_or_idproject_idcluster_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the action (or the last action if not set). | None |
project_id | UUID | ID of action’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for action name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf actions logs command
Get logs for an action on the cluster.
$ellfactionslogsname_or_idproject_idcluster_id--json--errors
--query
| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the action (or the last action if not set). | None |
project_id | UUID | ID of action’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for action name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
--errors | bool | Show structured error information instead of full logs. | False |
--query | str | Filter log lines matching this text (requires Loki). | None |
ellf agents
Interact with agents on the cluster.
$ellfagents--helpellf agents list command
List the agents on the cluster. By default, this includes their ID, name and current state, e.g. created or completed.
$ellfagentslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, is_running, is_startable, is_stoppable, broker_id, name, project_id, job_type, state, plan, cli_command, stats | ["id", "name", "state", "project_name"] |
--json | bool | Output the result as JSON. | False |
ellf agents info command
Print information about an agent on the cluster.
$ellfagentsinfoname_or_idproject_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the agent | |
project_id | UUID | ID of agent’s project (or the last project if not set) | None |
cluster_id | UUID | ID of the cluster to search for agent name (or the last cluster if not set) | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, is_running, is_startable, is_stoppable, broker_id, name, project_id, job_type, state, plan, cli_command, stats, recipe_name, recipe_title, evaluation, project_name, error, executions, last_execution_id, nomad_index, url_logs, url, related_tasks, created_by_user | None |
--json | bool | Output the result as JSON. | False |
ellf agents create command
Create a new agent. The available agent recipes are fetched from your cluster and are added as dynamic subcommands. You can see more details and recipe-specific arguments by calling the subcommand with --help.
$ellfagentscreaterecipename...--exists-ok--no-start--no-wait
--help| Argument | Type | Description | Default |
|---|---|---|---|
recipe | str | Name of agent recipe to create. | |
name | str | Human-readable name of the agent to create. | |
| … | Recipe-specific arguments for agent. | ||
--exists-ok | bool | Don’t raise an error if it exists. | False |
--no-start | bool | Don’t start agent after creation. | False |
--no-wait | bool | Don’t wait for the agent to be ready after starting. | False |
--help | bool | View available arguments for the recipe. | False |
ellf agents delete command
Delete an agent by name or ID.
$ellfagentsdeletename_or_idproject_idcluster_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the agent. | |
project_id | UUID | ID of agent’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for agent name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf agents start command
Start an agent on the cluster.
$ellfagentsstartname_or_idproject_idcluster_id--worker-class--no-wait
--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the agent (or the last agent if not set). | None |
project_id | UUID | ID of agent’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for agent name (or the last cluster if not set). | None |
--worker-class | str | Worker class to launch the agent on, defined when launching your cluster. Generally one of: medium, large, gpu. | None |
--no-wait | bool | Don’t wait for the agent to be ready after starting. | False |
--json | bool | Output the result as JSON. | False |
ellf agents stop command
Stop an agent on the cluster.
$ellfagentsstopname_or_idproject_idcluster_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the agent (or the last agent if not set). | None |
project_id | UUID | ID of agent’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for agent name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf agents logs command
Get logs for an agent on the cluster.
$ellfagentslogsname_or_idproject_idcluster_id--json--errors
--query
| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the agent (or the last agent if not set). | None |
project_id | UUID | ID of agent’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for agent name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
--errors | bool | Show structured error information instead of full logs. | False |
--query | str | Filter log lines matching this text (requires Loki). | None |
ellf agents assign command
Assign an agent to an annotation task as an annotator.
$ellfagentsassignname_or_id--task
project_idcluster_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the agent. | |
--task | Union[str, UUID] | Task name or ID to assign the agent to. | |
project_id | UUID | ID of agent’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for agent name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf assets
View and manage assets on the cluster, including input data files, models and other resources. See ellf files for utilities to transfer files to and from your cluster.
$ellfassets--helpellf assets list command
List all assets on the cluster registered with Ellf.
$ellfassetslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, broker_id, name, version, kind, path, meta, num_used_by | ["id", "name", "kind"] |
--json | bool | Output the result as JSON. | False |
ellf assets info command
Get detailed info for an asset uploaded to the cluster and registered with Ellf.
$ellfassetsinfoname_or_idproject_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the asset. | |
project_id | UUID | ID of asset’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for asset name (or the last cluster if not set). | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, broker_id, name, version, kind, path, meta, num_used_by, tasks, actions | None |
--json | bool | Output the result as JSON. | False |
ellf assets create command
Create an asset on the cluster and register it with Ellf. Assets point to files or directories you control. The Ellf server only has a reference to them. This command doesn’t transfer any data. See ellf files for utilities to transfer files to and from your cluster and ellf publish data for a command that combines both steps.
$ellfassetscreatenamepath
--kind--version--meta--exists-ok--json| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of the asset. | |
path | str | Path of the asset. | |
--kind | str | Kind of the asset. Generally one of: input, model, patterns. | |
--version | str | Version of the asset. | "0.0.0" |
--meta | str | Asset meta, formatted as a JSON string. | "{}" |
--exists-ok | bool | Don’t raise an error if it exists. | False |
--json | bool | Output the result as JSON. | False |
ellf assets delete command
Delete an asset registered with Ellf.
$ellfassetsdeletename_or_idproject_idcluster_id| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the asset. | |
project_id | UUID | ID of asset’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for asset name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf clusters
Interact with your cluster.
$ellfclusters--helpellf clusters list command
List resources on the cluster.
$ellfclusterslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, org_id, name, address, state, cloud_provider, cloud_account, cloud_region, client_id, client_secret | ["id", "name", "status", "address"] |
--json | bool | Output the result as JSON. | False |
ellf clusters info command
Get detailed info for a cluster.
$ellfclustersinfoname_or_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the cluster. | |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, org_id, name, address, state, cloud_provider, cloud_account, cloud_region, client_id, client_secret, worker_classes | None |
--json | bool | Output the result as JSON. | False |
ellf clusters update command
Update the cluster info.
$ellfclustersupdatename_or_id--new-name--address--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the cluster. | |
--new-name | str | New name of the cluster. | None |
--address | str | New address of the cluster. | None |
--json | bool | Output the result as JSON. | False |
ellf clusters delete command
Delete a cluster registered with Ellf. This only removes the record of it. The cluster itself will continue to exist – you need to shut it down separately.
$ellfclustersdeletename_or_id| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the cluster. |
ellf clusters check command
Check the health of a cluster deployment. Runs CLI-side connectivity checks against the cluster broker. Use --deep to also trigger broker-side deployment checks (Kubernetes API, NFS, database, etc.).
$ellfclusterscheck--cluster--s3-bucket--nfs-path--recipe--recipe-args--deep
| Argument | Type | Description | Default |
|---|---|---|---|
--cluster | str | Name or ID of the cluster. | None |
--s3-bucket | str | Run checks involving the S3 storage. | None |
--nfs-path | str | Run checks involving the NFS storage. | None |
--recipe | str | Run checks that need to operate over a recipe. This argument only makes sense when used with --recipe-args. | None |
--recipe-args | str | Run checks that need to operate over a recipe. This argument only makes sense when used with --recipe. | None |
--deep | bool | Run broker-side deployment checks (Kubernetes, NFS, DB). | False |
ellf clusters nodes command
List cluster nodes with capacity and utilization.
$ellfclustersnodes--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: name, status, cpu, memory, gpu, pod_count. | ["name", "status", "cpu", "memory", "gpu", "pod_count"] |
--json | bool | Output the result as JSON. | False |
ellf clusters rotate-key command
Rotate the cluster broker RSA keypair. Generates a new keypair, updates the broker record, patches the Kubernetes secret with the new private key, and restarts the broker deployment.
$ellfclustersrotate-key--cluster--infra-secret
--namespace
| Argument | Type | Description | Default |
|---|---|---|---|
--cluster | str | Name or ID of the cluster. | None |
--infra-secret | str | Name of the Kubernetes secret holding the private key. | "ellf-infra" |
--namespace | str | Kubernetes namespace. | "ellf" |
ellf clusters settings command
Show cluster settings, including auto-update, cleanup and target version configuration.
$ellfclusterssettings--cluster--json| Argument | Type | Description | Default |
|---|---|---|---|
--cluster | str | Name or ID of the cluster. | None |
--json | bool | Output the result as JSON. | False |
ellf clusters settings-update command
Update cluster settings.
$ellfclusterssettings-update--cluster--auto-update-broker--auto-update-cpl--auto-update-recipes--cleanup-orphaned-jobs--target-broker-version--target-cpl-version--json| Argument | Type | Description | Default |
|---|---|---|---|
--cluster | str | Name or ID of the cluster. | None |
--auto-update-broker | bool | Enable or disable auto-update for the broker. | False |
--auto-update-cpl | bool | Enable or disable auto-update for the CPL. | False |
--auto-update-recipes | bool | Enable or disable auto-update for recipes. | False |
--cleanup-orphaned-jobs | bool | Enable or disable cleanup of orphaned jobs. | False |
--target-broker-version | str | Set the target broker version to install. | None |
--target-cpl-version | str | Set the target CPL version to install. | None |
--json | bool | Output the result as JSON. | False |
ellf clusters releases command
List available cluster releases.
$ellfclustersreleases--json| Argument | Type | Description | Default |
|---|---|---|---|
--json | bool | Output the result as JSON. | False |
ellf config
Configure the CLI.
$ellfconfig--helpellf config reset command
Reset all caching and configuration.
$ellfconfigreset--json| Argument | Type | Description | Default |
|---|---|---|---|
--json | bool | Output the result as JSON. | False |
ellf config project command
Set the default project. This means you won’t have to provide a project_id argument when creating tasks, actions or assets.
$ellfconfigproject
name_or_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the project. | |
--json | bool | Output the result as JSON. | False |
ellf config task command
Set the default task.
$ellfconfigtask
name_or_idproject_idcluster_id| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the task. | |
project_id | UUID | ID of task’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for task name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf config action command
Set the default action.
$ellfconfigaction
name_or_idproject_idcluster_id| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the action. | |
project_id | UUID | ID of action’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for action name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf config set-cluster-host command
Set the cluster host.
$ellfconfigset-cluster-host
host--json| Argument | Type | Description | Default |
|---|---|---|---|
host | str | Host or URL of the cluster. | |
--json | bool | Output the result as JSON. | False |
ellf config set-recipes-file command
Set or clear a local recipes file for recipe discovery without contacting the Ellf backend.
$ellfconfigset-recipes-file
path
--clear
--json| Argument | Type | Description | Default |
|---|---|---|---|
path | str | Path to a local recipes YAML file. | None |
--clear | bool | Clear the recipes file setting. | False |
--json | bool | Output the result as JSON. | False |
ellf datasets
View and manage Prodigy datasets on the cluster.
$ellfdatasets--helpellf datasets list command
List all datasets.
$ellfdatasetslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, name, broker_id, kind, num_used_by | ["id", "name", "kind"] |
--json | bool | Output the result as JSON. | False |
ellf datasets info command
Get detailed info for a dataset.
$ellfdatasetsinfoname_or_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the dataset. | |
cluster_id | UUID | ID of the cluster to search for dataset name (or the last cluster if not set). | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, name, broker_id, kind, num_used_by, tasks, actions | None |
--json | bool | Output the result as JSON. | False |
ellf datasets create command
Create a new dataset.
$ellfdatasetscreatename--kind--exists-ok--json| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of the dataset. | |
--kind | str | Kind of the dataset, used to filter in recipes to only allow specific types. | |
--exists-ok | bool | Don’t raise an error if it exists. | False |
--json | bool | Output the result as JSON. | False |
ellf datasets delete command
Delete a dataset.
$ellfdatasetsdeletename_or_idcluster_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the dataset. | |
cluster_id | UUID | ID of the cluster to search for dataset name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf datasets export command
Export all the examples from a dataset and save it in the designated file as JSONL (newline-delimited JSON).
$ellfdatasetsexportname_or_id--output| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the dataset. | |
--output, -o | str | JSON output path for data. | "-" |
ellf export command
Save the state of the current app JSON file. If an assets directory is provided, assets will be downloaded and referenced in the JSON accordingly.
$ellfexportoutputassets_dir--include| Argument | Type | Description | Default |
|---|---|---|---|
output | Path | JSON output path for data. | |
assets_dir | Path | Local directory to download assets to. | None |
--include | str | Comma-separated items to include. | ["tasks", "actions", "assets", "datasets", "paths"] |
ellf files
Manage files on the cluster. Your files are only ever sent to servers or buckets you control. They are never sent to our servers.
$ellffiles--helpellf files cp command
Copy files to and from the cluster, analog to the Unix cp command.
$ellffilescpsrcdest--recurse--make-dirs--overwrite--cluster-host| Argument | Type | Description | Default |
|---|---|---|---|
src | str | Remote or local path of the source. | |
dest | str | Remote or local path of the destination. | |
--recurse, -r | bool | Copy whole directory recursively. | False |
--make-dirs | bool | Create parent directories if they don’t exist. | False |
--overwrite | bool | Overwrite if exists. | False |
--cluster-host | str | Name of the cluster (or the last cluster if not set). | None |
ellf files ls command
List the files under the remote path, analog to the Unix ls command.
$ellffileslsremote--recurse--json--cluster-host--expand-path-aliases| Argument | Type | Description | Default |
|---|---|---|---|
remote | str | Remote location path. | |
--recurse, -r | bool | List files recursively. | False |
--json | bool | Output the result as JSON. | False |
--cluster-host | str | Name of the cluster (or the last cluster if not set). | None |
--expand-path-aliases | bool | Expand path aliases when displaying remote paths. | False |
ellf files rm command
Remove files from the cluster, analog to the Unix rm command.
$ellffilesrmremote_path--missing-ok--recurse--cluster-host| Argument | Type | Description | Default |
|---|---|---|---|
remote_path | str | Remote location path. | |
--missing-ok | bool | If missing, don’t raise an error. | False |
--recurse, -r | bool | Delete the whole directory recursively. | False |
--cluster-host | str | Name of the cluster (or the last cluster if not set). | None |
ellf files rsync command
Rsync files to and from the cluster, analog to the Unix rsync command.
$ellffilesrsyncsrcdest--cluster-host| Argument | Type | Description | Default |
|---|---|---|---|
src | str | Remote or local path of the source. | |
dest | str | Remote or local path of the destination. | |
--cluster-host | str | Name of the cluster (or the last cluster if not set). | None |
ellf files stats command
Get the stats for a file located in the remote path.
$ellffilesstatsremote_path--json--cluster-host| Argument | Type | Description | Default |
|---|---|---|---|
remote_path | str | Remote location path. | |
--json | bool | Output the result as JSON. | False |
--cluster-host | str | Name of the cluster (or the last cluster if not set). | None |
ellf import command
Populate Ellf with data for projects, tasks, actions, assets and paths. Expects JSON data in the format created by ellf export.
$ellfimportdata--strict| Argument | Type | Description | Default |
|---|---|---|---|
data | Path | JSON file to import. | |
--strict, -S | bool | Error if items already exist and don’t skip or overwrite anything. | False |
ellf info command
Print information about the CLI.
$ellfinfo
field| Argument | Type | Description | Default |
|---|---|---|---|
field | str | Field to select and show in output. | None |
ellf infra
Manage and deploy Ellf cluster infrastructure, including provisioning resources on your cloud provider, registering the cluster and deploying the Helm chart.
$ellfinfra--helpellf infra register command
Register a new cluster with the Ellf backend and write credentials to cluster-creds.json.
$ellfinfraregister--name
--domain
--cloud-provider
--json| Argument | Type | Description | Default |
|---|---|---|---|
--name | str | Human-readable name for the cluster. | |
--domain | str | Public FQDN of the cluster (e.g. cluster.example.com). | |
--cloud-provider | str | Cloud provider. Available: gcp, k3s, aws. | |
--json | bool | Output the result as JSON. | False |
ellf infra setup command
Install cluster infrastructure prerequisites such as Traefik and cert-manager. These operations are idempotent and safe to re-run.
$ellfinfrasetup--traefik
--cert-manager
--acme-email
--public-ip
| Argument | Type | Description | Default |
|---|---|---|---|
--traefik | bool | Install Traefik ingress controller. | False |
--cert-manager | bool | Install cert-manager with Let’s Encrypt. | False |
--acme-email | str | Email for ACME/Let’s Encrypt certificate registration. | None |
--public-ip | str | Static IP for the Traefik load balancer. | None |
ellf infra init-values command
Generate a values.yaml for Helm deployment from cluster credentials and provider defaults.
$ellfinfrainit-values--creds
--cloud-provider
--domain
--out
--acme-email
| Argument | Type | Description | Default |
|---|---|---|---|
--creds | Path | Path to cluster-creds.json from infra register. | |
--cloud-provider | str | Cloud provider. Available: gcp, k3s, aws. | |
--domain | str | Public FQDN of the cluster. | |
--out | Path | Output path for the generated values.yaml. | "values.yaml" |
--acme-email | str | Email for Let’s Encrypt certificates. | None |
ellf infra deploy command
Deploy or upgrade the Ellf Helm chart. Creates the namespace, image pull secret and broker keypair secret, then runs helm upgrade --install with the provided values.
$ellfinfradeploy--values
--chart
--latest
--namespace
--wait
| Argument | Type | Description | Default |
|---|---|---|---|
--values | Path | Path to values.yaml for the Helm deployment. | |
--chart | Path | Path to a local chart directory (defaults to OCI registry). | None |
--latest | bool | Fetch and use the latest image tags before deploying. | False |
--namespace | str | Kubernetes namespace. | "ellf" |
--wait | bool | Wait for pods to be ready after deploying. | False |
ellf infra start command
Start a cluster on infrastructure configured under your own cloud account.
$ellfinfrastartsrc
config_path
--config-key
--offline
| Argument | Type | Description | Default |
|---|---|---|---|
src | Path | Path to cluster definition files. | "." |
config_path | Path | Path to config.yaml. Defaults to the config.yaml in the src directory if not set. | None |
--config-key | str | Top-level key for the cluster config. Allows multiple cluster configurations to be kept in one file. If not set, the whole config file is used. | None |
--offline | Path | Path to a credentials JSON file. Deploys without connecting to the Ellf backend. | None |
ellf infra provision command
Provision the NFS wheelhouse on a cluster.
$ellfinfraprovisionsrc
config_path
--config-key
| Argument | Type | Description | Default |
|---|---|---|---|
src | Path | Path to cluster definition files. | "." |
config_path | Path | Path to config.yaml. Defaults to the config.yaml in the src directory if not set. | None |
--config-key | str | Top-level key for the cluster config. Allows multiple cluster configurations to be kept in one file. If not set, the whole config file is used. | None |
ellf infra terraform command
Apply Terraform to create or update cluster infrastructure.
$ellfinfraterraformsrc
config_path
--config-key
--tf-init--tf-apply--tf-auto-accept| Argument | Type | Description | Default |
|---|---|---|---|
src | Path | Path to cluster definition files. | "." |
config_path | Path | Path to config.yaml. Defaults to the config.yaml in the src directory if not set. | None |
--config-key | str | Top-level key for the cluster config. Allows multiple cluster configurations to be kept in one file. If not set, the whole config file is used. | None |
--tf-init | bool | Force run terraform init. | False |
--tf-apply | bool | Apply the Terraform changes. | False |
--tf-auto-accept | bool | Accept the Terraform changes without interaction. | False |
ellf infra get-terraform command
Download Terraform files for cluster infrastructure.
$ellfinfraget-terraform--dest
--cloud-provider
| Argument | Type | Description | Default |
|---|---|---|---|
--dest | Path | Directory to save the Terraform files to. | "." |
--cloud-provider | str | Cloud provider. Available: gcp, k3s, aws. | "gcp" |
ellf infra tls command
Manage TLS certificates for local cluster access. Creates a self-signed CA and leaf certificate via cert-manager, patches the broker ingress for HTTPS, and outputs the commands needed to trust the CA on your machine.
$ellfinfratls--self-signed
--setup
--trust
--status
--fqdn
--output
| Argument | Type | Description | Default |
|---|---|---|---|
--self-signed | bool | Create a self-signed CA and certificate for the cluster. | False |
--setup | str | SSH host: create certs remotely, then fetch and trust the CA locally. | None |
--trust | str | SSH host to fetch CA from and install into the local trust store. | None |
--status | bool | Show current TLS configuration (issuer, certificate expiry, secret name). | False |
--fqdn | str | Certificate FQDN. | "localhost" |
--namespace | str | Kubernetes namespace. | "ellf" |
--output | str | Output format for trust commands. Available: human, json, shell. | "human" |
ellf jobs
Run jobs directly on the cluster, bypassing the Ellf application backend. This is mainly used for development, debugging and advanced workflows. For regular workflows, use the tasks, actions and agents CLI instead.
$ellfjobs--helpellf jobs run command
Run a job directly on the cluster broker from a YAML spec file.
$ellfjobsrun
spec_path
| Argument | Type | Description | Default |
|---|---|---|---|
spec_path | str | Path to a YAML job spec file. |
ellf login command
Log in to your Ellf account. You normally don’t need to call this manually, except for when you first get started, and Ellf will automatically authenticate when needed. When setting up Ellf, make sure to set the --claude flag to initialize the integration so you’ll be able to use Ellf and its modules in Claude Code.
$ellflogin--claude
--no-cluster--no-browser
--json| Argument | Type | Description | Default |
|---|---|---|---|
--claude | bool | Initialize integration and skills for Claude Code. Needs to be set to be able to use Ellf with Claude Code. | False |
--no-cluster | bool | Don’t use a cluster. | False |
--no-browser | bool | Don’t open a browser; just print the login URL. | False |
--json | bool | Output the result as JSON. | False |
ellf packages
View and manage Python packages on the cluster.
$ellfpackages--helpellf packages list command
List all packages.
$ellfpackageslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, name, version, environment, num_used_by, recipe_count | ["id", "name", "version", "recipe_count", "num_used_by"] |
--json | bool | Output the result as JSON. | False |
ellf packages info command
Get detailed info for a package.
$ellfpackagesinfoname_or_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the package. | |
cluster_id | UUID | ID of the cluster to search for package name (or the last cluster if not set). | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, name, version, environment, num_used_by, recipe_count, org_id, filename, meta, tasks, actions, author | None |
--json | bool | Output the result as JSON. | False |
ellf packages create command
Create a new package.
$ellfpackagescreatename--kind--exists-ok--json| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of the package. | |
--kind | str | Kind of the package, used to filter in recipes to only allow specific types. | |
--exists-ok | bool | Don’t raise an error if it exists. | False |
--json | bool | Output the result as JSON. | False |
ellf packages delete command
Delete a package.
$ellfpackagesdeletename_or_idcluster_id--force
| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the package. | |
cluster_id | UUID | ID of the cluster to search for package name (or the last cluster if not set). | None |
--force | bool | Delete related actions or tasks as well. | False |
--json | bool | Output the result as JSON. | False |
ellf paths
View and manage path aliases on the cluster.
$ellfpaths--helpellf paths list command
List all path aliases on the cluster.
$ellfpathslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, broker_id, name, path | ["created", "id", "name", "path"] |
--json | bool | Output the result as JSON. | False |
ellf paths info command
Get detailed info for a path alias.
$ellfpathsinfoname_or_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the path. | |
cluster_id | UUID | ID of the cluster to search for path name (or the last cluster if not set). | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, broker_id, name, path | None |
--json | bool | Output the result as JSON. | False |
ellf paths create command
Create a new path alias.
$ellfpathscreatenamepath
--exists-ok--json| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of the path. | |
path | str | Path of the cluster directory. | |
--exists-ok | bool | Don’t raise an error if it exists. | False |
--json | bool | Output the result as JSON. | False |
ellf paths delete command
Delete a path alias.
$ellfpathsdeletename_or_idcluster_id| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the path. | |
cluster_id | UUID | ID of the cluster to search for path name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf plans
View and manage project plans. This command is mainly used by Ellf under the hood to continuously update and sync the current plans so they can be accessed locally in your coding assistant and in the in-app chat.
$ellfplans--helpellf plans list command
List all plans for a project.
$ellfplanslist--project
--json| Argument | Type | Description | Default |
|---|---|---|---|
--project | UUID | ID of the project. | |
--json | bool | Output as JSON. | False |
ellf plans read command
Read a plan for a project.
$ellfplansread--project
--name
--json| Argument | Type | Description | Default |
|---|---|---|---|
--project | UUID | ID of the project. | |
--name | str | Plan name. | "project_plan" |
--json | bool | Output as JSON. | False |
ellf plans write command
Create or update a plan for a project.
$ellfplanswrite--project
--name
--content
--file
--json| Argument | Type | Description | Default |
|---|---|---|---|
--project | UUID | ID of the project. | |
--name | str | Plan name. | "project_plan" |
--content | str | Plan content as Markdown. Use --file to read from a file. | None |
--file | Path | Path to a file containing the plan content. | None |
--json | bool | Output as JSON. | False |
ellf plans delete command
Delete a plan.
$ellfplansdelete--project
--name
--id
--json| Argument | Type | Description | Default |
|---|---|---|---|
--project | UUID | ID of the project. | None |
--name | str | Plan name. | None |
--id | UUID | Plan UUID (alternative to --project + --name). | None |
--json | bool | Output as JSON. | False |
ellf projects
View and manage Ellf projects.
$ellfprojects--helpellf projects list command
List all projects.
$ellfprojectslist--select--json--name
| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, org_id, name, description | ["id", "name"] |
--json | bool | Output the result as JSON. | False |
--name | str | Filter by name. | None |
ellf projects info command
Get detailed info for a project.
$ellfprojectsinfoname_or_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the project. | |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, org_id, name, description | None |
--json | bool | Output the result as JSON. | False |
ellf projects create command
Create a new project.
$ellfprojectscreatenamedescription
--default-job-name-template
--exists-ok--json| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of the project. | |
description | str | Description of the project. | |
--default-job-name-template | str | Default name template for new jobs (e.g. {recipe}_{date}). | None |
--exists-ok | bool | Don’t raise an error if it exists. | False |
--json | bool | Output the result as JSON. | False |
ellf projects update command
Update a project.
$ellfprojectsupdatename_or_id--name
--description
--default-job-name-template
--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the project. | |
--name | str | New name for the project. | None |
--description | str | New description for the project. | None |
--default-job-name-template | str | Default name template for new jobs (e.g. {recipe}_{date}). | None |
--json | bool | Output the result as JSON. | False |
ellf projects delete command
Delete a project.
$ellfprojectsdeletename_or_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the project. | |
--json | bool | Output the result as JSON. | False |
ellf publish
Publish code or data to the cluster and advertise it to Ellf.
$ellfpublish--helpellf publish code command
Build a container image from a recipes package and publish it to the cluster.
$ellfpublishcode
name_or_path--is-module
--is-path
--package-version| Argument | Type | Description | Default |
|---|---|---|---|
name_or_path | str | Path or name of importable module with the recipes. | |
--is-module, -m | bool | Code to publish is an importable module. | False |
--is-path, -p | bool | Code to publish is a path. | False |
--package-version | str | Version identifier for the package. | None |
ellf publish data command
Transfer data to the cluster, and advertise it to Ellf. These steps can also be done separately. See ellf files to transfer data to the cluster without creating an asset record for it, and ellf assets create to create an asset without transfer.
$ellfpublishdata
srcdest--name--version--kind--loader
--meta--exists-ok| Argument | Type | Description | Default |
|---|---|---|---|
src | Path | File or directory to publish. | |
dest | str | Destination path to copy the data to. | None |
--name | str | Name of the asset. | None |
--version | str | Version of the asset. | None |
--kind | str | Kind of the asset. Generally one of: input, model, patterns. | |
--loader | str | Loader to convert data for Prodigy. | None |
--meta | str | Asset meta, formatted as a JSON string. | "{}" |
--exists-ok | bool | Don’t raise an error if it exists. | False |
ellf recipes
View and manage task, action and agent recipe packages on the cluster.
$ellfrecipes--helpellf recipes list command
List all recipes.
$ellfrecipeslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, org_id, package_id, name, title, description, is_action, entry_point, num_used_by | ["id", "name", "package"] |
--json | bool | Output the result as JSON. | False |
ellf recipes export command
Export recipes from the cluster to a local YAML file.
$ellfrecipesexportoutput_path
| Argument | Type | Description | Default |
|---|---|---|---|
output_path | str | Output path for the recipes YAML file. |
ellf recipes info command
Show info about a recipe.
$ellfrecipesinfoname_or_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the recipe. | |
cluster_id | UUID | ID of the cluster to search for recipe name (or the last cluster if not set). | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, org_id, package_id, name, title, description, is_action, entry_point, num_used_by, form_schema, cli_schema, meta, tasks, actions, package | None |
--json | bool | Output the result as JSON. | False |
ellf recipes init command
Generate a new recipes Python package.
$ellfrecipesinitoutput_dir--name--description
--author
--email
--url
--license
--version| Argument | Type | Description | Default |
|---|---|---|---|
output_dir | Path | Output directory for the recipe package. | |
--name | str | Name of the package (e.g. custom_recipes). | None |
--version | str | Version of the package. | "0.1.0" |
--description | str | Description of the package. | "" |
--author | str | Name of the package author. | "" |
--email | str | Email of the package author. | "" |
--url | str | URL or website of the package. | "" |
--license | str | License of the package. | "" |
ellf secrets
View and manage named pointers to secrets on the cluster.
$ellfsecrets--helpellf secrets list command
List all named pointers to secrets on the cluster.
$ellfsecretslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, name, broker_id | ["created", "id", "name"] |
--json | bool | Output the result as JSON. | False |
ellf secrets info command
Show info about a secret on the cluster.
$ellfsecretsinfoname_or_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the secret. | |
cluster_id | UUID | ID of the cluster to search for secret name (or the last cluster if not set). | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, name, broker_id | None |
--json | bool | Output the result as JSON. | False |
ellf secrets create command
Create a secret on the cluster. The secret value is stored securely on your cluster only and never sent to our servers. If --value is omitted, you’ll be prompted to enter it interactively.
$ellfsecretscreatename--value--exists-ok--json| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of the secret. | |
--value | str | The secret value. Omit to be prompted interactively. | None |
--exists-ok | bool | Don’t raise an error if it exists. | False |
--json | bool | Output the result as JSON. | False |
ellf secrets delete command
Delete a secret by name or ID.
$ellfsecretsdeletename_or_idcluster_id| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the secret. | |
cluster_id | UUID | ID of the cluster to search for secret name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf tasks
Interact with annotation tasks on the cluster.
$ellftasks--helpellf tasks list command
List the tasks on the cluster. By default, this includes their ID, name and current state, e.g. created or completed.
$ellftaskslist--select--json| Argument | Type | Description | Default |
|---|---|---|---|
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, project_id, broker_id, name, recipe_name, recipe_title, state, project_name, is_running, is_startable, is_stoppable, error, plan, job_type, cli_command | ["id", "name", "state", "project_name"] |
--json | bool | Output the result as JSON. | False |
ellf tasks info command
Print information about a task on the cluster.
$ellftasksinfoname_or_idproject_idcluster_id--select--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the task. | |
project_id | UUID | ID of task’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for task name (or the last cluster if not set). | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, project_id, broker_id, name, recipe_name, recipe_title, state, project_name, is_running, is_startable, is_stoppable, error, plan, job_type, cli_command, nomad_index, last_execution_id, related_actions, url_logs, url, created_by_user | None |
--json | bool | Output the result as JSON. | False |
ellf tasks create command
Create a new task. The available task recipes are fetched from your cluster and are added as dynamic subcommands. You can see more details and recipe-specific arguments by calling the subcommand with --help.
$ellftaskscreaterecipename...--exists-ok--no-start--no-wait
--help| Argument | Type | Description | Default |
|---|---|---|---|
recipe | str | Name of task recipe to create. | |
name | str | Human-readable name of the task to create. | |
| … | Recipe-specific arguments for task. | ||
--exists-ok | bool | Don’t raise an error if it exists. | False |
--no-start | bool | Don’t start task after creation. | False |
--no-wait | bool | Don’t wait for the task to be ready after starting. | False |
--help | bool | View available arguments for the recipe. | False |
ellf tasks delete command
Delete a task by name or ID.
$ellftasksdeletename_or_idproject_idcluster_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | Union[str, UUID] | Name or ID of the task. | |
project_id | UUID | ID of task’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for task name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf tasks start command
Start a task on the cluster.
$ellftasksstartname_or_idproject_idcluster_id--worker-class--no-wait
--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the task (or the last task if not set). | None |
project_id | UUID | ID of task’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for task name (or the last cluster if not set). | None |
--worker-class | str | Worker class to launch the task on, defined when launching your cluster. Generally one of: medium, large, gpu. | None |
--no-wait | bool | Don’t wait for the task to be ready after starting. | False |
--json | bool | Output the result as JSON. | False |
ellf tasks stop command
Stop a task on the cluster.
$ellftasksstopname_or_idproject_idcluster_id--json| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the task (or the last task if not set). | None |
project_id | UUID | ID of task’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for task name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
ellf tasks logs command
Get logs for a task on the cluster.
$ellftaskslogsname_or_idproject_idcluster_id--json--errors
--query
| Argument | Type | Description | Default |
|---|---|---|---|
name_or_id | str | Name or ID of the task (or the last task if not set). | None |
project_id | UUID | ID of task’s project (or the last project if not set). | None |
cluster_id | UUID | ID of the cluster to search for task name (or the last cluster if not set). | None |
--json | bool | Output the result as JSON. | False |
--errors | bool | Show structured error information instead of full logs. | False |
--query | str | Filter log lines matching this text (requires Loki). | None |
ellf todo
View and manage requests of the in-app chat to hand over work to your local coding assistant. This is usually called by Ellf under the hood when you run /ellf-todo to pick up a request from the chat. Together with the plans CLI, it allows both chat environments to communicate with each other.
$ellftodo--helpellf todo list command
List todo requests.
$ellftodolist--project
--select--status
--json| Argument | Type | Description | Default |
|---|---|---|---|
--project | UUID | Filter by project. | None |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, project_id, conversation_id, creator_id, assigned_to, description, context_summary, resolution, status | ["id", "project_id", "status", "description"] |
--status | str | Filter by status. | None |
--json | bool | Output the result as JSON. | False |
ellf todo info command
Get detailed info for a todo.
$ellftodoinfoid
--select--json| Argument | Type | Description | Default |
|---|---|---|---|
id | UUID | ID of the todo. | |
--select | List[str] | Comma-separated fields to select and show in output. Available: id, created, updated, project_id, conversation_id, creator_id, assigned_to, description, context_summary, resolution, status | None |
--json | bool | Output the result as JSON. | False |
ellf todo create command
Create a new todo.
$ellftodocreate--project
--description
--context
--conversation
--json| Argument | Type | Description | Default |
|---|---|---|---|
--project | UUID | ID of todo’s project (or the last project if not set). | |
--description | str | Description of the todo. | |
--context | str | Context summary for the todo. | None |
--conversation | UUID | Conversation ID to associate with the todo. | None |
--json | bool | Output the result as JSON. | False |
ellf todo update command
Update a todo.
$ellftodoupdateid
--status
--description
--resolution
--json| Argument | Type | Description | Default |
|---|---|---|---|
id | UUID | ID of the todo. | |
--status | str | New status. Available: planned, in_progress, done, cancelled. | None |
--description | str | New description for the todo. | None |
--resolution | str | What was done (or why nothing was done). Set when closing a todo. | None |
--json | bool | Output the result as JSON. | False |
ellf todo pull command
Pull planned todos and mark them as in progress.
$ellftodopull--project
--json| Argument | Type | Description | Default |
|---|---|---|---|
--project | UUID | Filter by project. | None |
--json | bool | Output the result as JSON. | False |
ellf todo latest command
Get the most recently updated non-done todo.
$ellftodolatest--json| Argument | Type | Description | Default |
|---|---|---|---|
--json | bool | Output the result as JSON. | False |
ellf todo context command
Fetch conversation messages for a todo’s linked conversation.
$ellftodocontextid
--json| Argument | Type | Description | Default |
|---|---|---|---|
id | UUID | ID of the todo. | |
--json | bool | Output the result as JSON. | False |
ellf todo delete command
Delete a todo.
$ellftododeleteid
--json| Argument | Type | Description | Default |
|---|---|---|---|
id | UUID | ID of the todo. | |
--json | bool | Output the result as JSON. | False |
ellf version command
Show version info for the CLI and running services.
$ellfversion
--json| Argument | Type | Description | Default |
|---|---|---|---|
--json | bool | Output the result as JSON. | False |
ellf-dev
The ellf-dev command line interface is provided by the recipes development SDK, which includes all recipe API components you need, as well as handy commands to test and preview your recipes before publishing them to the cluster. To see all available commands or subcommands, you can use the --help flag.
$pip installellf-recipes-sdk
ellf-recipes
| Argument | Type | Description |
|---|---|---|
--help | bool | Show subcommands, available arguments and more info. |
--version | bool | Display the version of the CLI package. |
Available commands
| preview | Preview the UI form generated by a recipe. |
| run | Run a recipe locally. |
| import-objects | Add objects like named pointers to assets from a JSON file. |
| create-object | Create an object record, like a named pointer to an asset. |
| list-objects | List all object records. |
| delete-object | Delete an object record. |
ellf-dev preview command
Preview the UI form generated by a recipe. Live-reloads as you edit the recipe code. The preview also lets you generate the output created for anything you fill in. See the recipe development guide for more info and examples.
Limitations of preview
Because the preview runs outside the context of the Ellf application and isn’t connected to any cluster, it comes with some limitations and implements dummy data for datasets and assets, and only performs superficial data validation.
$ellf-devpreviewname
path
--host
--port
| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of recipe to preview. | |
path | Path | File containing the recipe you’re developing. | None |
--host | str | Host to serve UI preview on. | "localhost" |
--port | int | Port to serve UI preview on. | 9090 |
ellf-dev run command
Run a recipe locally. To see available recipes, run the command with --help. You can also view the arguments of a given recipe via ellf-dev run [name] --help. See the recipe development guide for more info and examples.
$ellf-devrunname
...| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of recipe to run. | |
| … | Recipe-specific arguments. | ||
--help | Show available arguments and documentation. |
ellf-dev import-objects command
Add a set of objects, like named pointers to assets from a JSON file. This is useful for running recipes locally and mocking resources from the Ellf servers that are not available locally. The file should be keyed by named pointers, mapped to dictionaries. Each outer key is an arbitrary object name, and the dictionary provides its attributes.
$ellf-devimport-objectspath
{
"test_data": {
"id": "00000000-0000-0000-0000-000000000000",
"broker_id": "00000000-0000-0000-0000-000000000000",
"name": "test-data",
"version": "0.0.1",
"path": "./test_data/examples.jsonl",
"meta": {"loader": "jsonl"}
}
}| Argument | Type | Description | Default |
|---|---|---|---|
path | Path | Path to JSON file to import. |
ellf-dev create-object command
Add an object record, to use for ellf-dev run recipe invocations. On the cluster, you’ll often want to use the named pointers to data that are stored on the Ellf server – for instance, to provide some input data by name, rather than a cluster path. For testing, the ellf-dev commands use a JSON file with the objects data instead.
$ellf-devcreate-objectname
attributes
| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of the object | |
attributes | str | JSON-encoded dictionary of attributes |
ellf-dev list-objects command
List all local object records added with create-object or import-objects.
$ellf-devlist-objectsellf-dev delete-object command
Delete a named object record.
$ellf-devdelete-objectname
| Argument | Type | Description | Default |
|---|---|---|---|
name | str | Name of the object |
ellf-dev clear-objects command
Remove all local object records. See create-object.
$ellf-devclear-objects