Skip to content

Command Line Interface

The flow CLI provides command-line access to all Flow platform features.

Features

  • Authentication - Login with email/password, SSO, or PAT tokens
  • File Management - Browse, upload, and download files
  • Order Management - Create and track clinical orders
  • Pipeline Execution - Submit and monitor Nextflow/WDL workflows
  • Configuration - Manage endpoints and settings

Architecture

The CLI interacts with multiple services:

┌─────────────────────────────────────────────────────────────────┐
│                         flow CLI                                 │
└─────────────────────────────────────────────────────────────────┘
         │              │              │              │
         ▼              ▼              ▼              ▼
    ┌─────────┐   ┌─────────┐   ┌─────────┐   ┌─────────┐
    │  admin  │   │  files  │   │  miner  │   │ compute │
    │ service │   │ service │   │ service │   │ service │
    └─────────┘   └─────────┘   └─────────┘   └─────────┘
         │              │              │              │
         ▼              ▼              ▼              ▼
      Users &        Cloud         Orders &       Pipelines
      Projects       Storage       Samples        & Runs

Order-Run Workflow: Orders (clinical cases) are created in miner-service. Pipeline runs are executed in compute-service and can be associated with orders via --order-id.

Quick Start

# Install
pip install iseq-flow

# Login with PAT token (recommended)
flow login --token YOUR_PAT_TOKEN

# Check status
flow status

# Select default project (one-time setup)
flow config select-project

# Now all commands work without -p flag
flow files ls
flow orders list
flow runs list

Typical Workflow

# 1. Create a clinical order
flow orders create -n "Patient Case 001"

# 2. Upload data files
flow files upload sample_R1.fastq.gz data/sample_R1.fastq.gz
flow files upload sample_R2.fastq.gz data/sample_R2.fastq.gz

# 3. Run a pipeline associated with the order
#    File paths are relative to your project bucket
flow runs submit --pipeline hereditary-mock \
  --order-id ORDER_ID \
  -P case_id=case-001 \
  -P child_fastq=data/sample_R1.fastq.gz \
  -P child_fastq=data/sample_R2.fastq.gz \
  --watch

# 4. Check run status
flow runs list --order-id ORDER_ID

# 5. Download results
flow files ls outputs/
flow files download outputs/report.html

Documentation

Guide Description
Installation Setup and authentication
Commands Full command reference
Managing Orders Order creation and workflow
Running Pipelines Pipeline execution guide