Academy · Developer docs

@tabor8/uploader

A command-line tool that uploads a folder of video footage to a Tabor8 project. Useful when the footage is already on a server, when you want uploads in a script, or when a browser upload is not practical for the file sizes involved.

Install

Node.js 20 or newer. Install it globally for a tabor8 command, or run it with npx:

shell
npm install -g @tabor8/uploader
# or, without installing:
npx @tabor8/uploader --help

Authenticate

Run tabor8 auth once. It prompts for an API key from Dashboard → Settings → API Keys (keys start cm_live_), verifies it by listing your projects, and saves it to ~/.clipmine/config.json with 600 permissions. It is not passed as a flag and not stored in shell history.

shell
tabor8 auth
# Paste your API key from https://tabor8.com/dashboard/settings/api-keys: ****

Upload a folder

shell
tabor8 upload ./wedding-cards --project "Smith Wedding"

# preview without uploading or authenticating:
tabor8 upload ./wedding-cards --project "Smith Wedding" --dry-run

Only video files are picked up - other file types in the folder are ignored, not uploaded. Each file shows a progress bar, transfer rate and ETA. When every file is in, the scan is triggered automatically and the run reports how many uploaded, how many were skipped, and how many failed, with a reason for each.

Flags for upload

FlagRequiredWhat it does
--project "Name"RequiredThe Tabor8 project to upload into. If no project with that name exists, it is created for you.
--dry-runOptionalList the files that would be uploaded and their total size, then stop. Needs no authentication - it only scans locally.
--base-url URLOptionalPoint at a different Tabor8 instance. Defaults to https://tabor8.com.

Notes

  • The project name match is exact. Anything that does not match an existing project name creates a new project, with a slug derived from the name.
  • A large upload can be re-run - files that already registered are reported as skipped rather than sent again.
  • The config file uses the historical ~/.clipmine/ path, from before the rebrand. The CLI command and the service are Tabor8.

Package: @tabor8/uploader on npm. Once your footage is up, an AI agent can read the sorted result through @tabor8/mcp.

Apply for beta access