CLI reference / host / deliver

stado host deliver

Invocation

stado host deliver [OPTIONS] <TARGET> <SOURCE> <DESTINATION>

Purpose

Deliver one local file or directory into a canonical run directory on TARGET. DESTINATION is relative to the registry-approved account's home and must be below `.stado/work/runs/<canonical lowercase UUID>/`. The command refuses a missing, special, or root-symlink SOURCE; an empty or malformed file list; and any destination outside that shape before contacting TARGET. On TARGET it refuses symlinked, foreign-owned, or wrong-kind destination state before rsync transfers a byte. The destination is replaced atomically after the transfer.

Required inputs and options

Input or optionContract
<TARGET>Canonical Stado target selector
<SOURCE>Local regular file, directory, or application bundle
<DESTINATION>Managed path relative to the target account's home
--files-from <PATH>Read a nonempty NUL-delimited list of relative SOURCE paths from PATH, or '-' for stdin. The final path must end with NUL
--jsonEmit the delivery receipt as JSON

Output and state effect

It performs the operation described above and emits its operator result on standard output or standard error. Any state change is limited to the resources and records named by the purpose and options on this page.

Refusals

  • The final path must end with NUL
  • Before dispatch, Stado refuses a missing required token shown in the invocation, an unknown option, or a value outside a listed value set; argument-usage failures exit with code 2.