Skip to main content
shipi18n logo|Documentation

Configuration Options

Every input and output of Shipi18n/shipi18n-github-action@v3. The default mode is check, which needs no key.

Check mode (default)

InputDefaultDescription
modecheckcheck validates locale files; translate translates with your own key
locales./localesLocale root: flat, nested, Rails, ARB, .xcstrings, Android, gettext or XLIFF
source-languageenSource language the translations are compared against
severity—Per-rule levels, e.g. missing-key=off,untranslated=off,orphan-key=off to report only runtime breakage (error, warning, info, off)
baseline—Baseline JSON from npx @shipi18n/cli check --write-baseline: existing findings stop failing the job, new ones still do
fail-onerrorFail the job on error, warning or none
min-coverage—Fail any language below this coverage percentage
ignore-keys—Comma-separated * globs of keys to silence (path or ns:path)
glossary—Glossary JSON: do-not-translate and locked terms, checked deterministically
sarif-fileshipi18n.sarifWhere the SARIF report is written; upload it for PR annotations

Translate mode (mode: translate, your own key)

InputDefaultDescription
provideranthropicanthropic or openai
api-key—Your LLM key; falls back to ANTHROPIC_API_KEY / OPENAI_API_KEY. Store it as a secret
model—Override the provider's default model
source-file—Source locale file, e.g. locales/en.json (this or source-dir)
source-dir—Source locale directory; every JSON file in it is translated
target-languages—Required in translate mode: comma-separated codes, e.g. es,fr,de
output-dir—Where translated files go (default: next to the source)
incrementaltrueOnly translate keys that changed since the previous commit
create-prfalseOpen a pull request instead of committing directly
branch-nameshipi18n-translationsBranch for the PR
commit-messagechore: update translations [skip ci]Commit message
github-tokenGITHUB_TOKENToken used to push and open PRs
skip-keys—Exact dot-paths to leave untranslated, e.g. brandName,company.name
skip-paths—Glob patterns to skip, e.g. states.*,config.*.secret

Outputs

OutputModeDescription
errorscheckNumber of errors found
warningscheckNumber of warnings found
sarif-filecheckPath of the SARIF report
files-changedtranslateNumber of translation files updated
files-listtranslateJSON array of translated files
languagestranslateLanguages translated
verification-errorstranslatePlaceholder and key errors found after translating
verification-warningstranslateUnusual length ratios found after translating
skipped-keys-counttranslateKeys skipped via skip-keys / skip-paths