Browse documentation
Docs target stable release v0.18.2.Stable vs main checked 2026-10-31

Remote commands

Serve the reference remote

Terminal
export TINE_REMOTE_TOKEN="at-least-16-bytes"
export TINE_KMS_KEY="base64-key-material"

tine serve \
  --root .tine-remote \
  --host 127.0.0.1 \
  --port 8787 \
  --tenant default \
  --role writer \
  --cert cert.pem \
  --key key.pem

TLS is required unless --insecure-dev is explicit. The token comes from TINE_REMOTE_TOKEN by default and must contain at least 16 bytes. Limits can be adjusted with --timeout, --request-deadline, --max-body-mb, --max-upload-mb, and --max-connections.

Fetch, push, and clone

Terminal
tine share fetch https://runs.example --tenant team --ref heads/main --depth 100 --repo .
tine push https://runs.example --tenant team --ref heads/main --remote-ref heads/main --repo .
tine clone https://runs.example ./clone --tenant team --ref heads/main --depth 100

Use --token-file or TINE_REMOTE_TOKEN for credentials. Remote URLs refuse userinfo, query strings, and fragments. A token file readable by group or others produces a warning. HTTPS is required unless the host is a literal loopback address or insecure development is explicit. Authenticated clients ignore ambient proxy variables.

Synchronization semantics

Fetch retains remote annotations for already-held runs under remotes/<name>/annotations/. Use --adopt-annotations to adopt them deliberately. Clone refuses a target already holding refs or objects. Association budgets may omit annotations or attestations while preserving the transferable run graph; inspect omission reports.

Fetch negotiates missing verified objects and records shallow boundaries when depth is set. Push uploads missing objects before attempting a compare-and-swap ref update, so a stale remote ref is rejected rather than silently overwritten. Clone initializes a new repository and fetches the selected ref.

Recovery flags

serve --migrate-legacy-audit is a one-time trust-on-migration path whose rows remain marked unverified. --reanchor-audit-head SHA256 performs dedicated recovery only when the computed chain head matches exactly. Review the remote trust boundary before using either option.