Skip to main content
An artifact is a file you keep so people can fetch it later: a binary, an archive, a report. It’s stored sealed in object storage under your project’s key, expires on its own, and can be shared through a signed link that needs no account.

Store one

  • --expires sets how long it’s kept: from a minute to 30 days, 7 days by default.
  • --link also makes a signed download link lasting that long. A link never outlives its artifact.
  • --project picks whose key seals it; by default, the folder’s git remote and path.
  • --name stores it under another name. Artifacts are at most 2 GiB.

Share it

Anyone with the link can download it until the link expires:
Make another link at any time:
A link that’s been altered gets 403; once the artifact expires or is deleted, its links get 410.

Fetch it

get writes to a temporary file, checks the size and the sha256, and only then moves it into place.

List and delete

Deleting removes its stored objects and stops its links. Expired artifacts are deleted for you. Shredding the project deletes every artifact sealed under its key.

How it’s stored

The file is cut into the same content-defined chunks as file sync. Each chunk is sealed under the project’s key and packed into segments, with a sealed manifest that lists the chunks in order. A download opens each chunk and checks it against the manifest as it streams. A chunk out of place stops the download short of its Content-Length, so no client takes a damaged file as whole.