Командная строка
Пакет Python без зависимостей. Без ключа работает как бесплатное демо: 10 000 символов на файл, до 8 языков за запуск.
pip install kaeris kaeris translate en.json --langs de,ja
→ no key: free demo limits 10,000 chars per file, 8 languages per run, get a key: kaeris.dev/developer → Translating en.json → de, ja ✓ Wrote 2 file(s) to /home/you/app /home/you/app/de.json /home/you/app/ja.json ✓ Translation QA: no placeholder loss, no overflow risks
Следующие команды
| Команда | Что делает |
|---|---|
kaeris init | Записывает kaeris.json с вашим исходным файлом, языками и выходной папкой, чтобы kaeris translate запускался без флагов. --preset заполняет его для i18next, react-i18next, next-intl, react-intl, vue-i18n или flutter-arb. |
kaeris translate --only-new | Переводит только новые и измененные ключи. kaeris.lock рядом с исходным файлом запоминает, что было сделано. JSON и ARB. |
kaeris check | Находит сломанные переводы на вашей машине, без ключа. Без Python: npx kaeris check (Node 18+). Описание проверки. |
kaeris languages | Выводит 46 кодов языков. |
kaeris quota | Сколько от месячного объема осталось на вашем ключе. |
Основные флаги
| Флаг | Значение |
|---|---|
--langs de,ja | Целевые языки, разделенные запятыми. Короткая форма -l. |
--out locales | Куда писать файлы. По умолчанию — рядом с исходником. |
--verify | Переводит каждый результат обратно на английский и записывает verify.json, чтобы вы могли проверить смысл. |
--keep 'KAERIS,GitHub' | Слова, которые остаются как есть на всех языках, например названия брендов. |
--context 'a bank app' | Одна строка о вашем приложении. Помогает со словами, у которых два значения. |
--tone formal | neutral, formal или casual. |
--model openai/gpt-4.1 | Lifetime: модель OpenRouter для перевода. Своя для каждого языка — models в kaeris.json. На других тарифах запрос отклоняется с объяснением. |
--key | Ваш ключ API. Или задайте KAERIS_API_KEY — так безопаснее: ключ, набранный после --key, остаётся в истории оболочки и виден в списке процессов. |
--source-lang en | Язык исходного файла. По умолчанию en; также распознаёт структуру locales/<lang>/<namespace>.json. |
--back-lang en | Язык, на который --verify переводит обратно. По умолчанию en. |
--lock PATH | Где лежит kaeris.lock. По умолчанию — рядом с исходником. |
--assume-current | Первый запуск --only-new на уже переведённом проекте: доверять существующим переводам, а не переводить всё заново. |
--tm PATH | Файл памяти переводов, по умолчанию kaeris-tm.json рядом с исходником. Повторно использует переводы по тексту, так что переименованный ключ или свежий клон не оплачиваются дважды. --no-tm отключает её. |
--receipt run.json | Записывает отчёт о запуске: модель, тариф, выданные языки, списанные и повторно использованные символы. Только счётчики, без строк. |
Файлы: .json .yml .yaml .strings .xcstrings .po .arb .xml .csv .xliff .xlf .properties .resx .ftl .md .mdx. Неизвестный код языка отклоняется до того, как что-либо отправлено: kaeris languages выводит допустимые. Коды выхода translate: 0 — готово, 1 — ошибка, 3 — часть языков вернулась непереведённой. Полный список: kaeris translate --help.
Руководства по форматам: JSON · YAML · PO · XLIFF · ARB · .strings · .xcstrings · Fluent · .properties · .resx · CSV · Markdown · Android XML
CI recipes (in English): GitHub Actions · GitLab CI · pre-commit · Make and npm scripts
Эту страницу перевёл KAERIS и проверил каждую строку обратным переводом. Носитель языка ещё не проверял. Оригинал на английском