Skip to content

CLI

The YouViCo CLI is the quickest way to use YouViCo from a terminal. It uses the official JavaScript SDK under the hood and prints command results as JSON.

Install

The CLI supports Node.js 20 and higher.

bash
npm install -g @youvico/cli

Check that the command is available:

bash
youvico --help

Authenticate

Create an API key in Settings → API Keys, then save it locally:

bash
youvico auth api

Saved API keys are stored in ~/.config/youvico/config.json with 0600 permissions. The key is never printed in CLI output.

You can also provide an API key with an environment variable:

bash
YOUVICO_API_KEY=YOUR_API_KEY youvico project search --query "launch"

Check or clear the saved key:

bash
youvico auth status
youvico auth clear

Configure the client

Use config commands to inspect or override client options.

bash
youvico config get
youvico config set --base-url https://api.youvico.com
youvico config set --timeout-ms 30000
youvico config clear --base-url
youvico config clear --timeout-ms
youvico config clear

Common examples

Search projects:

bash
youvico project search --query "launch"

Upload a local file:

bash
youvico file upload.file \
  --project bdbff5de-96d7-468f-9db0-85fe28bd6b62 \
  --path ./launch.mp4 \
  --name launch.mp4

List comments on a file:

bash
youvico comment list --file FX1234567890ABCD

List comments on a project:

bash
youvico comment list --project bdbff5de-96d7-468f-9db0-85fe28bd6b62

Create a project comment:

bash
youvico comment create \
  --project bdbff5de-96d7-468f-9db0-85fe28bd6b62 \
  --content "Ready for review."

For endpoint-specific commands, open the matching API reference page and switch the example tab to CLI.

Upload files

For local file uploads, use youvico file upload.file.

bash
youvico file upload.file \
  --project bdbff5de-96d7-468f-9db0-85fe28bd6b62 \
  --path ./launch.mp4 \
  --name launch.mp4

The CLI uses the SDK files.upload helper. It starts the multipart upload, uploads each part, and completes the upload automatically.

Comment attachments

Comment attachment commands require CLI 3.0.0 or later.

Use exactly one of --file or --project, and provide the required local --path.

Upload an attachment for a file comment:

bash
youvico comment-attachment upload \
  --file FX1234567890ABCD \
  --path ./review-note.pdf

Upload an attachment for a project comment:

bash
youvico comment-attachment upload \
  --project bdbff5de-96d7-468f-9db0-85fe28bd6b62 \
  --path ./review-note.pdf

The CLI uses the matching SDK helper: commentAttachments.uploadForFile or commentAttachments.uploadForProject. It handles the full multipart workflow. --name defaults to the local file name.

Attach the returned ID when creating a comment. --attachment can be repeated, and --content can be omitted when at least one attachment is provided.

bash
youvico comment create \
  --project bdbff5de-96d7-468f-9db0-85fe28bd6b62 \
  --attachment CA1234567890ABCD

Delete an attachment:

bash
youvico comment-attachment delete \
  --id CA1234567890ABCD \
  --yes

Output and confirmations

Read commands print their result as JSON. Delete, auth, and config commands print a short confirmation message instead.

Most delete commands ask for confirmation before running. Pass --yes to skip the prompt in scripts:

bash
youvico file delete \
  --id FX1234567890ABCD \
  --yes

Skill Registry delete commands do not prompt and do not accept --yes.

Get help

Use --help on any command group or command:

bash
youvico file --help
youvico file upload.file --help
youvico comment-attachment --help
youvico comment-attachment upload --help
youvico comment-reaction --help

Command behavior

On multipart upload pages, the CLI tab may show a managed helper command that completes the full workflow rather than calling only the documented endpoint.

Comment commands target either a file or a project. Use exactly one of --file or --project; --anchor and --duration are only valid with --file.

For comment create:

  • Provide at least one of --content, --anchor, or --attachment.
  • Repeat --attachment to attach multiple files.
  • Use --duration only with --anchor. The CLI value must be a positive integer; the HTTP API and SDK also accept duration: 0.

CLI 3.0.0 renamed the reaction command group to comment-reaction.