CLI Reference

Global Flags

These flags are available on all commands:

FlagDescription
--debugEnable debug logging
--dry-runPerform dry runs without making changes
--config-file <path>Configuration file path

parallax play

Execute an Ansible-compatible playbook.

parallax play [flags] <playbook>

Core Options

FlagDefaultDescription
-i, --inventory <source>Inventory source (file or comma-separated hosts)
-C, --checkfalseDry-run mode (no changes made)
--start-at-task <name>Begin execution at a specific task
-l, --limit <pattern>Further restrict hosts to a pattern
-e, --extra-vars <vars>Set additional variables (key=value, @file, or JSON)
--forks <n>5Number of parallel processes
-D, --difffalseShow file differences when changing files
-v, -vv, -vvv0Increase output verbosity; each task’s result is rendered from -v upwards
--inject-facts-as-varstrueExpose every gathered fact as a top-level ansible_<key> variable in addition to the ansible_facts dictionary
--jsonfalseOutput as JSON
--quietfalseSuppress task and play output; only the exit status reports the outcome
--callback <name>defaultCallback plugin (default, minimal, json, timer, profile_tasks)

debug: prints without -v: the module asks for its payload to be rendered, so debug: msg=... and debug: var=... behave as they do under Ansible. A task’s verbosity: is a threshold — the message appears once the run’s verbosity reaches it, and the task is reported as skipped below it. The run’s level is readable from playbooks as {{ ansible_verbosity }}.

Authentication

FlagDefaultDescription
--private-key <file>SSH private key file
--ask-passfalsePrompt for connection password
-b, --becomefalseEnable privilege escalation
--become-user <user>rootPrivilege escalation user
--become-method <method>sudoPrivilege escalation method (sudo, su, doas, pfexec)
--ask-become-passfalsePrompt for privilege escalation password

The become password is delivered on the escalation helper’s standard input, so it never appears in the target’s process table. Not every method can accept one:

MethodPassword support
sudoYes — read from stdin via sudo -S
suYes — read from stdin. SSH exec requests are served without a PTY, so su falls back from /dev/tty to standard input
doasNo. doas reads /dev/tty and has no stdin equivalent of sudo -S. Grant the login user a nopass rule in doas.conf; supplying a password is an error rather than being silently ignored
pfexecNo. pfexec authorises through RBAC profiles and never prompts

runas (WinRM) is the one exception: PowerShell’s ConvertTo-SecureString has no stdin form over this transport, so the password is still interpolated into the command and is visible to anything that can enumerate command lines on the target.

Tags

FlagDescription
--tag <tag>Only run tasks with this tag (repeatable)
--tags <tags>Only run tasks with these tags (comma-separated)
--skip-tag <tag>Skip tasks with this tag (repeatable)
--skip-tags <tags>Skip tasks with these tags (comma-separated)

SSH Configuration

FlagDefaultDescription
--ssh-user <user>Default SSH user
--ssh-port <port>22Default SSH port
--ssh-timeout <duration>30sConnection timeout
--ssh-retries <n>3Number of connection retries
--ssh-retry-interval <duration>5sInterval between retries
--ssh-keepalivetrueEnable SSH keepalive
--ssh-keepalive-interval <duration>30sKeepalive interval
--use-agenttrueUse SSH agent for authentication
--agent-socket <path>Path to SSH agent socket
--known-hosts <file>Path to known_hosts file
--strict-host-checkingtrueEnable strict host key verification

Bastion / Jump Host

FlagDefaultDescription
--bastion-host <host>Bastion host address
--bastion-port <port>22Bastion SSH port
--bastion-user <user>Bastion user (defaults to –ssh-user)
--bastion-key <file>Bastion-specific SSH private key

Vault

FlagDescription
--vault-id <label@source>Vault identity (repeatable)
--vault-password-file <file>File containing vault password
--ask-vault-passPrompt for vault password

Connection Pooling

FlagDefaultDescription
--connection-poolingfalseEnable SSH connection pooling
--pool-max-connections <n>20Maximum pooled connections
--pool-max-idle <n>5Maximum idle connections
--pool-max-idle-time <duration>30mMaximum idle time
--pool-max-lifetime <duration>2hMaximum connection lifetime
--pool-acquire-timeout <duration>30sConnection acquire timeout
--pool-health-check-interval <duration>5mHealth check interval
--pool-enable-health-checktrueEnable health checks
--pool-statsDisplay pool statistics (show)

Module Caching

FlagDefaultDescription
--cachetrueEnable module binary caching
--cache-dir <path>~/.parallax/module-cacheCache directory
--cache-info <action>Display cache info (stats, list)
--cache-clearfalseClear all cached modules
--cache-clear-module <name>Clear cache for specific module

Precompilation

FlagDefaultDescription
--precompilefalsePrecompile common modules before execution
--precompile-backgroundfalseBackground precompilation
--precompile-modules <modules>Specific modules to precompile
--precompile-concurrency <n>Parallel precompilation processes
--precompile-current-platformfalseOnly precompile for current platform
--precompile-quietfalseSuppress precompilation output
--precompile-usage-statsShow module usage stats (show)
--precompile-recommendedShow recommended modules (show)

Facts Gathering

