Skip to main content
The Shelfforce CLI (sf) lets you turn shelf photos into structured data directly from your terminal. Analyze images, manage stores and tasks, pull reports, and more.

Install

This gives you two commands: sf (short) and shelfforce (full name).

Authenticate

This opens your browser to authorize the CLI. Sign in (or sign up), click Connect CLI, and you’re authenticated. The key is stored locally at ~/.shelfforce/auth.json. For CI or non-interactive environments, pass the key directly:
Or set an environment variable:

Analyze images

Single image (URL)

The CLI submits the image, polls for results, and displays a product table with share-of-shelf breakdown.

Single image (local file)

The CLI uploads the file, then analyzes it. Supports JPEG, PNG, and WebP.

Batch (directory)

Pass a directory and the CLI uploads all images, submits them as a batch, polls each until complete, and shows combined results with share of shelf across all images.

Batch (text file with URLs)

Pass a .txt file with image URLs (one per line or space-separated). The CLI submits them all as a batch and polls for combined results.

Options

Output

The CLI shows a product table and share-of-shelf breakdown:
With --save, results are saved as:
  • ~/Downloads/run-2026-03-30T10-30-00.json — full JSON with products and stats
  • ~/Downloads/run-2026-03-30T10-30-00.csv — product data as CSV

Manage resources

Standard CRUD operations for all resource types:
All commands support --json for machine-readable output:

Reports

Check usage

Shows remaining credits, PAYG balance, rate limits, and batch size limit.

Interactive shell

Run sf with no arguments to enter the interactive shell:
You get a home screen with your account info and available commands. Type commands without the sf prefix:
The shell supports:
  • Command history (up/down arrows)
  • Cursor movement (left/right, option+left/right for word jump)
  • Word deletion (option+backspace, ctrl+w)
  • Line editing (ctrl+a start, ctrl+e end, ctrl+k delete to end)

Profiles

Manage multiple environments:

Environment variables