Download lifecycle and terminal tools
Historical identity
Section titled “Historical identity”Every request receives a new download ID. A completed record remains immutable history: retrying it creates a new ID and resolves destination filename collisions without overwriting the prior file.
| Operation | Identity | Partial data |
|---|---|---|
resume <id> |
Preserves the existing ID | Revalidates and continues safe partial state |
retry <id> |
Creates a new ID | Starts a clean transfer from the historical URL |
remove <id> |
Deletes a historical record | Removes Argo-owned partial data but never a completed file |
clear |
Removes safe terminal history | Preserves active, queued, and paused work |
Commands
Section titled “Commands”argo add https://example.org/archive.isoargo add --checksum sha256:<64-hex-digits> https://example.org/archive.isoargo listargo show <id>argo pause <id>argo resume <id>argo cancel <id>argo retry <id>argo verify <id>argo remove <id>argo clearargo doctorA canceled download can resume only when valid partial state still exists and the remote resource supports a safe continuation. Argo checks Range behavior plus available ETag or Last-Modified validators before appending. If those checks fail, use retry for a clean transfer.
Active downloads cannot be silently removed. Completed files are never deleted by remove or clear.
When a SHA-256 checksum is supplied, Argo syncs the partial data, enters verifying, and compares the complete transfer before final placement. A mismatch becomes a failed, recoverable history record and is never published as a completed file. verify <id> rechecks an existing completed file, while retry <id> preserves the original checksum on the new transfer.
Progress and recovery
Section titled “Progress and recovery”Argo records progress frequently during startup, then checkpoints after roughly 1 MiB per stream/chunk or one second of incoming progress. Partial data is synced before offsets are committed. A clean pause waits for the remaining checkpoint; abrupt daemon termination may require downloading the last uncheckpointed bytes again.
A failed final placement retains recovery information rather than claiming completion. After repairing the destination problem, resume can finish publication without duplicating an already-published file. A restart also recovers pending finalization journals.
Scheduler priority
Section titled “Scheduler priority”argo priority <id> highargo priority <id> normalargo priority <id> lowPriority determines admission order among queued Argo downloads. It does not preempt an active transfer and does not configure system traffic shaping.
Watch mode
Section titled “Watch mode”argo watchIn an interactive terminal, watch redraws a single dashboard region in place. Ctrl+C restores the terminal. When output is piped, Argo prints one deterministic snapshot and exits instead of emitting an endless stream of control sequences.
argo tuiThe TUI is another client of argod. It lists downloads, keeps selection visible, shows full selected details, reports network and policy state, and exposes add, pause, resume, cancel, retry, remove, clear, priority, profile, and policy actions. Press ? for its current key reference. Leaving the TUI does not stop downloads.
Set NO_COLOR=1 to disable ANSI color in ordinary CLI output.
Machine-readable output
Section titled “Machine-readable output”list, show, status, and doctor accept --json:
argo list --jsonargo show <id> --jsonargo status --jsonargo doctor --jsonThe output is a JSON document with schema_version, kind, and data. Schema version 1 contains the current typed command result, emits no terminal styling, and redacts credentials and query values from URLs and diagnostic messages.
| Exit code | Meaning |
|---|---|
| 0 | Success |
| 1 | General failure |
| 2 | Usage or invalid request |
| 3 | Daemon unavailable |
| 4 | Download not found |
| 5 | Network failure |
| 6 | Traffic policy unavailable |