Operator CLI
The pyplines command is installed by the pyplines-cli Python distribution. It requires Python 3.12 or newer. Use the supported tooling version shown in this site. See the quickstart for installation.
Run pyplines --help or append --help to a command for all flags. Global options precede the command:
pyplines --json --server https://pyplines.example.com run info 42
Connection and configuration
| Command | Purpose |
|---|---|
login URL --username NAME | Prompt for a password and save a server session |
logout | Revoke the session and remove its local saved token |
version | Print the installed operator CLI version |
config show | Show saved settings |
config get KEY | Read an effective supported setting |
config set KEY VALUE / config unset KEY | Change server or tls.ca_file |
See configuration for precedence and credential storage.
Definitions and deployments
| Command | Important options and behavior |
|---|---|
validate FILE | Check local structure; the server remains authoritative |
deploy FILE --environment NAME | --as NAME, --revision N, --key KEY |
list | Optional --environment NAME |
info ENVIRONMENT/NAME | Optional --revision N |
history ENVIRONMENT/NAME | List deployed revisions |
export ENVIRONMENT/NAME | Optional --revision N, --output FILE; refuses overwrite |
Runs and evidence
| Command | Important options and behavior |
|---|---|
run start ENVIRONMENT/NAME | --inputs FILE, --revision N, --key KEY, --wait, --timeout SECONDS |
run list | --environment NAME, --page N, --limit N |
run info ID | Detailed state and available inputs/outputs |
run status ID | --watch, --timeout SECONDS |
run history ID | Retained events |
run attempts ID | Individual execution attempts |
run logs ID STEP | --attempt INVOCATION_ID selects historical logs |
run approve ID | Approve prepared work |
run retry ID | Re-prepare a settled blocked step |
run skip ID --reason TEXT | Skip with policy permission |
run cancel ID | Request stop; does not roll back effects |
Decision commands accept --step, --digest, --reason, and --yes. By default they inspect the current step and prompt. Automation using --yes must still satisfy authorization, policy, and prepared-state checks.
Waiting exits unsuccessfully for blocked, uncertain, or cancelled Runs, and on wait timeout. Timeout or closing the CLI does not cancel server execution.
Administration
| Command group | Operations |
|---|---|
registry, environment, policy | list, info NAME, apply FILE |
user, team, access | list, apply FILE |
user create NAME | Prompt for and confirm an initial password |
registry login NAME --username USER | Prompt for credentials; optional --password-stdin |
secret list ENVIRONMENT | List names and versions, not values |
secret set ENVIRONMENT NAME | Prompt for a value; optional --stdin |
secret remove ENVIRONMENT NAME --version N | Remove with expected-version protection; optional --yes |
runner list | Inspect identities and admission |
runner enroll NAME | --pool, --ttl, --automatic, --max-active |
runner approve/reject/revoke/drain ID | Change runner admission or availability |
The CLI also lists runner resume, but the current server rejects that transition; see runner maintenance.
See administration for configuration examples. Custom Action authoring uses the separate Action CLI.

