DocsVERDIQT.CLI.0.1

Set up in 30 seconds.

Three steps: mint a token, run one install command, paste the token when asked. After that it’s a guided menu — pick what to scan, drop a file or paste a URL, the verdict opens in your browser. No flags to memorise.

Step 1 · Mint & copy

Open Settings → API tokens in the workbench. Click Mint token, then click Copy install command in the green panel that appears. Your clipboard now holds the full one-line installer with your token already baked in — no placeholder to replace.

The token is shown once and never again. Treat it like a password. Revoke or rotate from the same page.

Step 2 · Paste in your terminal

Open Terminal, paste, press Enter. The installer downloads the binary, registers it on $PATH, persists your token, and drops you straight into the wizard. The line on your clipboard looks like:

curl -fsSL https://useverdiqt.vercel.app/cli/install.sh | sh -s -- --token vrdq_… && exec $SHELL

The installer writes to /usr/local/bin/verdiqt when writable, otherwise ~/.local/bin/verdiqt (no sudo), and appends one export PATH=… line to your shell rc — idempotent, never duplicated. The trailing exec $SHELL reloads your shell on wizard exit so future verdiqt calls pick up the new $PATH automatically. Requires Node 20+. ffmpeg is only needed for video scans.

Step 3 · You’re in

The wizard menu opens automatically. Arrow keys to move, Enter to pick, Esc to cancel a step. When it asks for ad copy, just paste — Enter submits, Option+Return (or \ + Enter) inserts a manual newline.

The wizard creates a ~/verdiqt/<your-campaign>/creatives/ folder, opens it in Finder, and waits for you to drop in your assets. Pick what you’re scanning — Copy · Image · Video · Landing page — and the verdict pops open in your browser.

Need to start the wizard again later? Just run verdiqt.

Manual fallback · build the line yourself

Locked out of clipboard access, scripting the install, or just prefer to type it? Copy the bare vrdq_… string from the same green panel (the second copy button, below the divider) and paste it into:

curl -fsSL https://useverdiqt.vercel.app/cli/install.sh | sh -s -- --token vrdq_REPLACE_ME && exec $SHELL

Pass --no-modify-path (or set NO_MODIFY_PATH=1) to skip the rc edit on shared / locked-down machines.

That’s it.

Most people stop here. The rest of this page is reference material for technical users: one-shot install for agents, CI gating, environment variables, exit codes, troubleshooting.

Advanced · One-shot install for agents

Pass the token at install time so the CLI is ready on first invocation — no interactive prompt. Use this from automation, CI, or when scripting setups:

curl -fsSL https://useverdiqt.vercel.app/cli/install.sh | sh -s -- --token vrdq_REPLACE_ME --no-modify-path

--no-modify-path skips the shell rc edit so CI boxes stay clean — wire $INSTALL_DIR on PATH yourself in the workflow definition. --dir <path> forces the install location, --base-url <url> points at a non-production deploy. Confirm with verdiqt me.

Advanced · One-shot scan via flags

Text
verdiqt scan --platform meta --industry health_supplements \
  --copy "30-day weight-loss challenge with Lean Greens" \
  --url https://example.com/lean-greens
Image
verdiqt scan -p google -i finance --image creative.png \
  --copy "Pay off debt 5x faster" --url https://example.com/loans
Video — needs ffmpeg + ffprobe on PATH
verdiqt scan -p tiktok -i crypto --sub-mode paid \
  --video promo.mp4 --jurisdiction UK \
  --legal-layer asa_uk --legal-layer ftc_substantiation
  • · --legal-layer <id> repeatable: ftc_substantiation, finra_finance, asa_uk, asci_india, eu_dsa
  • · --jurisdiction US|UK|EU|IN|AU (default US)
  • · --json raw scan payload, --quiet only the verdict tier on stdout

Advanced · CI gating

verdiqt scanexits with the verdict tier — fail the build on whatever you can’t ship:

verdiqt scan -p meta -i ecommerce \
  --copy "$AD_COPY" --url "$LANDING" || exit $?

Fails on warn (1), demonetize (2), or fail (3). Append || true to never gate.

Advanced · Other commands

verdiqt me                              # tier + quota + token info
verdiqt scans list --platform meta      # paginate scan history
verdiqt scans get <scan-id>             # single scan summary
verdiqt scans feedback <id> --rating up
verdiqt batch upload ads.csv --label "Q2 launch"
verdiqt batch wait <batch-id>           # polls until completed / failed
verdiqt batch export <batch-id> -o results.csv

CSV columns: headline, body, callouts, destinationUrl, platform, industry, subMode, jurisdiction, legalLayers. Pass --no-headers if your CSV has no header row.

Reference · Environment variables

VariableEffect
VERDIQT_TOKENOverrides the stored token. Use this in CI.
VERDIQT_BASE_URLOverride the API base URL (e.g. http://localhost:3000).
VERDIQT_DEBUG=1Print stack traces for unexpected errors.
NO_COLORDisable ANSI colors.

Reference · Exit codes

CodeMeaning
0pass verdict
1warn verdict
2demonetize verdict (YouTube creator yellow-icon)
3fail verdict
100Error (network, auth, bad input, missing ffmpeg, etc.)

Troubleshooting

  • ·command not found: verdiqt — your $PATHdoesn’t include the install dir. The installer auto-appends the export to your shell rc (~/.zshrc, ~/.bash_profile, or ~/.config/fish/config.fish); open a new terminal or source the file. Pass --no-modify-path (or set NO_MODIFY_PATH=1) to opt out and add it yourself.
  • ·Token rejected — it might have been revoked. Mint a new one at /settings and run verdiqt again — the wizard prompts for a replacement.
  • ·ffmpeg is not on PATH — install with brew install ffmpeg (macOS) or apt-get install ffmpeg (Debian / Ubuntu). Only needed for video scans.
  • ·Quota or budget reached (HTTP 402) — demo tier has 1 scan / day. Email the contact returned by verdiqt me to upgrade.
  • ·Server timed out after 60s— heavy landing pages can blow Vercel Hobby’s function cap. Retry — the function should be warm now. The async runner picks up where it left off on the next attempt.