Skip to main content
The Youka CLI wraps the public API so you can create karaoke from a song, customize the lyrics and video style, and export a finished MP4 from your terminal or from an agent.

Install

npm install -g @youka/cli
Verify the install:
youka --version
youka --help

Set up auth

1

Get an API key

Go to online.youka.io/account, open API keys, and copy a new key.
2

Save the key

Persist the key to ~/.youka/config.json:
youka login YOUR_API_KEY
Or export it as an environment variable:
export YOUKA_API_KEY=YOUR_API_KEY

Create karaoke from a file

Use a local audio or video file as the source:
youka project create ./song.mp3 --download --output ./karaoke.mp4 --wait --json
That uploads the source, creates the karaoke project, renders an export, and downloads the finished MP4 video.

Create karaoke from a URL

Pass an HTTP or HTTPS source URL instead of a file path:
youka project create "https://example.com/song.mp4" --download --output ./karaoke.mp4 --wait --json
For hosted video URLs, Youka uses yt-dlp to download from the URL. You can install the URL download dependencies before the first URL import:
youka deps ensure --for url

Reference

Account

Log in, log out, and inspect auth state.

Credits

Inspect current balance and expiring credit packages.

Billing

Show pricing and create checkout or portal URLs.

Projects

Create, inspect, wait on, and update projects.

Exports

Render cloud or local export artifacts and download them.

Presets

Manage reusable render configurations.

Media

Upload and manage reusable media.

Tasks

Inspect low-level task state when needed.

Dependencies

Inspect and install URL import and local render dependencies.

Global options

Flags available on every command.

Agent-ready by default

Every command supports a machine-readable mode that returns a single JSON envelope with a stable shape. Use these flags to drive the CLI from agents or scripts:
FlagPurpose
--jsonPrint exactly one JSON envelope to stdout. Progress and logs are suppressed.
--body <file|->Merge a JSON payload from a file or stdin. CLI flags override matching fields.
--waitPoll async jobs (project create, exports) until they reach a terminal state.
--idempotency-key <key>Pass an idempotency key to any write operation.
--quietSuppress non-JSON progress output when used with --wait.
--api <url>Override the public API base URL.
JSON envelope shape:
{
  "ok": true,
  "data": {
    /* command result */
  }
}
On failure:
{
  "ok": false,
  "error": {
    "code": "INVALID_INPUT",
    "message": "Human-readable description",
    "details": {
      /* optional */
    }
  }
}
See Global options for the full list.

Cloud vs local export

export create runs in the cloud by default. Pass --local to render on your machine using the bundled Remotion toolchain. Local renders require the render dependencies:
youka deps ensure --for render
See Exports for the full workflow.

What’s next

  • Account - save your API key
  • Projects - create and process projects
  • Exports - render a finished karaoke video
  • AI agents - drive the CLI from an automated workflow