Browse docs
Docs / CLI Reference / swarmfile-lfs-transfer

swarmfile-lfs-transfer

swarmfile-lfs-transfer is Swarmfile's git-LFS custom transfer agent. git-lfs invokes it - it is not a command you run by hand. Point lfs.url at your Swarmfile project and set git-lfs to use this agent as the transfer, and pushes/pulls of any size flow through it (chunked, resumable).

It is the engine's own agent exposed as a standalone binary. The distributed entry point is the engine subcommand swarmfile-engine lfs-transfer (the engine binary already ships on every platform); this bin exists for a dedicated swarmfile-lfs-transfer on PATH or for dev/testing. Both share the same logic.

Don't confuse it with swarmfile-lfs - the standalone chunked-LFS agent that stock git-lfs points lfs.url at directly. swarmfile-lfs-transfer is the transfer agent git-lfs spawns; swarmfile-lfs is the higher-level agent and reflect tool, and it ships on PATH with every desktop install (alongside the separate Homebrew/cargo/curl | sh channel for machines without the app).

How git-lfs calls it#

git-lfs spawns a configured custom transfer agent with an operation and remote, and talks to it over stdio (the LFS transfer protocol). It takes no flags of its own. Configure it per project:

git config lfs.url "https://hub.swarmfile.com/orgs/<org>/lfs/<project>"
git config lfs.standalonetransferagent swarmfile
git config lfs.customtransfer.swarmfile.path swarmfile-lfs-transfer

See git-LFS for the full setup, the .lfsconfig auto-PR flow, and how LFS objects are billed and reflected onto the mount.

Notes#

  • LFS bytes are metered and storage-billed like any other content - there is no separate LFS SKU.
  • Managed-tier LFS objects written through the block paths are encrypted like everything else; the direct presigned-PUT path stores plaintext even on managed (see the git-LFS guide), and E2E projects refuse LFS outright.
  • Because it is spawned by git-lfs, there is nothing to run interactively; if you need a human-facing status, use the mount or swarmfile status.