---
seo_title: CLI für Dateikonvertierung & Web-Daten im Terminal | EnConvert
meta_desc: Installieren Sie die enconvert CLI über Homebrew, curl, Scoop oder npm. Konvertieren Sie Dateien, rendern Sie URLs als PDF und holen Sie Web-Daten ins Terminal.
keywords: dateikonvertierung kommandozeile, dateien konvertieren terminal cli, url zu pdf kommandozeile, homebrew dateikonverter cli, scoop dateikonverter, npm cli dateikonvertierung, web-daten cli für agenten, jq json ausgabe cli, enconvert cli
---

# EnConvert CLI — Dateikonvertierung & Web-Daten von der Kommandozeile

`enconvert` ist die offizielle Kommandozeilen-Schnittstelle für die EnConvert-API — konvertieren Sie Dateien über 46 Upload-Routen, rendern Sie URLs und ganze Websites als PDF oder Screenshot und holen Sie agentenfertige Web-Daten (perceive, discover, lookup, distill, ingest), ohne Ihr Terminal zu verlassen. Die CLI wird über Homebrew, ein sha256-verifiziertes Install-Skript, Scoop oder npm installiert, enthält null Telemetrie und ist durchgehend fürs Scripting gebaut: `--json` bei jedem Befehl, ein eingebauter `--jq`-Filter, deterministische Exit-Codes, und konvertierte Dateien landen auf der Festplatte, während der Pfad auf stdout ausgegeben wird.

<div class="alert alert-info">
<strong>npm:</strong> <code>@enconvert/cli</code> · <strong>Quelle:</strong> <a href="https://github.com/enconvert/cli">enconvert/cli</a> · <strong>Lizenz:</strong> MIT · <strong>Telemetrie:</strong> keine
</div>

---

## Installation

**Homebrew** (macOS und Linux):

```bash
brew install enconvert/tap/enconvert
```

**Install-Skript** (macOS und Linux, sha256-verifiziert):

```bash
curl -fsSL https://get.enconvert.com/install.sh | sh
```

**Scoop** (Windows):

```bash
scoop bucket add enconvert https://github.com/enconvert/scoop-bucket && scoop install enconvert
```

**npm** (jede Plattform, Node.js >= 22.12):

```bash
npm i -g @enconvert/cli
```

Prüfen Sie die Installation mit `enconvert --version` und erkunden Sie den vollen Funktionsumfang mit `enconvert --help`.

---

## Authentifizierung

```bash
enconvert auth login
```

Fügen Sie Ihren privaten API-Schlüssel ein (`sk_live_...`) — verdeckte Eingabe, live gegen die API validiert und in `credentials.toml` mit Dateimodus `0600` gespeichert. Jede Anfrage authentifiziert sich über den `X-API-Key`-Header. In CI überspringen Sie `login` und setzen stattdessen `ENCONVERT_API_KEY`.

```bash
enconvert auth status     # where the key comes from, plan, quota
enconvert whoami          # one-line identity check
enconvert usage           # current-period conversion and V2 usage
enconvert auth switch     # change the active profile
enconvert auth logout     # delete the stored key
```

`enconvert auth token` gibt den aktiven Schlüssel aus, um ihn an andere Tools weiterzureichen — kein anderer Befehl zeigt ihn jemals an.

---

## Dateien konvertieren

`enconvert convert` deckt alle 46 Upload-Routen ab — Datenformate, Office-Dokumente, Bilder, universelle Ziele und Komprimierung. Der Endpunkt wird aus der Dateiendung plus `--to` abgeleitet:

| Konvertierung | Befehl | Aufgerufener Endpunkt |
|------------|---------|-----------------|
| DOCX → PDF | `enconvert convert report.docx --to pdf` | `POST /v1/convert/doc-to-pdf` |
| HEIC → WebP | `enconvert convert photo.heic --to webp` | `POST /v1/convert/heic-to-webp` |
| JSON → YAML | `enconvert convert data.json --to yaml` | `POST /v1/convert/json-to-yaml` |
| Markdown → PDF | `enconvert convert README.md --to pdf` | `POST /v1/convert/markdown-to-pdf` |

Globs fächern sich in eine Konvertierung pro Datei auf, und `-o -` streamt Roh-Bytes für Pipes:

```bash
enconvert convert *.heic --to webp
enconvert convert data.csv --to json -o - | jq '.[0]'
```

Standardmäßig wird die konvertierte Datei auf die Festplatte geladen und ihr Pfad auf stdout ausgegeben. `-o out.pdf` wählt das Ziel, `-O` behält den Server-Dateinamen, `--url-only` gibt nur die vorsignierte URL aus, ohne herunterzuladen, und `-o -` schreibt stattdessen die Roh-Bytes auf stdout.

