---
title: "FAQ"
description: "Kurze Antworten auf die Fragen, die beim Einsatz von verbatra am häufigsten aufkommen, von den Kosten eines Laufs bis zu dem, was du committen solltest."
type: "reference"
---
# FAQ

Kurze Antworten auf die Fragen, die beim Einsatz von verbatra am häufigsten aufkommen, von den Kosten eines Laufs bis zu dem, was du committen solltest.

Kurze Antworten mit einem Link auf die Seite, die die Details hat. Zu Fehlermeldungen siehe
[Fehlerbehebung](https://verbatra.kreitz-webdev.de/de/docs/troubleshooting.md) und [Fehlercodes](https://verbatra.kreitz-webdev.de/de/docs/error-codes.md).

## Wie kontrolliere ich die Kosten? [#wie-kontrolliere-ich-die-kosten]

Läufe sind inkrementell, also erreichen nur fehlende oder geänderte Keys den Provider, und ein
unverändertes Projekt kostet beim erneuten Lauf nichts. `verbatra translate --estimate` bemisst
einen Lauf, ohne einen Provider aufzurufen, und `--max-tokens` oder `maxTokens` in der Konfiguration
deckeln ihn. Siehe [Kosten abschätzen](https://verbatra.kreitz-webdev.de/de/docs/estimating-cost.md).

## Was kostet ein Lauf tatsächlich? [#was-kostet-ein-lauf-tatsächlich]

Wenig: 400 Keys in 3 Locales mit `gemini-2.5-flash` ergeben etwa 72.000 Tokens, die du mit dem
aktuellen Tarif deines Providers bepreist, und spätere Läufe zahlen nur für die Strings, die du
geändert hast. Wie du einen Lauf abschätzt, wo jeder Provider seine Tarife veröffentlicht und wie
du an deinem eigenen Projekt kalibrierst, steht in [Kosten abschätzen](https://verbatra.kreitz-webdev.de/de/docs/estimating-cost.md).

## Mit welchem Provider soll ich anfangen? [#mit-welchem-provider-soll-ich-anfangen]

Mit Gemini, denn mit seiner kostenlosen API-Stufe übersetzt du ein ganzes Projekt ohne Kosten, und
ein späterer Wechsel heißt, eine `id` zu ändern. Halte vertrauliche Strings von der kostenlosen
Stufe fern: siehe
[Datenverarbeitung und Datenschutz](https://verbatra.kreitz-webdev.de/de/docs/data-handling.md#aufbewahrung-und-auftragsverarbeitung-beim-anbieter).
Alle Provider im Vergleich findest du unter [Provider](https://verbatra.kreitz-webdev.de/de/docs/providers.md).

## Kann ich ein lokales Modell verwenden? [#kann-ich-ein-lokales-modell-verwenden]

Ja: Der Provider `openai-compatible` richtet verbatra auf jeden Server, der die OpenAI-Chat-API
spricht, etwa LM Studio, Ollama oder vLLM, meist ohne Schlüssel. Ganz ohne Sprachmodell nutzt
`libretranslate` einen selbst gehosteten LibreTranslate-Server. Siehe
[Provider](https://verbatra.kreitz-webdev.de/de/docs/providers.md#libretranslate).

## Welche Sprachen unterstützt verbatra? [#welche-sprachen-unterstützt-verbatra]

Jede Sprache, die dein Provider unterstützt, geschrieben als gültiger BCP-47-Code wie `pt-BR` oder
`zh-Hant`. DeepL und Google Cloud Translation haben feste Listen, die LLM-Provider keine. Siehe
[Sprachunterstützung](https://verbatra.kreitz-webdev.de/de/docs/language-support.md).

## Wie behalten Keys ihre Reihenfolge? [#wie-behalten-keys-ihre-reihenfolge]

Bestehende Keys behalten ihre Position, und neue Keys werden in der Reihenfolge der Quelle
angehängt, sodass sich eine übersetzte Datei sauber diffen lässt. Siehe [Formate](https://verbatra.kreitz-webdev.de/de/docs/formats.md).

## Warum wurde eine Übersetzung zum Review markiert? [#warum-wurde-eine-übersetzung-zum-review-markiert]

Eine Review-Heuristik hat etwas gefunden, das einen zweiten Blick wert ist, etwa eine Übersetzung,
die ihrer Quelle gleicht, und sie markiert, ohne sie zurückzuhalten. Jeder Grund-Code steht unter
[Review-Gründe](https://verbatra.kreitz-webdev.de/de/docs/error-codes.md#review-reason-codes).

## Funktioniert verbatra in einem Monorepo? [#funktioniert-verbatra-in-einem-monorepo]

Ja. Die Suche nach der Konfiguration geht vom Arbeitsverzeichnis nach oben und hält beim nächsten
`.git` an, sodass ein Paket seine eigene Konfiguration findet und die Wurzel die der Wurzel;
`--cwd` und `--config` zeigen auf jeden anderen Ort. Siehe [Die Konfigurationsdatei](https://verbatra.kreitz-webdev.de/de/docs/config-file.md).

## Was soll ich committen? [#was-soll-ich-committen]

Committe deine Locale-Dateien, `verbatra.lock.json` und `verbatra.provenance.json`; nie `.env`,
`.env.local`, `.verbatra-local/` oder `verbatra.cache.json`, die `verbatra init` in die
`.gitignore` einträgt. Siehe [Die Lock-Datei](https://verbatra.kreitz-webdev.de/de/docs/the-lock-file.md).

## Wie übersetze ich alles neu? [#wie-übersetze-ich-alles-neu]

Lösch die Locale-Datei und führe `verbatra translate` aus: Dann fehlt jeder Key und wird frisch
übersetzt. Die Lock-Datei zu löschen reicht nicht, denn ohne Baseline gelten vorhandene
Übersetzungen als aktuell. Für einen einzelnen Key nimm die Neuübersetzen-Aktion in Studio oder
`retranslateEntry`.

## Muss ich das SDK installieren, wenn ich die CLI nutze? [#muss-ich-das-sdk-installieren-wenn-ich-die-cli-nutze]

Kein zusätzlicher Schritt: `@verbatra/cli` hängt von `@verbatra/sdk` ab, also kommt es mit. Nur
`@verbatra/studio` und `@verbatra/mcp` sind eigene, optionale Installationen.

## Wo leben API-Schlüssel? [#wo-leben-api-schlüssel]

Nur in Umgebungsvariablen, die die CLI auch aus
[`.env.local` und `.env`](https://verbatra.kreitz-webdev.de/de/docs/cli.md#umgebungsdateien) liest. Die Konfiguration lehnt unbekannte Keys
ab, damit kein Secret in einer committeten Datei landet. Siehe [Provider](https://verbatra.kreitz-webdev.de/de/docs/providers.md).

## Schickt verbatra meine Strings irgendwohin? [#schickt-verbatra-meine-strings-irgendwohin]

Nur an den Provider, den du konfigurierst, und nur, wenn ein Befehl übersetzt; es gibt keine
Telemetrie. Mit `provider: { id: "none" }` verlässt nichts den Rechner. Siehe
[Datenverarbeitung und Datenschutz](https://verbatra.kreitz-webdev.de/de/docs/data-handling.md).

## Was prüft verbatra doctor eigentlich? [#was-prüft-verbatra-doctor-eigentlich]

<AvailableFrom version="0.9.0" />

Die Einrichtung in einem Durchgang, ohne Übersetzungsaufruf und ohne den Wert eines Schlüssels zu
lesen, außer du übergibst `--live`, das ihn sendet, um die Sprachliste des Providers abzurufen:
Konfiguration, Format, Provider, die Variable des API-Schlüssels, die Netzwerkrichtlinie,
die Quelldatei und die Sprachunterstützung, dazu informative Berichte zu Pluralen, Locale-Codes und
zurückgebliebenem Locale-Stand. [`verbatra doctor`](https://verbatra.kreitz-webdev.de/de/docs/cli/doctor.md) hat die vollständige Tabelle
der Prüfungen.

## Kann ein KI-Agent verbatra für mich einrichten oder bedienen? [#kann-ein-ki-agent-verbatra-für-mich-einrichten-oder-bedienen]

Ja, über vier Oberflächen: einen Einrichtungs-Prompt für Coding-Agenten
([Mit einem KI-Agenten einrichten](https://verbatra.kreitz-webdev.de/de/docs/start-with-ai.md)), die `--json`-Ausgabe für deine eigenen
Schleifen ([Rezepte für Agenten und Skripte](https://verbatra.kreitz-webdev.de/de/docs/agent-recipes.md)), WebMCP-Tools in einem offenen
Studio-Tab ([Studio mit einem Browser-Agenten steuern](https://verbatra.kreitz-webdev.de/de/docs/agent-tools-in-studio.md)) und einen
stdio-MCP-Server ([`verbatra mcp`](https://verbatra.kreitz-webdev.de/de/docs/cli/mcp.md)). Studio und der MCP-Server geben beim Provider nur
hinter einem `--allow-spend`-Flag Geld aus; in der `--json`-Schleife gibt ein echtes `translate`
sofort Geld aus, also muss dein Skript oder Agent vorher das Okay eines Menschen einholen.

## Veröffentlicht diese Seite etwas für KI-Agenten und Crawler? [#veröffentlicht-diese-seite-etwas-für-ki-agenten-und-crawler]

Ja, drei statische Dateien, zur Build-Zeit generiert und immer auf Englisch, egal welche Locale du
gerade ansiehst:

- [`/llms.txt`](https://verbatra.kreitz-webdev.de/llms.txt): ein kuratierter Index mit Titel und Beschreibung jeder Doc-Seite,
  gruppiert wie die Sidebar, als Markdown-Links.
- [`/llms-full.txt`](https://verbatra.kreitz-webdev.de/llms-full.txt): die komplette Dokumentation in einer Datei, der gerenderte
  Inhalt jeder Seite der Reihe nach aneinandergehängt, für einen Agenten, der Inhalte direkt
  einliest, statt Links zu folgen.
- [`/.well-known/ai.txt`](https://verbatra.kreitz-webdev.de/.well-known/ai.txt): eine Nutzungsrichtlinie, die KI-Crawlern sagt,
  dass dieses Projekt MIT-lizenziert ist und Crawlen, Indexieren und Zitieren dieser Inhalte
  willkommen ist.

Alle drei sind aus der Footer-Spalte "Für KI-Agenten" verlinkt.

## Ist der Inhalt dieser Seite KI-übersetzt? [#ist-der-inhalt-dieser-seite-ki-übersetzt]

Größtenteils, auf zwei verschiedenen Wegen. Der UI-Rahmen (Navigationsbeschriftungen, Buttons, der
Footer, der Landingpage-Text, die Landing-FAQ) lebt in `messages/en.json` und seinen `de`-, `es`-
und `fr`-Geschwistern; die werden mit verbatra selbst maschinell übersetzt, gegen das Format
`next-intl-json`, über den Gemini-Provider, indem nach einer Änderung der englischen Quelle
`pnpm i18n` ausgeführt wird. Das Projekt nutzt hier sein eigenes Tool (Dogfooding), und der Workflow
`docs-i18n-check` lässt einen Pull Request scheitern, dessen Locale-Dateien von der englischen
Quelle abweichen. Die Doku-Prosa, die du gerade liest, jeder Guide und jede Referenzseite
einschließlich dieser hier, ist locale-suffigiertes MDX (`page.mdx`, `page.de.mdx`, `page.es.mdx`,
`page.fr.mdx`) und ebenfalls KI-übersetzt, nur außerhalb dieser automatisierten Pipeline:
`pnpm i18n` übersetzt nur die strukturierten [Locale-Dateiformate](https://verbatra.kreitz-webdev.de/de/docs/formats.md), nie Markdown, es rührt
diese Seiten also nie an. Stattdessen übersetzt ein KI-Agent eine Doku-Seite in derselben Änderung,
die ihre englische Quelle bearbeitet, sodass alle vier Sprachen gemeinsam landen; deshalb trägt jede
nicht-englische Seite den Hinweis auf die maschinelle Übersetzung.

Nicht alles kommt unverändert aus diesen beiden Schritten: Einige Texte, darunter Teile der
rechtlichen Seiten, wurden stattdessen direkt in den Locale-Dateien verfasst oder korrigiert.
Übersetzungen werden nach bestem Bemühen geprüft, und nicht jeder übersetzte Text wird vor der
Veröffentlichung von einem Menschen durchgesehen, daher kann eine Übersetzung Fehler enthalten. Die
[Datenschutzerklärung](https://verbatra.kreitz-webdev.de/privacy) beschreibt denselben Ablauf.

Wenn dir im Deutschen, Spanischen oder Französischen etwas seltsam vorkommt, eröffne in beiden
Fällen ein Issue: Bei UI-Texten landet die Korrektur in der englischen Quelle und wird neu
übersetzt, oder direkt in der betroffenen Locale-Datei; bei Doku-Prosa bearbeite die MDX-Datei
direkt und schicke einen Pull Request.
