# CLI

> tbx — JSON-out command-line wrapper around @taskbox/tools.

Source: https://taskbox.n.yatsyk.com/docs/cli

# @taskbox/cli

`tbx` is the JSON-out command-line surface over [`@taskbox/tools`](/docs/tools).
It speaks Podman by default, prints `TaskResult` JSON on stdout, and uses the
PRD §16.5 exit-code map (e.g. `2` schema, `3` runtime, `4` image, `5`
timeout, `7` network, `9` artifact, `10` tool exit). Pass `--jsonl` to stream
events as they happen.

* **Stability:** beta
* **Platforms:** node (Linux/macOS with Podman)

## Install

```bash
npm i -g @taskbox/cli
# or
npx @taskbox/cli doctor
```

## Subcommands

| Command                     | What it does                                                                                                          |
| --------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `tbx doctor`                | Verifies Podman is reachable, prints rootless flag and version.                                                       |
| `tbx prepare`               | Pulls the kitchen-sink image (`pullPolicy: if-missing`) and prints its digest.                                        |
| `tbx media subtitles <url>` | Downloads subtitles for `<url>`. Honours `--languages`, `--format`, `--auto`, `--proxy`, `--output-dir`, `--timeout`. |

## Quick example

```bash
tbx doctor
tbx prepare
tbx media subtitles https://youtu.be/jNQXAC9IVRw \
  --languages en,de --format srt --output-dir /tmp/subs --timeout 60s
```

See [Getting Started](./getting-started.mdx) for the full flag walkthrough or
[API](./api.mdx) for exit codes and the JSON / JSONL output shapes.