`enconvert formats` listet jede unterstützte Route; `enconvert params <route>` zeigt die Parameter, die ein bestimmter Endpunkt akzeptiert.

---

## URLs & Websites rendern

```bash
enconvert url pdf https://example.com -o page.pdf      # POST /v1/convert/url-to-pdf
enconvert url screenshot https://example.com           # POST /v1/convert/url-to-screenshot
enconvert url markdown https://example.com/article     # POST /v1/convert/url-to-markdown
```

Ganze Websites laufen als asynchrone Batches. Standardmäßig wartet die CLI und zeigt den Fortschritt; `--no-wait` gibt die Batch-ID aus und kehrt sofort zurück:

```bash
enconvert site pdf https://example.com
enconvert site screenshot https://example.com --no-wait
```

---

## Web-Daten für Agenten

Die V2-Befehle bilden 1:1 die V2-Web-Intelligence-Endpunkte ab:

```bash
enconvert perceive https://example.com                               # POST /v2/perceive
enconvert perceive batch urls.txt                                    # async batch, up to 1000 URLs
enconvert discover https://example.com                               # POST /v2/discover
enconvert lookup "best static site generators"                       # POST /v2/lookup
enconvert distill https://example.com/pricing --schema schema.json   # POST /v2/distill
enconvert ingest https://docs.example.com                            # POST /v2/ingest
```

`perceive` rendert eine Seite in einem einzigen Aufruf zu Markdown-, HTML-, Screenshot- und PDF-Artefakten; `discover` zählt die URLs einer Website ohne Rendering auf; `lookup` führt eine Web-, News-, Scholar- oder Maps-Suche aus; `distill` extrahiert strukturierte Daten passend zu Ihrem JSON-Schema; und `ingest` crawlt eine Website in RAG-fertiges, gechunktes JSONL. Ingest-Jobs bringen eigene Helfer mit — `enconvert ingest list`, `enconvert ingest files <job_id>`, `enconvert ingest webhook-secret` — und jedes erzeugte Artefakt lässt sich mit `enconvert files download <id>` abrufen.

Sie arbeiten in einem KI-Assistenten statt im Terminal? `enconvert mcp install` richtet den [EnConvert-MCP-Server](/de/docs/mcp) für Sie ein.

---

## Jobs & Scripting

Jeder Befehl akzeptiert `--json` (ein einzelnes JSON-Dokument), `--jsonl` (Streaming-Zeilen), einen eingebauten `--jq`-Filter und `--template` für eigene Textausgaben:

```bash
enconvert jobs get <job_id> --json --jq .status
```

Asynchrone Arbeit folgt einem Start-/Warten-/Abholen-Muster:

```bash
enconvert site pdf https://example.com --no-wait
enconvert jobs batch <batch_id>
enconvert jobs wait <batch_id> --wait-timeout 600 --exit-status
```

`--exit-status` lässt wartende Befehle mit dem Ergebnis des Jobs beenden, `--poll-interval` steuert den Polling-Takt, `--dry-run` gibt die Anfrage aus, ohne sie zu senden, und `--no-input` deaktiviert jede Eingabeaufforderung für CI. Die Exit-Codes sind stabil und skriptfreundlich:

| Code | Bedeutung |
|------|---------|
| `0` | Erfolg |
| `2` | Bedienfehler — ungültige Flags oder Argumente |
| `4` | Authentifizierung fehlgeschlagen |
| `5` | Rate-Limit überschritten |
| `6` | Plan- oder Kontingentgrenze erreicht |
| `7` | Nicht unterstützte Konvertierung oder Format |
| `8` | Eingabe abgelehnt |
| `9` | Serverfehler oder Job-Fehlschlag |
| `10` | Netzwerkfehler oder Timeout |
| `130` | Mit Strg-C abgebrochen |

---

## Der Befehl `api`

Ein Passthrough im gh-Stil, der jeden EnConvert-Endpunkt erreicht — auch neue, für die die CLI noch kein eigenes Verb hat:

```bash
enconvert api /v2/perceive -f url=https://example.com
enconvert api /v1/convert/status/<job_id> --jq .status
```

`-f` fügt String-Felder hinzu, `-F` fügt typisierte Magic-Felder hinzu (Zahlen, Booleans, `@file` zum Einlesen eines Werts von der Festplatte). Mit Feldern ist die Anfrage ein POST, ohne sie ein GET, und `--jq` filtert die JSON-Antwort direkt.

---