FlagDefaultDescription
--facts-paralleltrueParallel fact gathering
--facts-concurrency <n>10Max concurrent fact gatherers
--facts-cachetrueEnable facts caching
--facts-cache-ttl <duration>30mFacts cache TTL
--facts-timeout <duration>30sGather timeout
--facts-subset <subset>allFacts subset to gather
--facts-filter <pattern>*Filter pattern
--facts-directory <path>/etc/ansible/facts.dCustom facts directory
--facts-infoCache info (stats)
--facts-cache-clearfalseClear facts cache
--facts-incrementaltrueIncremental fact gathering
--facts-incremental-threshold <n>0.25Change threshold for re-gather
--facts-force-fullfalseForce full fact gathering
--facts-compressiontrueEnable facts compression
--facts-compression-algorithm <alg>gzipCompression algorithm
--facts-compression-level <n>6Compression level (1-9)
--facts-auto-compressiontrueAuto-select compression
--facts-compression-threshold <bytes>1024Minimum size for compression

Template Caching

FlagDefaultDescription
--template-cachetrueEnable template caching
--template-cache-size <n>1000Maximum cached templates
--template-cache-max-age <duration>1hCache max age
--template-cache-eviction-interval <duration>5mEviction interval
--template-cache-infoDisplay cache info (stats, list)
--template-cache-clearfalseClear template cache

Resource Management

FlagDefaultDescription
--resource-managementfalseEnable resource management
--module-timeout <duration>Global module execution timeout
--max-memory <mb>Maximum memory in MB
--max-cpu <percent>Maximum CPU usage percentage
--max-execution-time <duration>Maximum total execution time
--max-open-files <n>Maximum open file descriptors

Validation

FlagDefaultDescription
--validate-featuresfalseValidate Ansible compatibility
--strict-validationfalseTreat unsupported features as errors
--ignore-unsupported <feature>Ignore specific unsupported features (repeatable)
--show-supported-modulesShow supported modules (show)
--show-unsupported-modulesShow unsupported modules (show)
--validation-enabledtrueEnable module argument validation
--validation-level <level>Level (basic, standard, strict, pedantic)
--validation-show-warningstrueShow warnings

Debug

FlagDefaultDescription
--debug-enabledfalseEnhanced debug mode
--debug-level <level>noneDebug level (none, basic, verbose, trace)
--debug-profilingfalsePerformance profiling
--debug-tracingfalseExecution tracing
--debug-reportfalseOutput debug report at end
--debug-output <file>Debug output file

Plugins

FlagDefaultDescription
--plugin-dir <path>Additional plugin directories (repeatable)
--preload-pluginsfalsePreload plugins at startup
--plugin-timeout <duration>30sPlugin execution timeout

Subcommands

  • parallax play list <playbook> – List tasks in playbook
  • parallax play exec <playbook> – Execute playbook (alternate form)

parallax validate

Validate playbook and inventory syntax without executing.

parallax validate [flags]
FlagDescription
-p, --playbook <path>Path to playbook file
-i, --inventory <source>Inventory file or host list

parallax vault

Ansible Vault compatible encryption/decryption operations.

parallax vault <subcommand> [flags]

Persistent Vault Flags

FlagDescription
--vault-id <label@source>Vault identity (repeatable)
--vault-password-file <file>File containing vault password
--ask-vault-passPrompt for vault password

vault encrypt

parallax vault encrypt <file>

Encrypt a file with Ansible Vault.

vault decrypt

parallax vault decrypt <file>

Decrypt a vault-encrypted file.

vault view

parallax vault view <file>

View the contents of a vault-encrypted file without decrypting it to disk.

vault edit

parallax vault edit <file>

Edit a vault-encrypted file in your $EDITOR.

vault encrypt_string

parallax vault encrypt_string [flags] <string>
FlagDescription
--name <var>Variable name for YAML output

vault rekey

parallax vault rekey [flags] <files...>

Re-encrypt files with a new vault password.

FlagDescription
--new-vault-password-file <file>File with the new password
--new-vault-id <label@source>New vault identity

parallax doc

Module documentation commands.

parallax doc <subcommand> [flags]

doc show

parallax doc show <module>

Display documentation for a specific module.

doc list

parallax doc list

List all available modules.

doc generate

parallax doc generate [flags]

Generate static module documentation.

FlagDefaultDescription
--output-dir <path>./docs/modulesOutput directory
--format <format>markdownOutput format (markdown, hugo)

parallax plugins

Manage Parallax plugins.

parallax plugins <subcommand> [flags]

plugins init

parallax plugins init <type> <name> [flags]

Create a new plugin project skeleton.

FlagDefaultDescription
--module-path <path>github.com/user/<name>Go module path override

Supported types: module, callback, connection, filter, inventory, lookup, strategy

plugins add

parallax plugins add <source> [flags]

Install a plugin from a git repository.

FlagDefaultDescription
--version <version>latestVersion to install
--type <type>Plugin type
--name <name>Override derived plugin name
--no-buildfalseClone only, skip building

plugins list

parallax plugins list [flags]
FlagDescription
--type <type>Filter by plugin type

plugins remove

parallax plugins remove <name>

Remove an installed plugin.

plugins upgrade

parallax plugins upgrade <name> [flags]
FlagDefaultDescription
--version <version>latestTarget version

parallax tool

Tool-specific subcommands.

tool version

parallax tool version

Display version information including build commit.


parallax upgrade

Self-update the Parallax binary.

parallax upgrade [flags]

Aliases: self-update

FlagDefaultDescription
-v, --version <version>latestVersion to upgrade to
--listfalseList available versions
--notesfalseShow release notes for a version