## Konfiguration & Profile

Einstellungen liegen als benannte Profile in `~/.config/enconvert/config.toml`; Schlüssel liegen separat in `credentials.toml` (Modus `0600`); eine projektlokale `.enconvertrc.toml` überschreibt beides:

```toml
[profile.default]
api_url = "https://api.enconvert.com"

[profile.work]
timeout = 120
```

Wählen Sie ein Profil pro Aufruf mit `--profile work`, pro Shell mit `ENCONVERT_PROFILE` oder dauerhaft mit `enconvert auth switch`. `enconvert config` liest und schreibt jede Einstellung von der Kommandozeile aus.

---

## Umgebungsvariablen

| Variable | Zweck |
|----------|---------|
| `ENCONVERT_API_KEY` | API-Schlüssel — überschreibt gespeicherte Zugangsdaten |
| `ENCONVERT_API_URL` | Override der API-Basis-URL |
| `ENCONVERT_PROFILE` | Name des aktiven Profils |
| `ENCONVERT_CONFIG` | Expliziter Pfad zur Konfigurationsdatei |
| `ENCONVERT_CONFIG_DIR` | Override des Konfigurationsverzeichnisses |
| `ENCONVERT_DEBUG` | Ausführliches Request- und Response-Logging |
| `ENCONVERT_NO_INPUT` | Interaktive Eingabeaufforderungen deaktivieren |
| `ENCONVERT_NO_UPDATE_NOTIFIER` | Update-Hinweis stummschalten |
| `NO_COLOR` | Farbige Ausgabe deaktivieren (die NO_COLOR-Familie wird respektiert) |

Flags schlagen Umgebungsvariablen, diese schlagen die projektlokale `.enconvertrc.toml`, und diese schlägt die globale Konfiguration.

---

## Shell-Vervollständigung

```bash
source <(enconvert completion zsh)
```

Fügen Sie diese Zeile Ihrem Shell-Profil hinzu. Vervollständigungen für `bash`, `fish` und `powershell` werden auf dieselbe Weise erzeugt.

---

## Aktualisieren

```bash
enconvert upgrade
```

Erkennt, wie die CLI installiert wurde (Homebrew, Install-Skript, Scoop, npm), und aktualisiert über denselben Kanal. Setzen Sie `ENCONVERT_NO_UPDATE_NOTIFIER=1`, um den täglichen Update-Hinweis stummzuschalten.

---

## Deinstallation

```bash
brew uninstall enconvert          # Homebrew
scoop uninstall enconvert         # Scoop
npm rm -g @enconvert/cli          # npm
rm "$(command -v enconvert)"      # install script
```

Entfernen Sie optional `~/.config/enconvert/`, um Konfiguration und Zugangsdaten zu löschen.

---

## Fehlerbehebung

**`command not found: enconvert` nach `npm i -g`.**
Der npm-Build erfordert Node.js >= 22.12, und das globale bin-Verzeichnis von npm muss in Ihrem `PATH` liegen — prüfen Sie es mit `npm prefix -g`. Die Homebrew-, Install-Skript- und Scoop-Builds sind eigenständige Binaries ohne Node-Voraussetzung.

**Eine umgeleitete Datei enthält einen Dateipfad statt des Dokuments.**
Standardmäßig lädt die CLI die Datei auf die Festplatte und gibt den *Pfad* auf stdout aus — `enconvert url pdf ... > out.pdf` fängt diesen Pfadtext ein. Streamen Sie die eigentlichen Bytes mit `-o -` oder setzen Sie das Ziel mit `-o out.pdf`.

**Exit-Code 4 in CI.**
Kein nutzbarer API-Schlüssel. Setzen Sie `ENCONVERT_API_KEY` in Ihren CI-Secrets; `enconvert auth status` zeigt genau, woher der Schlüssel kommt (oder nicht kommt).

**Ein Befehl hängt in CI.**
Er wartet auf eine interaktive Eingabe. Übergeben Sie `--no-input` (oder setzen Sie `ENCONVERT_NO_INPUT=1`), damit Eingabeaufforderungen sofort fehlschlagen statt zu blockieren.

---

## Links

- **npm** — [@enconvert/cli](https://www.npmjs.com/package/@enconvert/cli)
- **GitHub** — [enconvert/cli](https://github.com/enconvert/cli) (MIT, null Telemetrie)
- **MCP-Server** — [@enconvert/mcp setup](/de/docs/mcp)
- **API-Referenz** — [Endpunkte-Übersicht](/de/docs/endpoints-overview)
- **Fehlercodes** — [Fehlercode-Referenz](/de/docs/error-codes)
